From 8d613736423eb5e33483c42534665c56682a95a1 Mon Sep 17 00:00:00 2001 From: franki Date: Thu, 26 Feb 2026 11:09:05 +0800 Subject: [PATCH] =?utf8?q?=E9=A6=96=E6=AC=A1=E6=8F=90=E4=BA=A4?= MIME-Version: 1.0 Content-Type: text/plain; charset=utf8 Content-Transfer-Encoding: 8bit --- 800x480/MK_batch.c | 906 +++ 800x480/MK_compensation.c | 839 +++ 800x480/MK_custom.c | 694 ++ 800x480/MK_dealer.c | 526 ++ 800x480/MK_factory.c | 272 + 800x480/MK_info.c | 611 ++ 800x480/MK_main.c | 472 ++ 800x480/MK_origin.c | 594 ++ 800x480/MK_setting.c | 569 ++ 800x480/MK_setup.c | 796 +++ 800x480/MK_single.c | 1102 +++ 800x480/MK_system.c | 734 ++ 800x480/MK_template2.c | 108 + 800x480/MK_tester.c | 891 +++ 800x480/MK_tutorial.c | 232 + 800x480/MK_wireless.c | 1569 +++++ 800x480/evdev.c | 273 + 800x480/fbdev.c | 210 + 800x480/lv_conf.h | 514 ++ 800x480/lv_drv_conf.h | 427 ++ 800x480/main.c | 90 + assets/3672639n.png | Bin 0 -> 1237 bytes build.sh | 152 + common/MK_data.c | 1620 +++++ common/MK_e2prom.c | 164 + common/MK_ep201t.c | 332 + common/MK_func.h | 246 + common/MK_image.c | 128 + common/MK_ime.c | 345 + common/MK_macro.h | 296 + common/MK_mye8m.c | 356 + common/MK_printer.c | 84 + common/MK_style.c | 135 + common/MK_sys.c | 86 + common/MK_types.h | 392 ++ common/board.c | 705 ++ common/elib_wrap.c | 130 + common/stb_image.h | 7987 ++++++++++++++++++++++ common/stb_image_write.h | 1724 +++++ cutter-800x480 | Bin 0 -> 449052 bytes cutter_dx2.prj | 58 + fonts/furore_32.c | 2363 +++++++ fonts/ime_num_32.c | 3297 +++++++++ fonts/monts_m_24.c | 365 + fonts/monts_m_30.c | 455 ++ fonts/monts_m_32.c | 441 ++ fonts/monts_r_32.c | 433 ++ fonts/sans_b_36.c | 498 ++ fonts/sans_m_24.c | 12937 ++++++++++++++++++++++++++++++++++++ fonts/sans_m_30.c | 900 +++ fonts/sans_r_18.c | 2567 +++++++ fonts/sans_r_30.c | 11638 ++++++++++++++++++++++++++++++++ 52 files changed, 63263 insertions(+) create mode 100644 800x480/MK_batch.c create mode 100644 800x480/MK_compensation.c create mode 100644 800x480/MK_custom.c create mode 100644 800x480/MK_dealer.c create mode 100644 800x480/MK_factory.c create mode 100644 800x480/MK_info.c create mode 100644 800x480/MK_main.c create mode 100644 800x480/MK_origin.c create mode 100644 800x480/MK_setting.c create mode 100644 800x480/MK_setup.c create mode 100644 800x480/MK_single.c create mode 100644 800x480/MK_system.c create mode 100644 800x480/MK_template2.c create mode 100644 800x480/MK_tester.c create mode 100644 800x480/MK_tutorial.c create mode 100644 800x480/MK_wireless.c create mode 100644 800x480/evdev.c create mode 100644 800x480/fbdev.c create mode 100644 800x480/lv_conf.h create mode 100644 800x480/lv_drv_conf.h create mode 100644 800x480/main.c create mode 100644 assets/3672639n.png create mode 100755 build.sh create mode 100644 common/MK_data.c create mode 100644 common/MK_e2prom.c create mode 100644 common/MK_ep201t.c create mode 100644 common/MK_func.h create mode 100644 common/MK_image.c create mode 100644 common/MK_ime.c create mode 100644 common/MK_macro.h create mode 100644 common/MK_mye8m.c create mode 100644 common/MK_printer.c create mode 100644 common/MK_style.c create mode 100644 common/MK_sys.c create mode 100644 common/MK_types.h create mode 100644 common/board.c create mode 100644 common/elib_wrap.c create mode 100644 common/stb_image.h create mode 100644 common/stb_image_write.h create mode 100755 cutter-800x480 create mode 100644 cutter_dx2.prj create mode 100644 fonts/furore_32.c create mode 100644 fonts/ime_num_32.c create mode 100644 fonts/monts_m_24.c create mode 100644 fonts/monts_m_30.c create mode 100644 fonts/monts_m_32.c create mode 100644 fonts/monts_r_32.c create mode 100644 fonts/sans_b_36.c create mode 100644 fonts/sans_m_24.c create mode 100644 fonts/sans_m_30.c create mode 100644 fonts/sans_r_18.c create mode 100644 fonts/sans_r_30.c diff --git a/800x480/MK_batch.c b/800x480/MK_batch.c new file mode 100644 index 0000000..a3e2ec4 --- /dev/null +++ b/800x480/MK_batch.c @@ -0,0 +1,906 @@ +/* + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are + * met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * * Redistributions in binary form must reproduce the above + * copyright notice, this list of conditions and the following disclaimer + * in the documentation and/or other materials provided with the + * distribution. + * * Neither the name of the nor the names of its + * contributors may be used to endorse or promote products derived from + * this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT + * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR + * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT + * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT + * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, + * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY + * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE + * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + * + */ +#include +#include +#include +#include +#include +#include +#include +#include "lvgl/lvgl.h" +#include "MK_macro.h" +#include "MK_types.h" +#include "MK_func.h" + +static lv_obj_t *page = NULL; +static lv_obj_t *lbl_time = NULL; +static lv_obj_t *lbl_curpos = NULL; +static lv_obj_t *btn_gohome = NULL; +static lv_obj_t *ta_page = NULL; + +static struct params_data *params; +static struct runtime_data *runtime; +static u32 last_time; +static s32 last_position; +static s32 current_page; +static s32 test_enabled; +static s32 data_changed; + +static struct batch_info batchs[BATCH_MAX]; + +static void create_operating_zone_single(lv_obj_t *parent, + struct batch_info *info); + +static void show_operating_page(s32 page_index) +{ + s32 i; + s32 start, end; + char buf[16]; + + /* 更新当前页数 */ + sprintf(buf, "%d", current_page + 1); + lv_label_set_text(ta_page, buf); + + /* 更新当前页内容 */ + start = page_index * BATCH_COLS * BATCH_ROWS; + end = start + BATCH_COLS * BATCH_ROWS - 1; + for (i = 0; i < BATCH_MAX; ++i) { + if (i < start || i > end) { + /* 未创建的控件不用处理 */ + if (!batchs[i].created) { + continue; + } + + if (!lv_obj_has_flag(batchs[i].obj[0], LV_OBJ_FLAG_HIDDEN)) { + lv_obj_add_flag(batchs[i].obj[0], LV_OBJ_FLAG_HIDDEN); + } + if (!lv_obj_has_flag(batchs[i].obj[1], LV_OBJ_FLAG_HIDDEN)) { + lv_obj_add_flag(batchs[i].obj[1], LV_OBJ_FLAG_HIDDEN); + } + if (!lv_obj_has_flag(batchs[i].obj[2], LV_OBJ_FLAG_HIDDEN)) { + lv_obj_add_flag(batchs[i].obj[2], LV_OBJ_FLAG_HIDDEN); + } + } + else { + /* 创建控件 */ + if (!batchs[i].created) { + create_operating_zone_single(page, &batchs[i]); + batchs[i].created = 1; + } + + /* 状态无变化的控件不用处理 */ + if (!batchs[i].dirty) { + continue; + } + batchs[i].dirty = 0; + + sprintf(buf, "%.1f", batchs[i].target / STORE_RATE); + lv_label_set_text(batchs[i].obj[0], buf); + + /* 选择项的按钮颜色 */ + if (batchs[i].selected) { + lv_obj_set_style_bg_color(batchs[i].obj[2], + lv_color_hex(0x00a800), 0); + } + else { + lv_obj_set_style_bg_color(batchs[i].obj[2], + lv_color_hex(0xa8a8a8), 0); + } + + /* 是否已经使用过的标志 */ + if (batchs[i].used) { + lv_obj_clear_flag(batchs[i].obj[1], LV_OBJ_FLAG_HIDDEN); + } + else { + lv_obj_add_flag(batchs[i].obj[1], LV_OBJ_FLAG_HIDDEN); + } + + /* 输入框及按钮可见 */ + lv_obj_clear_flag(batchs[i].obj[0], LV_OBJ_FLAG_HIDDEN); + lv_obj_clear_flag(batchs[i].obj[2], LV_OBJ_FLAG_HIDDEN); + } + } + dprint("start=%d, end=%d\n", start, end); +} + +static void clear_pages(s32 page_index) +{ + s32 i; + s32 start, end; + + if (page_index == -1) { + start = 0; + end = COUNTOF(batchs); + } + else { + start = page_index * BATCH_COLS * BATCH_ROWS; + end = start + BATCH_COLS * BATCH_ROWS; + } + + for (i = start; i < end; ++i) { + batchs[i].target = 0; + batchs[i].used = 0; + runtime->batch_data[i] = 0; + } + data_changed = TRUE; +} + +static s32 recalc_page(s32 index) +{ + s32 old_page = current_page; + + current_page = index / BATCH_PER_PAGE; + return (old_page != current_page) ? 1 : 0; +} + +static void select_item(s32 index) +{ + u32 i; + + for (i = 0; i < COUNTOF(batchs); ++i) { + if (batchs[i].selected) { + batchs[i].dirty = 1; + } + batchs[i].selected = 0; + } + + if (index != -1 && batchs[index].target > 0) { + batchs[index].selected = 1; + batchs[index].dirty = 1; + } +} + +static void mark_item(s32 index) +{ + if (batchs[index].target > 0) { + batchs[index].used = 1; + batchs[index].dirty = 1; + runtime->batch_data[index] |= BIT(31); + data_changed = TRUE; + } +} + +static void start_item(s32 index) +{ + if (batchs[index].target > 0) { + if (!get_running_status()) { + buzz(); + runtime->target = batchs[index].target; + runtime->index = index; + set_target_position(runtime->target); + if (runtime->sw_print) { + /* 同步打印 */ + printer_action_with_no(runtime->target, runtime->index); + } + } + } +} + +static void invalidate_page(s32 page_index) +{ + s32 start, end; + s32 i; + + start = page_index * BATCH_PER_PAGE; + end = start + BATCH_PER_PAGE; + for (i = start; i < end; ++i) { + batchs[i].dirty = 1; + } +} + +static void target_value_update(const char *val, void *user_data) +{ + struct batch_info *info = (struct batch_info *)user_data; + + /* 值设定 */ + s32 v = strtof(val, NULL) * 10; /* 保留一位有效小数 */ + v *= STORE_RATE / 10; + info->target = v; + info->used = 0; + info->dirty = 1; + runtime->batch_data[info->index] = v & 0x7fffffff; + data_changed = TRUE; + dprint("batch index: %d\n", info->index); + show_operating_page(current_page); +} + +static s32 verify_target_range(const char *val, void *user_data) +{ + f32 v = strtof(val, NULL) * STORE_RATE; + + UNUSED(user_data); + if ((v >= runtime->min && v <= runtime->max) || v == 0) { + return 1; + } + + return 0; +} + +__attribute__((unused)) static void fill_test_data(void) +{ + s32 i; + s32 max = runtime->max > 0 + ? ((runtime->max - runtime->min) / STORE_RATE * 10) + : 1; + s32 min = runtime->min / STORE_RATE; + + for (i = 0; i < BATCH_MAX; ++i) { + if (batchs[i].target < runtime->min) { + f32 v = (rand() % max) / 10.0 + min; + batchs[i].target = v * STORE_RATE; + batchs[i].dirty = 1; + } + } +} + +static void ev_back(lv_event_t *e) +{ + UNUSED(e); + + buzz(); + set_current_window(WM_SINGLE); +} + +static void ev_page(lv_event_t *e) +{ + lv_obj_t *obj = lv_event_get_target(e); + s32 btn_id; + + buzz(); + btn_id = (s32)lv_obj_get_user_data(obj); + switch (btn_id) { + case BTN_PREV: + if (current_page > 0) { + current_page--; + invalidate_page(current_page); + } + break; + + case BTN_NEXT: + if (current_page < BATCH_PAGE - 1) { + current_page++; + invalidate_page(current_page); + } + break; + + default: + break; + } + + select_item(-1); + show_operating_page(current_page); +} + +static void ev_clear(lv_event_t *e) +{ + lv_obj_t *obj = lv_event_get_target(e); + s32 btn_id; + + buzz(); + btn_id = (s32)lv_obj_get_user_data(obj); + switch (btn_id) { + case BTN_CLR_CUR: + clear_pages(current_page); + break; + + case BTN_CLR_ALL: + clear_pages(-1); + break; + + default: + break; + } + + invalidate_page(current_page); + select_item(-1); + show_operating_page(current_page); +} + +static void ev_select(lv_event_t *e) +{ + lv_obj_t *obj = lv_event_get_target(e); + s32 btn_id; + + btn_id = (s32)lv_obj_get_user_data(obj); + dprint("select: %d\n", btn_id); + if (get_running_status()) { + dprint("target is running.\n"); + return; + } + + select_item(btn_id); + start_item(btn_id); + mark_item(btn_id); + show_operating_page(current_page); +} + +static void ev_test(lv_event_t *e) +{ + lv_obj_t *obj = lv_event_get_target(e); + + if (lv_obj_has_state(obj, LV_STATE_CHECKED)) { + test_enabled = 1; +// fill_test_data(); + } + else { + test_enabled = 0; + } +} + +static void ev_print(lv_event_t *e) +{ + UNUSED(e); + + buzz(); + if (runtime->target > 0) { + /* 手动打印 */ + printer_action_with_no(runtime->target, runtime->index); + } +} + +static void ev_buzz(lv_event_t *e) +{ + lv_obj_t *obj = lv_event_get_target(e); + + buzz(); + if (lv_obj_has_state(obj, LV_STATE_CHECKED)) { + runtime->sw_print = TRUE; + } + else { + runtime->sw_print = FALSE; + } +} + +static void ev_next(lv_event_t *e) +{ + u32 i; + s32 cur_index = -1; + + UNUSED(e); + + if (get_running_status()) { + dprint("target is running.\n"); + return; + } + + /* 查找当前使用项 */ + for (i = 0; i < COUNTOF(batchs); ++i) { + if (batchs[i].selected) { + cur_index = i; + break; + } + } + dprint("auto index: %d\n", cur_index); + + /* 选择下一项 */ + cur_index += 1; + if (cur_index < BATCH_MAX) { + if (batchs[cur_index].target > 0) { + if (recalc_page(cur_index)) { + invalidate_page(current_page); + } + select_item(cur_index); + start_item(cur_index); + mark_item(cur_index); + show_operating_page(current_page); + } + } +} + +static void test_start(void) +{ + u32 i; + s32 cur_index = -1; + + if (get_running_status()) { + dprint("target is running.\n"); + return; + } + + /* 查找当前使用项 */ + for (i = 0; i < COUNTOF(batchs); ++i) { + if (batchs[i].selected) { + cur_index = i; + system_delay(500); + break; + } + } + dprint("auto index: %d\n", cur_index); + + /* 循环从0开始 */ + if (batchs[(cur_index + 1) % BATCH_MAX].target == 0 + || cur_index == BATCH_MAX - 1) { + cur_index = -1; + } + + /* 选择下一项,如果有效 */ + cur_index++; + if (cur_index < BATCH_MAX) { + if (batchs[cur_index].target > 0) { + if (recalc_page(cur_index)) { + invalidate_page(current_page); + } + select_item(cur_index); + start_item(cur_index); + mark_item(cur_index); + show_operating_page(current_page); + } + else { + /* 碰到目标值为0值从头开始 */ + select_item(BATCH_MAX - 1); + } + } +} + +static void ev_input(lv_event_t *e) +{ + static struct ime_cb ime_cb; + lv_obj_t *obj = lv_event_get_target(e); + s32 ta_id; + + ta_id = (s32)lv_obj_get_user_data(obj); + memset(&ime_cb, 0, sizeof(struct ime_cb)); + ime_cb.user_data = &batchs[ta_id]; + ime_cb.verify = verify_target_range; + ime_cb.update = target_value_update; + + /* 调用输入框 */ + buzz(); + create_ime(runtime->min / STORE_RATE, runtime->max / STORE_RATE, &ime_cb); +} + +static void ev_terminate(lv_event_t *e) +{ + UNUSED(e); + + buzz(); + motor_terminate(); + lv_obj_set_style_bg_color(btn_gohome, lv_color_hex(0xa8a8a8), 0); +} + +static void ev_gohome(lv_event_t *e) +{ + lv_obj_t *obj = lv_event_get_target(e); + + buzz(); + motor_reset(); + lv_obj_set_style_bg_color(obj, lv_color_hex(0x00a5ff), 0); +} + +static void create_operating_zone_single(lv_obj_t *parent, + struct batch_info *info) +{ + lv_obj_t *ta; + lv_obj_t *btn; + lv_obj_t *label; + lv_obj_t *obj; + char buf[16]; + lv_style_t *style_main = get_project_style(STYLE_PAGE); + lv_style_t *style_input = get_project_style(STYLE_INPUT2); + lv_style_t *style_button = get_project_style(STYLE_BUTTON); + + /* 输入框 */ + ta = lv_label_create(parent); + lv_obj_set_size(ta, 140, 45); + lv_obj_set_user_data(ta, (void *)info->index); + lv_obj_add_flag(ta, LV_OBJ_FLAG_CLICKABLE); + lv_obj_add_style(ta, style_input, 0); + lv_obj_set_style_text_font(ta, &sans_m_30, 0); + lv_obj_set_style_pad_top(ta, 13, 0); + lv_obj_align(ta, LV_ALIGN_TOP_LEFT, info->coord.x0, info->coord.y0); + lv_obj_add_flag(ta, LV_OBJ_FLAG_HIDDEN); + lv_obj_add_event_cb(ta, ev_input, LV_EVENT_CLICKED, NULL); + info->obj[0] = ta; + + /* 已经使用的标识条 */ + obj = lv_bar_create(parent); + lv_obj_set_size(obj, 138, 5); + lv_obj_add_style(obj, style_main, LV_PART_MAIN); + lv_obj_set_style_border_width(obj, 0, 0); + lv_obj_set_style_bg_color(obj, lv_color_hex(0xff0000), 0); + lv_obj_align_to(obj, ta, LV_ALIGN_OUT_BOTTOM_MID, 0, -2); + lv_obj_add_flag(obj, LV_OBJ_FLAG_HIDDEN); + info->obj[1] = obj; + + /* 选择按钮 */ + btn = lv_btn_create(parent); + lv_obj_set_user_data(btn, (void *)info->index); + lv_obj_set_size(btn, 140, 50); + lv_obj_add_style(btn, style_button, 0); + lv_obj_set_style_bg_color(btn, lv_color_hex(0xa8a8a8), 0); + lv_obj_align_to(btn, ta, LV_ALIGN_OUT_BOTTOM_MID, 0, 5); + label = lv_label_create(btn); + sprintf(buf, "%d", info->index + 1); + lv_label_set_text(label, buf); + lv_obj_set_style_text_font(label, &sans_m_24, 0); + lv_obj_set_style_text_color(label, lv_color_hex(0x000000), 0); + lv_obj_add_flag(btn, LV_OBJ_FLAG_HIDDEN); + lv_obj_align(label, LV_ALIGN_CENTER, 0, 0); + lv_obj_add_event_cb(btn, ev_select, LV_EVENT_CLICKED, NULL); + info->obj[2] = btn; +} + +static void create_right_bar(lv_obj_t *parent) +{ + lv_obj_t *btn; + lv_obj_t *label; + lv_obj_t *frame; + const char *text; + char buf[32]; + lv_style_t *style_button = get_project_style(STYLE_BUTTON); + lv_style_t *style_meter = get_project_style(STYLE_METER); + + /* 右边栏'打印开关'按钮 */ + btn = lv_btn_create(parent); + lv_obj_set_size(btn, 150, 48); + lv_obj_add_style(btn, style_button, 0); + lv_obj_set_style_bg_color(btn, lv_color_hex(0xa8a8a8), 0); + lv_obj_set_style_text_color(btn, lv_color_hex(0), LV_STATE_CHECKED); + lv_obj_set_style_bg_color(btn, lv_color_hex(0x00ff00), LV_STATE_CHECKED); + lv_obj_add_flag(btn, LV_OBJ_FLAG_CHECKABLE); + if (runtime->sw_print) { + lv_obj_add_state(btn, LV_STATE_CHECKED); + } + else { + lv_obj_clear_state(btn, LV_STATE_CHECKED); + } + lv_obj_align(btn, LV_ALIGN_TOP_RIGHT, -10, 70); + label = lv_label_create(btn); + text = get_text_from_pool(TID_print_sw); + lv_label_set_text(label, text); + lv_obj_align(label, LV_ALIGN_CENTER, 0, 0); + lv_obj_add_event_cb(btn, ev_buzz, LV_EVENT_CLICKED, NULL); + + /* 右边栏'清除当页尺寸'按钮 */ + btn = lv_btn_create(parent); + lv_obj_set_user_data(btn, (void *)BTN_CLR_CUR); + lv_obj_set_size(btn, 150, 48); + lv_obj_add_style(btn, style_button, 0); + lv_obj_set_style_bg_color(btn, lv_color_hex(0xa8a8a8), 0); + lv_obj_align(btn, LV_ALIGN_TOP_RIGHT, -10, 128); + label = lv_label_create(btn); + text = get_text_from_pool(TID_clear_cur); + lv_label_set_text(label, text); + lv_obj_align(label, LV_ALIGN_CENTER, 0, 0); + lv_obj_add_event_cb(btn, ev_clear, LV_EVENT_CLICKED, NULL); + + /* 右边栏'清除全部尺寸'按钮 */ + btn = lv_btn_create(parent); + lv_obj_set_user_data(btn, (void *)BTN_CLR_ALL); + lv_obj_set_size(btn, 150, 48); + lv_obj_add_style(btn, style_button, 0); + lv_obj_set_style_bg_color(btn, lv_color_hex(0xa8a8a8), 0); + lv_obj_align(btn, LV_ALIGN_TOP_RIGHT, -10, 186); + label = lv_label_create(btn); + text = get_text_from_pool(TID_clear_all); + lv_label_set_text(label, text); + lv_obj_align(label, LV_ALIGN_CENTER, 0, 0); + lv_obj_add_event_cb(btn, ev_clear, LV_EVENT_CLICKED, NULL); + + /* 右边栏'回原点'按钮 */ + btn = lv_btn_create(parent); + lv_obj_set_size(btn, 150, 48); + lv_obj_add_style(btn, style_button, 0); + if (get_gohome_status()) { + lv_obj_set_style_bg_color(btn, lv_color_hex(0x00a5ff), 0); + } + else { + lv_obj_set_style_bg_color(btn, lv_color_hex(0xa8a8a8), 0); + } + lv_obj_align(btn, LV_ALIGN_TOP_RIGHT, -10, 244); + label = lv_label_create(btn); + text = get_text_from_pool(TID_gohome); + lv_label_set_text(label, text); + lv_obj_align(label, LV_ALIGN_CENTER, 0, 0); + lv_obj_add_event_cb(btn, ev_gohome, LV_EVENT_CLICKED, NULL); + btn_gohome = btn; + + if (runtime->test_mode) { + /* 右边栏'自动测试'按钮 */ + btn = lv_btn_create(parent); + lv_obj_set_size(btn, 150, 48); + lv_obj_add_style(btn, style_button, 0); + lv_obj_set_style_bg_color(btn, lv_color_hex(0xa8a8a8), 0); + lv_obj_set_style_text_color(btn, lv_color_hex(0), LV_STATE_CHECKED); + lv_obj_set_style_bg_color(btn, lv_color_hex(0x00ff00), LV_STATE_CHECKED); + lv_obj_add_flag(btn, LV_OBJ_FLAG_CHECKABLE); + lv_obj_align(btn, LV_ALIGN_TOP_RIGHT, -10, 302); + label = lv_label_create(btn); + text = get_text_from_pool(TID_auto_test); + lv_label_set_text(label, text); + lv_obj_align(label, LV_ALIGN_CENTER, 0, 0); + lv_obj_add_event_cb(btn, ev_test, LV_EVENT_CLICKED, NULL); + } + + /* 右边栏'挡板位置'背景框 */ + frame = lv_obj_create(parent); + lv_obj_set_size(frame, 150, 48); + lv_obj_add_style(frame, style_meter, 0); + lv_obj_set_style_bg_color(frame, lv_color_hex(0x586273), 0); + lv_obj_align_to(frame, btn, LV_ALIGN_OUT_BOTTOM_MID, 0, 10); + + /* 右边栏'挡板位置'显示框 */ + label = lv_label_create(frame); + lv_obj_set_style_text_font(label, &sans_m_30, 0); + lv_obj_set_style_text_color(label, lv_color_hex(0xd0d0d0), 0); + sprintf(buf, "%.1f", 0.0f); + lv_label_set_text(label, buf); + lv_obj_align(label, LV_ALIGN_CENTER, 0, 0); + lbl_curpos = label; +} + +static void page_init(void) +{ + lv_style_t *style_main = get_project_style(STYLE_PAGE); + + /* 创建页面容器 */ + page = lv_obj_create(lv_scr_act()); + lv_obj_set_size(page, LV_PCT(100), LV_PCT(100)); + lv_obj_add_style(page, style_main, LV_PART_MAIN); + lv_obj_set_style_bg_color(page, lv_color_hex(0x444b5a), 0); +} + +static void page_deinit(void) +{ + if (page != NULL) { + lv_obj_del(page); + page = NULL; + } +} + +static void page_head_init(lv_obj_t *parent) +{ + lv_obj_t *frame; + lv_obj_t *label; + lv_obj_t *btn; + lv_obj_t *btn2; + lv_obj_t *ta; + const char *text; + lv_style_t *style_main = get_project_style(STYLE_PAGE); + lv_style_t *style_input = get_project_style(STYLE_INPUT2); + lv_style_t *style_button = get_project_style(STYLE_BUTTON); + + /* 标题栏背景 */ + frame = lv_obj_create(parent); + lv_obj_set_size(frame, LV_PCT(100), 60); + lv_obj_set_style_bg_color(frame, lv_color_hex(0x586273), 0); + lv_obj_add_style(frame, style_main, LV_PART_MAIN); + lv_obj_set_style_shadow_width(frame, 16, 0); + + lv_obj_t *logo = lv_img_create(frame); + lv_img_set_src(logo, "P:assets/lvgl_logo.png"); + lv_obj_align(logo, LV_ALIGN_LEFT_MID, 15, 0); + + /* 标题栏文字 */ + label = lv_label_create(frame); + text = get_text_from_pool(TID_batch); + lv_label_set_text(label, text); + lv_obj_set_style_text_font(label, &sans_r_30, 0); + lv_obj_set_style_text_color(label, lv_color_hex(0xd0d0d0), 0); + lv_obj_align(label, LV_ALIGN_LEFT_MID, 70, 0); + + /* 标题栏日期时间 */ + lbl_time = lv_label_create(frame); + lv_label_set_text(lbl_time, ""); + lv_obj_set_style_text_font(lbl_time, &sans_r_18, 0); + lv_obj_set_style_text_color(lbl_time, lv_color_hex(0xd0d0d0), 0); + lv_obj_align(lbl_time, LV_ALIGN_CENTER, 0, 0); + + /* 标题栏返回按钮 */ + btn = lv_btn_create(frame); + lv_obj_set_size(btn, 150, 48); + lv_obj_add_style(btn, style_button, 0); + lv_obj_set_style_bg_color(btn, lv_color_hex(0xa8a8a8), 0); + lv_obj_align(btn, LV_ALIGN_RIGHT_MID, -10, 0); + label = lv_label_create(btn); + text = get_text_from_pool(TID_back); + lv_label_set_text(label, text); + lv_obj_set_style_text_font(label, &sans_m_24, 0); + lv_obj_set_style_text_color(label, lv_color_hex(0x000000), 0); + lv_obj_align(label, LV_ALIGN_CENTER, 0, 0); + lv_obj_add_event_cb(btn, ev_back, LV_EVENT_CLICKED, NULL); + + /* 状态栏背景 */ + frame = lv_obj_create(parent); + lv_obj_set_size(frame, LV_PCT(100), 70); + lv_obj_add_style(frame, style_main, LV_PART_MAIN); + lv_obj_set_style_bg_color(frame, lv_color_hex(0x586273), 0); + lv_obj_align(frame, LV_ALIGN_BOTTOM_MID, 0, 0); + lv_obj_set_style_border_width(frame, 2, 0); + lv_obj_set_style_border_color(frame, lv_color_hex(0xa8a8a8), 0); + lv_obj_set_style_border_side(frame, LV_BORDER_SIDE_TOP, 0); + + /* 状态栏'上一页‘按钮 */ + btn = lv_btn_create(frame); + lv_obj_set_user_data(btn, (void *)BTN_PREV); + lv_obj_set_size(btn, 140, 48); + lv_obj_add_style(btn, style_button, 0); + lv_obj_set_style_bg_color(btn, lv_color_hex(0xa8a8a8), 0); + lv_obj_align(btn, LV_ALIGN_LEFT_MID, 10, 0); + label = lv_label_create(btn); + text = get_text_from_pool(TID_prev); + lv_label_set_text(label, text); + lv_obj_set_style_text_font(label, &sans_r_30, 0); + lv_obj_set_style_text_color(label, lv_color_hex(0x000000), 0); + lv_obj_align(label, LV_ALIGN_CENTER, 0, 0); + lv_obj_add_event_cb(btn, ev_page, LV_EVENT_CLICKED, NULL); + + /* 第几页显示 */ + ta = lv_label_create(frame); + lv_obj_set_size(ta, 40, 42); + lv_obj_add_style(ta, style_input, 0); + lv_obj_set_style_bg_color(ta, lv_color_hex(0xf0f0f0), 0); + lv_obj_set_style_pad_top(ta, 5, 0); + lv_obj_set_style_text_font(ta, &sans_r_30, 0); + lv_obj_align_to(ta, btn, LV_ALIGN_OUT_RIGHT_MID, 5, 0); + ta_page = ta; + + /* 状态栏'下一页‘按钮 */ + btn = lv_btn_create(frame); + lv_obj_set_user_data(btn, (void *)BTN_NEXT); + lv_obj_set_size(btn, 140, 48); + lv_obj_add_style(btn, style_button, 0); + lv_obj_set_style_bg_color(btn, lv_color_hex(0xa8a8a8), 0); + lv_obj_align_to(btn, ta_page, LV_ALIGN_OUT_RIGHT_MID, 5, 0); + label = lv_label_create(btn); + text = get_text_from_pool(TID_next); + lv_label_set_text(label, text); + lv_obj_set_style_text_font(label, &sans_r_30, 0); + lv_obj_align(label, LV_ALIGN_CENTER, 0, 0); + lv_obj_add_event_cb(btn, ev_page, LV_EVENT_CLICKED, NULL); + + /* 状态栏'打印‘按钮 */ + btn2 = lv_btn_create(frame); + lv_obj_set_size(btn2, 140, 48); + lv_obj_add_style(btn2, style_button, 0); + lv_obj_set_style_bg_color(btn2, lv_color_hex(0xa8a8a8), 0); + lv_obj_align_to(btn2, btn, LV_ALIGN_OUT_RIGHT_MID, 10, 0); + label = lv_label_create(btn2); + text = get_text_from_pool(TID_print); + lv_label_set_text(label, text); + lv_obj_set_style_text_font(label, &sans_r_30, 0); + lv_obj_align(label, LV_ALIGN_CENTER, 0, 0); + lv_obj_add_event_cb(btn2, ev_print, LV_EVENT_CLICKED, NULL); + + /* 状态栏'急停‘按钮 */ + btn = lv_btn_create(frame); + lv_obj_set_size(btn, 180, 54); + lv_obj_add_style(btn, style_button, 0); + lv_obj_set_style_bg_color(btn, lv_color_hex(0xff0000), 0); + lv_obj_align(btn, LV_ALIGN_RIGHT_MID, -10, 0); + label = lv_label_create(btn); + text = get_text_from_pool(TID_stop); + lv_label_set_text(label, text); + lv_obj_set_style_text_font(label, &sans_r_30, 0); + lv_obj_set_style_text_color(label, lv_color_hex(0xffffff), 0); + lv_obj_align(label, LV_ALIGN_CENTER, 0, 0); + lv_obj_add_event_cb(btn, ev_terminate, LV_EVENT_CLICKED, NULL); +} + +static void page_body_init(lv_obj_t *parent) +{ + /* 创建右边栏功能区 */ + create_right_bar(parent); +} + +static void batch_info_init(void) +{ + s32 i; + s32 left, top; + + memset(batchs, 0, sizeof(batchs)); + for (i = 0; i < BATCH_MAX; ++i) { + left = (i % BATCH_COLS) * (150 + 5) + 10; + top = (i % BATCH_PER_PAGE) / BATCH_COLS * (100 + 10) + 75; + batchs[i].index = i; + batchs[i].coord.x0 = left; + batchs[i].coord.y0 = top; + batchs[i].dirty = 1; + batchs[i].target = runtime->batch_data[i] & 0x7fffffff; + batchs[i].used = BIT_VAL(runtime->batch_data[i], 31); + dprint("batchs[%d].x0=%d, y0=%d\n", i, left, top); + } +} + +s32 batch_open(void *args) +{ + UNUSED(args); + + dprint("[%s]++\n", __func__); + + /* 获取参数数据接口 */ + params = get_params_data(); + + /* 获取运行时数据接口 */ + runtime = get_runtime_data(); + + /* 本地参数初始 */ + current_page = 0; + last_position = -1; + test_enabled = 0; + data_changed = FALSE; + batch_info_init(); + + /* 创建页面背景对象 */ + page_init(); + + /* 创建页面head对象 */ + page_head_init(page); + + /* 创建页面body对象 */ + page_body_init(page); + + /* success */ + check_keypress(KEY_X1); /* 上电后会有一次按键按下事件?*/ + show_operating_page(current_page); + last_time = get_current_time(); + + return 0; +} + +void batch_close(void) +{ + dprint("[%s]++\n", __func__); + page_deinit(); +} + +void batch_update(void) +{ + s32 pos; + char buf[32]; + + /* 更新挡板位置 */ + pos = get_current_position(); + if (pos != last_position) { + sprintf(buf, "%.1f", pos / STORE_RATE); + lv_label_set_text(lbl_curpos, buf); + last_position = pos; + } + + if (check_keypress(KEY_X1)) { + dprint("KEY_X1 is pressed.\n"); + ev_next(NULL); + } + + /* 保存数据 */ + if (data_changed) { + batch_data_save(); + data_changed = FALSE; + } + + if (time_after(get_current_time(), last_time)) { +#if defined(ZZF_TEST_MODE) + if (test_enabled) { + test_start(); + } +#endif + last_time = get_current_time() + 1000; + } +} + diff --git a/800x480/MK_compensation.c b/800x480/MK_compensation.c new file mode 100644 index 0000000..4969674 --- /dev/null +++ b/800x480/MK_compensation.c @@ -0,0 +1,839 @@ +/* + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are + * met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * * Redistributions in binary form must reproduce the above + * copyright notice, this list of conditions and the following disclaimer + * in the documentation and/or other materials provided with the + * distribution. + * * Neither the name of the nor the names of its + * contributors may be used to endorse or promote products derived from + * this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT + * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR + * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT + * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT + * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, + * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY + * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE + * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + * + */ +#include +#include +#include +#include +#include +#include +#include "lvgl/lvgl.h" +#include "MK_macro.h" +#include "MK_types.h" +#include "MK_func.h" + +static lv_obj_t *page = NULL; +static lv_obj_t *tb_comp = NULL; +static lv_obj_t *btn_gohome = NULL; +static lv_obj_t *dialog = NULL; +static lv_obj_t *ta_pos = NULL; +static lv_obj_t *ta_pulse = NULL; + +static struct params_data *params; +static struct runtime_data *runtime; +static struct comp_data *comp; +static u32 last_time; +static s32 last_position; +static s32 limit_min; +static s32 comp_changed; + +static void input_update(const char *val, void *user_data) +{ + lv_obj_t *ta = (lv_obj_t *)user_data; + char buf[32]; + + UNUSED(user_data); + + s32 v = strtof(val, NULL) * STORE_RATE; + sprintf(buf, "%.1f", v / STORE_RATE); + lv_textarea_set_text(ta, buf); + + comp_changed = 1; +} + +static s32 input_verify(const char *val, void *user_data) +{ + s32 v = strtof(val, NULL) * STORE_RATE; + + UNUSED(user_data); + if (v <= limit_min || v > 10000 * STORE_RATE) { + return 0; + } + + return 1; +} + +static void input_exit(void) +{ + lv_obj_add_flag(lv_layer_top(), LV_OBJ_FLAG_CLICKABLE); +} + +static void comp_data_refresh(void) +{ + s32 i; + s32 row; + char buf[64]; + + /* 补偿点数据 */ + lv_obj_invalidate(tb_comp); + lv_table_set_row_cnt(tb_comp, comp->count + 1); + for (i = 0; i < comp->count; ++i) { + row = i + 1; + + /* 段号 */ + sprintf(buf, "%d", row); + lv_table_set_cell_value(tb_comp, row, 0, buf); + + /* 位置 */ + sprintf(buf, "%.1f", (comp->origin[i].pos) / STORE_RATE); + lv_table_set_cell_value(tb_comp, row, 1, buf); + + /* 长度 */ + sprintf(buf, "%.1f", comp->trans[i].num / STORE_RATE); + lv_table_set_cell_value(tb_comp, row, 2, buf); + + /* 脉冲数 */ + sprintf(buf, "%d", comp->origin[i].pulse); + lv_table_set_cell_value(tb_comp, row, 3, buf); + } +} + +static void pulse_invalid(lv_obj_t *obj, s32 active) +{ + if (active) { + lv_obj_set_style_bg_color(obj, lv_color_hex(0xf00000), 0); + } + else { + lv_obj_set_style_bg_color(obj, lv_color_hex(0x444b5a), 0); + } +} + +static void ev_move(lv_event_t *e) +{ + lv_obj_t *obj = lv_event_get_target(e); + s32 btn_id = (s32)lv_obj_get_user_data(obj); + + buzz(); + if (btn_id == BTN_INC) { + set_wriggle_mode(WRI_FORWARD); + } + else { + set_wriggle_mode(WRI_REVERSE); + } + pulse_invalid(ta_pulse, FALSE); +} + +static void ev_move_cancel(lv_event_t *e) +{ + UNUSED(e); + + set_wriggle_mode(WRI_NONE); +} + +static void ev_adjust(lv_event_t *e) +{ + lv_obj_t *obj = lv_event_get_target(e); + s32 btn_id = (s32)lv_obj_get_user_data(obj); + + buzz(); + if (btn_id == BTN_INC) { + s32 pulse = get_current_pulse_count() + 20; + set_target_pulse_count(pulse); + } + else { + s32 pulse = get_current_pulse_count() - 20; + /*if (pulse < 0) { + pulse = 0; + }*/ + set_target_pulse_count(pulse); + } + +#if 0 +// runtime->target = get_current_position() + 100; // +0.1mm +// dprint("micro adjust: %d\n", runtime->target); +// if (runtime->target < runtime->min) { +// runtime->target = runtime->min; +// } +// set_target_position(runtime->target); + + s32 pulse = get_current_pulse_count() + 100; + set_target_pulse_count(pulse); + +#endif + pulse_invalid(ta_pulse, FALSE); +} + +static void ev_back(lv_event_t *e) +{ + UNUSED(e); + + buzz(); + set_current_window(WM_SETUP); +} + +static void ev_factory(lv_event_t *e) +{ + UNUSED(e); + + buzz(); + set_current_window(WM_FACTORY); +} + +static void ev_save(lv_event_t *e) +{ + lv_obj_t *obj = lv_event_get_target(e); + s32 index = (s32)lv_obj_get_user_data(obj); + + buzz(); + + /* 获取新增补偿点数据 */ + const char *p = lv_textarea_get_text(ta_pos); + comp->origin[index].pos = strtof(p, NULL) * STORE_RATE; + comp->origin[index].pulse = get_current_pulse_count(); + + /* 新增补偿点数据必须大于上一个补偿点 */ + if (comp->count > 0) { + if (comp->origin[index].pulse <= comp->origin[index - 1].pulse) { + pulse_invalid(ta_pulse, TRUE); + return; + } + } + + /* 保存数据 */ + comp->count++; + if (comp_changed) { + comp_data_recalc(); + comp_data_save(); + comp_changed = 0; + } + + /* 等按键释放,防止传导到下一层窗口,引起误触发 */ + lv_indev_wait_release(lv_indev_get_act()); + + /* 关闭模式窗口 */ + lv_obj_del(dialog); + dialog = NULL; + ta_pulse = NULL; + + /* 取消屏幕独占模式 */ + lv_obj_clear_flag(lv_layer_top(), LV_OBJ_FLAG_CLICKABLE); + + /* 刷新页面 */ + comp_data_refresh(); +} + +static void ev_del(lv_event_t *e) +{ + UNUSED(e); + + buzz(); + + /* 删除最后一条数据 */ + if (comp->count > 0) { + comp->count--; + if (comp->count <= 0) { + comp->enabled = 0; + } + comp_data_recalc(); + comp_data_save(); + } + + /* 刷新页面 */ + comp_data_refresh(); +} + +static void ev_clear(lv_event_t *e) +{ + UNUSED(e); + + buzz(); + + /* 删除全部数据 */ + memset(comp, 0, sizeof(struct comp_data)); + comp_data_recalc(); + comp_data_save(); + + /* 刷新页面 */ + comp_data_refresh(); +} + +static void ev_exit(lv_event_t *e) +{ + UNUSED(e); + buzz(); + + /* 等按键释放,防止传导到下一层窗口,引起误触发 */ + lv_indev_wait_release(lv_indev_get_act()); + + /* 关闭模式窗口 */ + lv_obj_del(dialog); + dialog = NULL; + ta_pulse = NULL; + + /* 取消屏幕独占模式 */ + lv_obj_clear_flag(lv_layer_top(), LV_OBJ_FLAG_CLICKABLE); +} + +static void ev_input(lv_event_t *e) +{ + static struct ime_cb ime_cb; + lv_obj_t *obj = lv_event_get_target(e); + + memset(&ime_cb, 0, sizeof(struct ime_cb)); + ime_cb.user_data = obj; + ime_cb.verify = input_verify; + ime_cb.update = input_update; + ime_cb.exit = input_exit; + + /* 调用输入框 */ + buzz(); + create_ime(limit_min / STORE_RATE, TEST_MAX, &ime_cb); +} + +static void ev_gohome(lv_event_t *e) +{ + lv_obj_t *obj = lv_event_get_target(e); + lv_obj_t *ta = (lv_obj_t *)lv_event_get_user_data(e); + + buzz(); + motor_reset(); + lv_obj_set_style_bg_color(obj, lv_color_hex(0x00a5ff), 0); + if (ta != NULL) { + pulse_invalid(ta, FALSE); + } +} + +static void create_edit_dialog(s32 index) +{ + lv_obj_t *btn; + lv_obj_t *label; + lv_obj_t *ta; + lv_obj_t *temp; + const char *text; + char buf[64]; + lv_style_t *style_main = get_project_style(STYLE_METER); + lv_style_t *style_input = get_project_style(STYLE_INPUT); + lv_style_t *style_button = get_project_style(STYLE_BUTTON); + lv_style_t *style_label = get_project_style(STYLE_LABEL); + + /* 模式dialog容器 */ + lv_obj_add_flag(lv_layer_top(), LV_OBJ_FLAG_CLICKABLE); + dialog = lv_obj_create(lv_layer_top()); + lv_obj_set_size(dialog, 600, 330); + lv_obj_align(dialog, LV_ALIGN_CENTER, 0, -5); + lv_obj_add_style(dialog, style_main, LV_PART_MAIN); + lv_obj_set_style_border_width(dialog, 2, 0); + lv_obj_set_style_border_color(dialog, lv_color_hex(0), 0); + + /* 标题文字 */ + label = lv_label_create(dialog); + lv_obj_add_style(label, style_label, 0); + lv_obj_set_size(label, LV_PCT(100), 40); + text = get_text_from_pool(TID_no_var); + sprintf(buf, text, index + 1); + lv_label_set_text(label, buf); + lv_obj_set_style_bg_opa(label, LV_OPA_COVER, 0); + lv_obj_set_style_bg_color(label, lv_color_hex(0x586273), 0); + lv_obj_set_style_pad_top(label, 6, 0); + lv_obj_set_style_text_align(label, LV_TEXT_ALIGN_CENTER, 0); + lv_obj_align(label, LV_ALIGN_TOP_MID, 0, 0); + + /* '位置'值 */ + ta = lv_textarea_create(dialog); + lv_textarea_set_one_line(ta, true); + lv_textarea_set_align(ta, LV_TEXT_ALIGN_CENTER); + lv_obj_add_style(ta, style_input, 0); + lv_obj_set_style_pad_top(ta, 10, 0); + lv_obj_set_style_text_color(ta, lv_color_hex(0), 0); + lv_obj_set_style_border_width(ta, 1, 0); + lv_obj_set_style_border_color(ta, lv_color_hex(0), 0); + lv_textarea_set_text(ta, "0"); + lv_obj_set_style_text_font(ta, &sans_m_24, 0); + lv_obj_set_size(ta, 250, 48); + lv_textarea_set_accepted_chars(ta, "0123456789.-"); + lv_obj_align(ta, LV_ALIGN_BOTTOM_MID, 0, -88); + lv_obj_add_event_cb(ta, ev_input, LV_EVENT_CLICKED, NULL); + ta_pos = ta; + + /* '位置'标题 */ + label = lv_label_create(dialog); + lv_obj_add_style(label, style_label, 0); + text = get_text_from_pool(TID_comp_pos); + sprintf(buf, "%s:", text); + lv_label_set_text(label, buf); + lv_obj_set_style_text_color(label, lv_color_hex(0), 0); + lv_obj_align_to(label, ta_pos, LV_ALIGN_OUT_LEFT_MID, -20, 0); + + /* '单位' */ + label = lv_label_create(dialog); + lv_obj_add_style(label, style_label, 0); + lv_label_set_text(label, "mm"); + lv_obj_set_style_text_color(label, lv_color_hex(0), 0); + lv_obj_align_to(label, ta_pos, LV_ALIGN_OUT_RIGHT_MID, 10, 0); + + /* '脉冲数'值 */ + ta = lv_textarea_create(dialog); + lv_obj_set_user_data(ta, (void *)TA_MAX); + lv_textarea_set_one_line(ta, true); + lv_textarea_set_align(ta, LV_TEXT_ALIGN_CENTER); + lv_obj_add_style(ta, style_input, 0); + lv_obj_set_style_pad_top(ta, 10, 0); + lv_obj_set_style_text_color(ta, lv_color_hex(0xffffff), 0); + lv_obj_set_style_bg_color(ta, lv_color_hex(0x444b5a), 0); + sprintf(buf, "%d", get_current_pulse_count()); + lv_textarea_set_text(ta, buf); + lv_obj_set_style_text_font(ta, &sans_m_24, 0); + lv_obj_set_size(ta, 250, 48); + lv_textarea_set_accepted_chars(ta, "0123456789.-"); + lv_obj_set_style_opa(ta, LV_OPA_TRANSP, LV_PART_CURSOR); + lv_obj_align(ta, LV_ALIGN_BOTTOM_MID, 0, -30); + ta_pulse = ta; + + /* '脉冲数'标题 */ + label = lv_label_create(dialog); + lv_obj_add_style(label, style_label, 0); + text = get_text_from_pool(TID_comp_pulse); + sprintf(buf, "%s:", text); + lv_label_set_text(label, buf); + lv_obj_set_style_text_color(label, lv_color_hex(0), 0); + lv_obj_align_to(label, ta_pulse, LV_ALIGN_OUT_LEFT_MID, -20, 0); + + /* 向终点移动 */ + btn = lv_btn_create(dialog); + lv_obj_set_user_data(btn, (void *)BTN_INC); + lv_obj_set_size(btn, 170, 48); + lv_obj_add_style(btn, style_button, 0); + lv_obj_set_style_bg_color(btn, lv_color_hex(0xa8a8a8), 0); + lv_obj_align(btn, LV_ALIGN_TOP_LEFT, 18, 50); + label = lv_label_create(btn); + text = get_text_from_pool(TID_end); + lv_label_set_text(label, text); + lv_obj_align(label, LV_ALIGN_CENTER, 0, 0); + lv_obj_add_event_cb(btn, ev_move, LV_EVENT_PRESSED, NULL); + //lv_obj_add_event_cb(btn, ev_move, LV_EVENT_LONG_PRESSED, NULL); + lv_obj_add_event_cb(btn, ev_move_cancel, LV_EVENT_RELEASED, NULL); + temp = btn; + + /* 向起点移动 */ + btn = lv_btn_create(dialog); + lv_obj_set_user_data(btn, (void *)BTN_DEC); + lv_obj_set_size(btn, 170, 48); + lv_obj_add_style(btn, style_button, 0); + lv_obj_set_style_bg_color(btn, lv_color_hex(0xa8a8a8), 0); + lv_obj_align_to(btn, temp, LV_ALIGN_OUT_RIGHT_MID, 10, 0); + label = lv_label_create(btn); + text = get_text_from_pool(TID_begin); + lv_label_set_text(label, text); + lv_obj_align(label, LV_ALIGN_CENTER, 0, 0); + lv_obj_add_event_cb(btn, ev_move, LV_EVENT_PRESSED, NULL); + //lv_obj_add_event_cb(btn, ev_move, LV_EVENT_LONG_PRESSED, NULL); + lv_obj_add_event_cb(btn, ev_move_cancel, LV_EVENT_RELEASED, NULL); + temp = btn; + + /* 微调(向起点) */ + btn = lv_btn_create(dialog); + lv_obj_set_user_data(btn, (void *)BTN_INC); + lv_obj_set_size(btn, 80, 48); + lv_obj_add_style(btn, style_button, 0); + lv_obj_set_style_bg_color(btn, lv_color_hex(0xa8a8a8), 0); + lv_obj_align_to(btn, temp, LV_ALIGN_OUT_BOTTOM_RIGHT, 0, 10); + label = lv_label_create(btn); + lv_label_set_text(label, LV_SYMBOL_RIGHT LV_SYMBOL_RIGHT); + lv_obj_set_style_text_font(label, &sans_m_24, 0); + lv_obj_set_style_text_color(label, lv_color_hex(0x000000), 0); + lv_obj_align(label, LV_ALIGN_CENTER, 0, 0); + lv_obj_add_event_cb(btn, ev_adjust, LV_EVENT_CLICKED, NULL); + + /* 微调(向终点) */ + btn = lv_btn_create(dialog); + lv_obj_set_user_data(btn, (void *)BTN_DEC); + lv_obj_set_size(btn, 80, 48); + lv_obj_add_style(btn, style_button, 0); + lv_obj_set_style_bg_color(btn, lv_color_hex(0xa8a8a8), 0); + lv_obj_align_to(btn, temp, LV_ALIGN_OUT_BOTTOM_LEFT, 0, 10); + label = lv_label_create(btn); + lv_label_set_text(label, LV_SYMBOL_LEFT LV_SYMBOL_LEFT); + lv_obj_set_style_text_color(label, lv_color_hex(0x000000), 0); + lv_obj_align(label, LV_ALIGN_CENTER, 0, 0); + lv_obj_add_event_cb(btn, ev_adjust, LV_EVENT_CLICKED, NULL); + temp = btn; + + /* 回原点 */ + btn = lv_btn_create(dialog); + lv_obj_set_size(btn, 170, 48); + lv_obj_add_style(btn, style_button, 0); + if (get_gohome_status()) { + lv_obj_set_style_bg_color(btn, lv_color_hex(0x00a5ff), 0); + } + else { + lv_obj_set_style_bg_color(btn, lv_color_hex(0xa8a8a8), 0); + } + lv_obj_align_to(btn, temp, LV_ALIGN_OUT_LEFT_MID, -10, 0); + label = lv_label_create(btn); + text = get_text_from_pool(TID_gohome); + lv_label_set_text(label, text); + lv_obj_align(label, LV_ALIGN_CENTER, 0, 0); + lv_obj_add_event_cb(btn, ev_gohome, LV_EVENT_CLICKED, ta_pulse); + btn_gohome = btn; + + /* 保存补偿点 */ + btn = lv_btn_create(dialog); + lv_obj_set_user_data(btn, (void *)index); + lv_obj_set_size(btn, 170, 48); + lv_obj_add_style(btn, style_button, 0); + lv_obj_set_style_bg_color(btn, lv_color_hex(0xcc9933), 0); + lv_obj_align(btn, LV_ALIGN_TOP_RIGHT, -18, 50); + label = lv_label_create(btn); + text = get_text_from_pool(TID_comp_save); + lv_label_set_text(label, text); + lv_obj_align(label, LV_ALIGN_CENTER, 0, 0); + lv_obj_add_event_cb(btn, ev_save, LV_EVENT_CLICKED, NULL); + temp = btn; + + /* 不保存退出 */ + btn = lv_btn_create(dialog); + lv_obj_set_size(btn, 170, 48); + lv_obj_add_style(btn, style_button, 0); + lv_obj_set_style_bg_color(btn, lv_color_hex(0xa8a8a8), 0); + lv_obj_align_to(btn, temp, LV_ALIGN_OUT_BOTTOM_RIGHT, 0, 10); + label = lv_label_create(btn); + text = get_text_from_pool(TID_exit); + lv_label_set_text(label, text); + lv_obj_align(label, LV_ALIGN_CENTER, 0, 0); + lv_obj_add_event_cb(btn, ev_exit, LV_EVENT_CLICKED, NULL); +} + +static void ev_edit(lv_event_t *e) +{ + UNUSED(e); + + buzz(); + if (comp->count < COMP_MAX) { + if (comp->count > 0) { + limit_min = comp->origin[comp->count - 1].pos; + } + else { + limit_min = TEST_MIN; + } + create_edit_dialog(comp->count); + } +} + +static void ev_draw_part(lv_event_t *e) +{ + lv_obj_t *obj = lv_event_get_target(e); + lv_obj_draw_part_dsc_t *dsc = lv_event_get_param(e); + + if (dsc->part == LV_PART_ITEMS) { + u32 row = dsc->id / lv_table_get_col_cnt(obj); +// u32 col = dsc->id - row * lv_table_get_col_cnt(obj); + + if (row == 0) { +// dsc->label_dsc->align = LV_TEXT_ALIGN_CENTER; + dsc->rect_dsc->bg_color = lv_color_mix(lv_palette_main(LV_PALETTE_BLUE), dsc->rect_dsc->bg_color, LV_OPA_20); + dsc->rect_dsc->bg_opa = LV_OPA_COVER; + //if (col == 3) { + // dsc->label_dsc->align = LV_TEXT_ALIGN_CENTER; + //} + } + +// if (col == 0 || col == 2) { + dsc->label_dsc->align = LV_TEXT_ALIGN_CENTER; +// } + } + +} + +static void page_init(void) +{ + lv_style_t *style_main = get_project_style(STYLE_PAGE); + + /* 创建页面容器 */ + page = lv_obj_create(lv_scr_act()); + lv_obj_set_size(page, LV_PCT(100), LV_PCT(100)); + lv_obj_add_style(page, style_main, LV_PART_MAIN); + lv_obj_set_style_bg_color(page, lv_color_hex(0x444b5a), 0); +} + +static void page_deinit(void) +{ + if (page != NULL) { + lv_obj_del(page); + page = NULL; + } +} + +static void page_head_init(lv_obj_t *parent) +{ + lv_obj_t *frame; + lv_obj_t *label; + lv_obj_t *btn; + lv_obj_t *temp; + const char *text; + struct tm tm_production; + struct tm tm_purchase; + struct tm *tm_now; + char buf[256]; + lv_style_t *style_main = get_project_style(STYLE_PAGE); + lv_style_t *style_button = get_project_style(STYLE_BUTTON); + + /* 标题栏背景 */ + frame = lv_obj_create(parent); + lv_obj_set_size(frame, LV_PCT(100), 60); + lv_obj_set_style_bg_color(frame, lv_color_hex(0x586273), 0); + lv_obj_add_style(frame, style_main, LV_PART_MAIN); + lv_obj_set_style_shadow_width(frame, 16, 0); + + lv_obj_t *logo = lv_img_create(frame); + lv_img_set_src(logo, "P:assets/lvgl_logo.png"); + lv_obj_align(logo, LV_ALIGN_LEFT_MID, 15, 0); + + /* 标题栏文字 */ + label = lv_label_create(frame); + text = get_text_from_pool(TID_comp); + lv_label_set_text(label, text); + lv_obj_set_style_text_font(label, &sans_r_30, 0); + lv_obj_set_style_text_color(label, lv_color_hex(0xd0d0d0), 0); + lv_obj_align(label, LV_ALIGN_LEFT_MID, 70, 0); + + /* 标题栏'返回'按钮 */ + btn = lv_btn_create(frame); + lv_obj_set_size(btn, 150, 48); + lv_obj_add_style(btn, style_button, 0); + lv_obj_set_style_bg_color(btn, lv_color_hex(0xa8a8a8), 0); + lv_obj_align(btn, LV_ALIGN_RIGHT_MID, -10, 0); + label = lv_label_create(btn); + text = get_text_from_pool(TID_back); + lv_label_set_text(label, text); + lv_obj_align(label, LV_ALIGN_CENTER, 0, 0); + lv_obj_add_event_cb(btn, ev_back, LV_EVENT_CLICKED, NULL); + temp = btn; + + /* 标题栏'工厂参数'按钮 */ + btn = lv_btn_create(frame); + lv_obj_set_size(btn, 150, 48); + lv_obj_add_style(btn, style_button, 0); + lv_obj_set_style_bg_color(btn, lv_color_hex(0xa8a8a8), 0); + lv_obj_align_to(btn, temp, LV_ALIGN_OUT_LEFT_MID, -27, 0); + label = lv_label_create(btn); + text = get_text_from_pool(TID_back); + lv_label_set_text(label, "工厂参数"); + lv_obj_align(label, LV_ALIGN_CENTER, 0, 0); + lv_obj_add_event_cb(btn, ev_factory, LV_EVENT_CLICKED, NULL); +#if 0 + +#endif + /* 状态栏背景 */ + frame = lv_obj_create(parent); + lv_obj_set_size(frame, LV_PCT(100), 70); + lv_obj_set_style_bg_color(frame, lv_color_hex(0x586273), 0); + lv_obj_add_style(frame, style_main, LV_PART_MAIN); + lv_obj_align(frame, LV_ALIGN_BOTTOM_MID, 0, 0); + lv_obj_set_style_border_width(frame, 2, 0); + lv_obj_set_style_border_color(frame, lv_color_hex(0xa8a8a8), 0); + lv_obj_set_style_border_side(frame, LV_BORDER_SIDE_TOP, 0); + + /* 状态栏文字 */ + label = lv_label_create(frame); + tm_now = localtime(¶ms->production_date); + memcpy(&tm_production, tm_now, sizeof(struct tm)); + tm_now = localtime(¶ms->purchase_date); + memcpy(&tm_purchase, tm_now, sizeof(struct tm)); + const char *p1 = get_text_from_pool(TID_mfg_date); + const char *p2 = get_text_from_pool(TID_pur_date); + const char *p3 = get_text_from_pool(TID_phone); + sprintf(buf, "%s %04d-%02d-%02d %s %04d-%02d-%02d %s %s", + p1, + tm_production.tm_year + 1900, + tm_production.tm_mon + 1, + tm_production.tm_mday, + p2, + tm_purchase.tm_year + 1900, + tm_purchase.tm_mon + 1, + tm_purchase.tm_mday, + p3, + params->phone); + lv_label_set_text(label, buf); + lv_obj_set_style_text_font(label, &sans_r_18, 0); + lv_obj_set_style_text_color(label, lv_color_hex(0xd0d0d0), 0); + lv_obj_align(label, LV_ALIGN_CENTER, 0, 0); +} + +static void page_body_init(lv_obj_t *parent) +{ + lv_obj_t *table; + lv_obj_t *btn; + lv_obj_t *label; + lv_obj_t *temp; + const char *text; + lv_style_t *style_button = get_project_style(STYLE_BUTTON); + + /* 多点补偿表格 */ + table = lv_table_create(parent); + lv_obj_set_size(table, 600, 330); + lv_obj_set_style_text_font(table, &sans_m_24, 0); + lv_table_set_col_cnt(table, 4); + text = get_text_from_pool(TID_comp_no); + lv_table_set_cell_value(table, 0, 0, text); + text = get_text_from_pool(TID_comp_pos); + lv_table_set_cell_value(table, 0, 1, text); + text = get_text_from_pool(TID_comp_len); + lv_table_set_cell_value(table, 0, 2, text); + text = get_text_from_pool(TID_comp_pulse); + lv_table_set_cell_value(table, 0, 3, text); + lv_table_set_col_width(table, 0, 100); + lv_table_set_col_width(table, 1, 150); + lv_table_set_col_width(table, 2, 150); + lv_table_set_col_width(table, 3, 200); + lv_obj_set_style_pad_top(table, 10, LV_PART_ITEMS); + lv_obj_set_style_pad_bottom(table, 10, LV_PART_ITEMS); + lv_obj_set_style_pad_left(table, 5, LV_PART_ITEMS); + lv_obj_set_style_pad_right(table, 5, LV_PART_ITEMS); + lv_obj_set_style_opa(table, LV_OPA_0, LV_PART_SCROLLBAR); + lv_obj_set_style_outline_width(table, 2, LV_PART_ITEMS); + lv_obj_set_style_outline_opa(table, LV_OPA_10, LV_PART_ITEMS); + lv_obj_add_event_cb(table, ev_draw_part, LV_EVENT_DRAW_PART_BEGIN, NULL); + lv_obj_align(table, LV_ALIGN_TOP_LEFT, 10, 70); + tb_comp = table; + + /* 新增补偿点 */ + btn = lv_btn_create(parent); + lv_obj_set_size(btn, 160, 48); + lv_obj_add_style(btn, style_button, 0); + lv_obj_set_style_bg_color(btn, lv_color_hex(0xa8a8a8), 0); + lv_obj_align_to(btn, table, LV_ALIGN_OUT_RIGHT_TOP, 20, 0); + label = lv_label_create(btn); + text = get_text_from_pool(TID_comp_add); + lv_label_set_text(label, text); + lv_obj_set_style_text_font(label, &sans_m_24, 0); + lv_obj_set_style_text_color(label, lv_color_hex(0x000000), 0); + lv_obj_align(label, LV_ALIGN_CENTER, 0, 0); + lv_obj_add_event_cb(btn, ev_edit, LV_EVENT_CLICKED, NULL); + temp = btn; + + /* 删除补偿点 */ + btn = lv_btn_create(parent); + lv_obj_set_size(btn, 160, 48); + lv_obj_add_style(btn, style_button, 0); + lv_obj_set_style_bg_color(btn, lv_color_hex(0xa8a8a8), 0); + lv_obj_align_to(btn, temp, LV_ALIGN_OUT_BOTTOM_MID, 0, 10); + label = lv_label_create(btn); + text = get_text_from_pool(TID_comp_del); + lv_label_set_text(label, text); + lv_obj_set_style_text_font(label, &sans_m_24, 0); + lv_obj_set_style_text_color(label, lv_color_hex(0x000000), 0); + lv_obj_align(label, LV_ALIGN_CENTER, 0, 0); + lv_obj_add_event_cb(btn, ev_del, LV_EVENT_CLICKED, NULL); + temp = btn; + + /* 清除数据 */ + btn = lv_btn_create(parent); + lv_obj_set_size(btn, 160, 48); + lv_obj_add_style(btn, style_button, 0); + lv_obj_set_style_bg_color(btn, lv_color_hex(0xa8a8a8), 0); + lv_obj_align_to(btn, temp, LV_ALIGN_OUT_BOTTOM_MID, 0, 10); + label = lv_label_create(btn); + text = get_text_from_pool(TID_comp_clear); + lv_label_set_text(label, text); + lv_obj_set_style_text_font(label, &sans_m_24, 0); + lv_obj_set_style_text_color(label, lv_color_hex(0x000000), 0); + lv_obj_align(label, LV_ALIGN_CENTER, 0, 0); + lv_obj_add_event_cb(btn, ev_clear, LV_EVENT_CLICKED, NULL); + + /* 回原点 */ + btn = lv_btn_create(parent); + lv_obj_set_size(btn, 160, 48); + lv_obj_add_style(btn, style_button, 0); + if (get_gohome_status()) { + lv_obj_set_style_bg_color(btn, lv_color_hex(0x00a5ff), 0); + } + else { + lv_obj_set_style_bg_color(btn, lv_color_hex(0xa8a8a8), 0); + } + lv_obj_align_to(btn, table, LV_ALIGN_OUT_RIGHT_BOTTOM, 20, 0); + label = lv_label_create(btn); + text = get_text_from_pool(TID_gohome); + lv_label_set_text(label, text); + lv_obj_align(label, LV_ALIGN_CENTER, 0, 0); + lv_obj_add_event_cb(btn, ev_gohome, LV_EVENT_CLICKED, NULL); +} + +s32 compensation_open(void *args) +{ + UNUSED(args); + + dprint("[%s]++\n", __func__); + + /* 本地变量初始 */ + ta_pulse = NULL; + last_position = -1; + comp_changed = 0; + + /* 获取参数数据接口 */ + params = get_params_data(); + + /* 获取运行时数据接口 */ + runtime = get_runtime_data(); + + /* 获取多段补偿数据接口 */ + comp = get_comp_data(); + + /* 创建页面背景对象 */ + page_init(); + + /* 创建页面head对象 */ + page_head_init(page); + + /* 创建页面body对象 */ + page_body_init(page); + + /* 刷新页面 */ + comp_data_refresh(); + + /* success */ + last_time = get_current_time(); + + return 0; +} + +void compensation_close(void) +{ + dprint("[%s]++\n", __func__); + page_deinit(); +} + +void compensation_update(void) +{ + s32 pos; + char buf[32]; + + /* 更新当前位置脉冲数 */ + if (ta_pulse != NULL) { + pos = get_current_pulse_count(); + if (pos != last_position) { + sprintf(buf, "%d", pos); + lv_textarea_set_text(ta_pulse, buf); + last_position = pos; + } + } + + if (time_after(get_current_time(), last_time)) { + last_time = get_current_time() + 1000; + } +} + diff --git a/800x480/MK_custom.c b/800x480/MK_custom.c new file mode 100644 index 0000000..1d1bd3e --- /dev/null +++ b/800x480/MK_custom.c @@ -0,0 +1,694 @@ +/* + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are + * met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * * Redistributions in binary form must reproduce the above + * copyright notice, this list of conditions and the following disclaimer + * in the documentation and/or other materials provided with the + * distribution. + * * Neither the name of the nor the names of its + * contributors may be used to endorse or promote products derived from + * this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT + * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR + * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT + * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT + * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, + * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY + * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE + * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + * + */ +#include +#include +#include +#include +#include +#include +#include +#include +#include "lvgl/lvgl.h" +#include "MK_macro.h" +#include "MK_types.h" +#include "MK_func.h" + +static lv_obj_t *page = NULL; +static lv_obj_t *lbl_curpos = NULL; + +static struct params_data *params; +static struct runtime_data *runtime; +static struct custom_data *custom; +static u32 last_time; +static s32 error_index; +static s32 custom_changed; +static s32 last_position; + +static struct custom_info customs[CUSTOM_MAX]; + +static void show_warning(s32 index, s32 visible) +{ + if (visible) { + lv_obj_set_style_bg_color(customs[index].obj[0], lv_color_hex(0xff0000), 0); + lv_obj_set_style_bg_color(customs[index].obj[1], lv_color_hex(0xff0000), 0); + lv_obj_set_style_bg_color(customs[index].obj[2], lv_color_hex(0xff0000), 0); + lv_obj_set_style_text_color(customs[index].obj[0], lv_color_hex(0xffffff), 0); + lv_obj_set_style_text_color(customs[index].obj[1], lv_color_hex(0xffffff), 0); + lv_obj_set_style_text_color(customs[index].obj[2], lv_color_hex(0xffffff), 0); + } + else { + lv_obj_set_style_bg_color(customs[index].obj[0], lv_color_hex(0xffffff), 0); + lv_obj_set_style_bg_color(customs[index].obj[1], lv_color_hex(0xffffff), 0); + lv_obj_set_style_bg_color(customs[index].obj[2], lv_color_hex(0xffffff), 0); + lv_obj_set_style_text_color(customs[index].obj[0], lv_color_hex(0), 0); + lv_obj_set_style_text_color(customs[index].obj[1], lv_color_hex(0), 0); + lv_obj_set_style_text_color(customs[index].obj[2], lv_color_hex(0), 0); + } +} + +static void intf_update(void) +{ + s32 i; + char buf[32]; + + for (i = 0; i < CUSTOM_MAX; ++i) { + sprintf(buf, "%.1f", custom->range[i].lower / STORE_RATE); + lv_label_set_text(customs[i].obj[0], buf); + sprintf(buf, "%.1f", custom->range[i].upper / STORE_RATE); + lv_label_set_text(customs[i].obj[1], buf); + sprintf(buf, "%.1f", custom->range[i].value / STORE_RATE); + lv_label_set_text(customs[i].obj[2], buf); + } +} + +static s32 verify_custom_range(const char *val, void *user_data) +{ + s32 index = (s32)user_data; + s32 id = index & 0xff; + f32 v = strtof(val, NULL) * 10; + s32 lower = 0; + s32 upper = 0; + s32 i; + + s32 value = v * STORE_RATE / 10; + index >>= 8; + + /* 输入只能为0或允许范围内(min,max)的值 */ + if (value != 0 && (value < runtime->min || value > runtime->max)) { + goto invalid; + } + + /* 输入不能是其他区间内的值, 且输入所在补偿段不能包含其他段 */ + if (id == 0) { + lower = value; + upper = custom->range[index].upper; + } + else if (id == 1) { + lower = custom->range[index].lower; + upper = value; + } + + dprint("index: %d, id: %d, lower=%d, upper=%d\n", index, id, lower, upper); + for (i = 0; i < CUSTOM_MAX; ++i) { + if (lower != 0 && upper != 0 && upper < lower) { + goto invalid; + } + + if (i == index) { /* 跳过与自己段的比较 */ + continue; + } + + /* 输入段不能与其他段交叉或包含 */ + if ((value > custom->range[i].lower && value < custom->range[i].upper) + || (lower != 0 && lower <= custom->range[i].lower && upper >= custom->range[i].upper)) { + goto invalid; + } + } + + /* 返回有效 */ + return 1; + +invalid: + return 0; +} + +static s32 verify_value_range(const char *val, void *user_data) +{ + f32 v = strtof(val, NULL) * STORE_RATE; + + UNUSED(user_data); + if (v >= -CUSTOM_VALUE_MAX * STORE_RATE + && v <= CUSTOM_VALUE_MAX * STORE_RATE) { + return 1; + } + + return 0; +} + +static void custom_value_update(const char *val, void *user_data) +{ + s32 index = (s32)user_data; + s32 id = index & 0xff; + char buf[16]; + + /* 值设定 */ + index >>= 8; + s32 v = strtof(val, NULL) * 10; /* 保留一位有效小数 */ + v *= STORE_RATE / 10; + switch (id) { + case 0: + custom->range[index].lower = v; + break; + + case 1: + custom->range[index].upper = v; + break; + + case 2: + custom->range[index].value = v; + break; + + default: + break; + } + sprintf(buf, "%.1f", v / STORE_RATE); + lv_label_set_text(customs[index].obj[id], buf); + + if (error_index != -1) { + show_warning(error_index, FALSE); + } + custom_changed = 1; +} + +static void test_value_update(const char *val, void *user_data) +{ + lv_obj_t *obj = (lv_obj_t *)user_data; + char buf[16]; + + s32 v = strtof(val, NULL) * 10; /* 保留一位有效小数 */ + v *= STORE_RATE / 10; + runtime->target = v; + sprintf(buf, "%.1f", v / STORE_RATE); + lv_label_set_text(obj, buf); +} + +static void ev_back(lv_event_t *e) +{ + UNUSED(e); + + buzz(); + set_current_window(WM_SINGLE); +} + +static void ev_input(lv_event_t *e) +{ + static struct ime_cb ime_cb; + lv_obj_t *obj = lv_event_get_target(e); + s32 index, id; + + index = (s32)lv_obj_get_user_data(obj); + id = (s32)lv_event_get_user_data(e); + memset(&ime_cb, 0, sizeof(struct ime_cb)); + ime_cb.user_data = (void *)(index << 8 | id); + ime_cb.verify = verify_custom_range; + ime_cb.update = custom_value_update; + + /* 调用输入框 */ + buzz(); + create_ime(runtime->min / STORE_RATE, runtime->max / STORE_RATE, &ime_cb); +} + +static void ev_value(lv_event_t *e) +{ + static struct ime_cb ime_cb; + lv_obj_t *obj = lv_event_get_target(e); + s32 index, id; + + index = (s32)lv_obj_get_user_data(obj); + id = (s32)lv_event_get_user_data(e); + memset(&ime_cb, 0, sizeof(struct ime_cb)); + ime_cb.user_data = (void *)(index << 8 | id); + ime_cb.verify = verify_value_range; + ime_cb.update = custom_value_update; + + /* 调用输入框 */ + buzz(); + create_ime(-CUSTOM_VALUE_MAX, CUSTOM_VALUE_MAX, &ime_cb); +} + +static void ev_save(lv_event_t *e) +{ + s32 i; + + UNUSED(e); + + buzz(); + if (!custom_changed) { + return; + } + + if (error_index != -1) { + show_warning(error_index, FALSE); + } + + error_index = -1; + for (i = 0; i < CUSTOM_MAX; ++i) { + if (custom->range[i].lower == 0 && custom->range[i].upper == 0) { + custom->range[i].value = 0; + continue; + } + + dprint("lower: %d, upper: %d, index=%d\n", + custom->range[i].lower, custom->range[i].upper, i); + if ((custom->range[i].lower < runtime->min) + || (custom->range[i].upper <= custom->range[i].lower)) { + error_index = i; + break; + } + } + + if (error_index != -1) { + show_warning(error_index, TRUE); + return; + } + + /* 保存有效数据 */ + custom_data_save(); + custom_changed = 0; +} + +static void ev_clear(lv_event_t *e) +{ + UNUSED(e); + + buzz(); + if (error_index != -1) { + show_warning(error_index, FALSE); + } + + memset(&custom->range, 0, sizeof(custom->range)); + custom_data_save(); + intf_update(); +} + +static void ev_test_value(lv_event_t *e) +{ + static struct ime_cb ime_cb; + lv_obj_t *obj = lv_event_get_target(e); + + memset(&ime_cb, 0, sizeof(struct ime_cb)); + ime_cb.user_data = obj; + ime_cb.verify = verify_range_common; + ime_cb.update = test_value_update; + + /* 调用输入框 */ + buzz(); + create_ime(runtime->min / STORE_RATE, runtime->max / STORE_RATE, &ime_cb); +} + +static void ev_test(lv_event_t *e) +{ + UNUSED(e); + + buzz(); + if (!get_running_status()) { + set_target_position(runtime->target); + } +} + +static void ev_enabled(lv_event_t *e) +{ + lv_obj_t *obj = lv_event_get_target(e); + + buzz(); + if (lv_obj_has_state(obj, LV_STATE_CHECKED)) { + custom->enabled = 1; + } + else { + custom->enabled = 0; + } + + custom_data_save(); + dprint("custom mode: %d\n", custom->enabled); +} + +static void create_custom_single(lv_obj_t *parent, struct custom_info *info) +{ + lv_obj_t *ta; + lv_obj_t *label; + lv_style_t *style_input = get_project_style(STYLE_INPUT2); + lv_style_t *style_label = get_project_style(STYLE_LABEL); + + /* 开始值 */ + ta = lv_label_create(parent); + lv_obj_set_size(ta, 100, 40); + lv_obj_set_user_data(ta, (void *)info->index); + lv_obj_add_flag(ta, LV_OBJ_FLAG_CLICKABLE); + lv_obj_add_style(ta, style_input, 0); + lv_obj_set_style_pad_top(ta, 5, 0); + lv_label_set_text(ta, "0.0"); + lv_obj_align(ta, LV_ALIGN_TOP_LEFT, info->coord.x0, info->coord.y0); + lv_obj_add_event_cb(ta, ev_input, LV_EVENT_CLICKED, (void *)0); + info->obj[0] = ta; + + /* 分隔符 */ + label = lv_label_create(parent); + lv_obj_add_style(label, style_label, 0); + lv_label_set_text(label, "-"); + lv_obj_align_to(label, ta, LV_ALIGN_OUT_RIGHT_MID, 6, 0); + + /* 终止值 */ + ta = lv_label_create(parent); + lv_obj_set_size(ta, 100, 40); + lv_obj_set_user_data(ta, (void *)info->index); + lv_obj_add_flag(ta, LV_OBJ_FLAG_CLICKABLE); + lv_obj_add_style(ta, style_input, 0); + lv_obj_set_style_pad_top(ta, 5, 0); + lv_label_set_text(ta, "0.0"); + lv_obj_align_to(ta, info->obj[0], LV_ALIGN_OUT_RIGHT_MID, 20, 0); + lv_obj_add_event_cb(ta, ev_input, LV_EVENT_CLICKED, (void *)1); + info->obj[1] = ta; + + /* 补偿值 */ + ta = lv_label_create(parent); + lv_obj_set_size(ta, 70, 40); + lv_obj_set_user_data(ta, (void *)info->index); + lv_obj_add_flag(ta, LV_OBJ_FLAG_CLICKABLE); + lv_obj_add_style(ta, style_input, 0); + lv_obj_set_style_pad_top(ta, 5, 0); + lv_label_set_text(ta, "0.0"); + lv_obj_align_to(ta, info->obj[1], LV_ALIGN_OUT_RIGHT_MID, 30, 0); + lv_obj_add_event_cb(ta, ev_value, LV_EVENT_CLICKED, (void *)2); + info->obj[2] = ta; + + /* 序号 */ + label = lv_label_create(parent); + lv_obj_add_style(label, style_label, 0); + lv_label_set_text_fmt(label, "%d、", info->index + 1); + lv_obj_align_to(label, info->obj[0], LV_ALIGN_OUT_LEFT_MID, 0, 0); +} + +static void create_custom_area(lv_obj_t *parent) +{ + lv_obj_t *label; + s32 i; + const char *text; + lv_style_t *style_label = get_project_style(STYLE_LABEL); + + /* '1~5列'标题区 */ + label = lv_label_create(parent); + lv_obj_add_style(label, style_label, 0); + text = get_text_from_pool(TID_comp_start); + lv_label_set_text_static(label, text); + lv_obj_set_style_text_align(label, LV_TEXT_ALIGN_CENTER, 0); + lv_obj_align(label, LV_ALIGN_TOP_LEFT, 75, 80); + + label = lv_label_create(parent); + lv_obj_add_style(label, style_label, 0); + text = get_text_from_pool(TID_comp_end); + lv_label_set_text_static(label, text); + lv_obj_set_style_text_align(label, LV_TEXT_ALIGN_CENTER, 0); + lv_obj_align(label, LV_ALIGN_TOP_LEFT, 195, 80); + + label = lv_label_create(parent); + lv_obj_add_style(label, style_label, 0); + text = get_text_from_pool(TID_comp_val); + lv_label_set_text_static(label, text); + lv_obj_set_style_text_align(label, LV_TEXT_ALIGN_CENTER, 0); + lv_obj_align(label, LV_ALIGN_TOP_LEFT, 310, 80); + + /* '6~10列'标题区 */ + label = lv_label_create(parent); + lv_obj_add_style(label, style_label, 0); + text = get_text_from_pool(TID_comp_start); + lv_label_set_text_static(label, text); + lv_obj_set_style_text_align(label, LV_TEXT_ALIGN_CENTER, 0); + lv_obj_align(label, LV_ALIGN_TOP_LEFT, 475, 80); + + label = lv_label_create(parent); + lv_obj_add_style(label, style_label, 0); + text = get_text_from_pool(TID_comp_end); + lv_label_set_text_static(label, text); + lv_obj_set_style_text_align(label, LV_TEXT_ALIGN_CENTER, 0); + lv_obj_align(label, LV_ALIGN_TOP_LEFT, 595, 80); + + label = lv_label_create(parent); + lv_obj_add_style(label, style_label, 0); + text = get_text_from_pool(TID_comp_val); + lv_label_set_text_static(label, text); + lv_obj_set_style_text_align(label, LV_TEXT_ALIGN_CENTER, 0); + lv_obj_align(label, LV_ALIGN_TOP_LEFT, 710, 80); + + /* '补偿'输入区 */ + for (i = 0; i < CUSTOM_MAX; ++i) { + create_custom_single(parent, &customs[i]); + } +} + +static void page_init(void) +{ + lv_style_t *style_main = get_project_style(STYLE_PAGE); + + /* 创建页面容器 */ + page = lv_obj_create(lv_scr_act()); + lv_obj_set_size(page, LV_PCT(100), LV_PCT(100)); + lv_obj_add_style(page, style_main, LV_PART_MAIN); + lv_obj_set_style_bg_color(page, lv_color_hex(0x444b5a), 0); +} + +static void page_deinit(void) +{ + if (page != NULL) { + lv_obj_del(page); + page = NULL; + } +} + +static void page_head_init(lv_obj_t *parent) +{ + lv_obj_t *frame; + lv_obj_t *label; + lv_obj_t *btn; + lv_obj_t *ta; + lv_obj_t *temp; + const char *text; + lv_style_t *style_main = get_project_style(STYLE_PAGE); + lv_style_t *style_button = get_project_style(STYLE_BUTTON); + lv_style_t *style_input = get_project_style(STYLE_INPUT2); + lv_style_t *style_label = get_project_style(STYLE_LABEL); + + /* 标题栏背景 */ + frame = lv_obj_create(parent); + lv_obj_set_size(frame, LV_PCT(100), 60); + lv_obj_set_style_bg_color(frame, lv_color_hex(0x586273), 0); + lv_obj_add_style(frame, style_main, LV_PART_MAIN); + lv_obj_set_style_shadow_width(frame, 16, 0); + + lv_obj_t *logo = lv_img_create(frame); + lv_img_set_src(logo, "P:assets/lvgl_logo.png"); + lv_obj_align(logo, LV_ALIGN_LEFT_MID, 15, 0); + + /* 标题栏文字 */ + label = lv_label_create(frame); + text = get_text_from_pool(TID_custom); + lv_label_set_text(label, text); + lv_obj_set_style_text_font(label, &sans_r_30, 0); + lv_obj_set_style_text_color(label, lv_color_hex(0xd0d0d0), 0); + lv_obj_align(label, LV_ALIGN_LEFT_MID, 70, 0); + + /* 启用补偿 */ + label = lv_label_create(frame); + lv_obj_add_style(label, style_label, 0); + text = get_text_from_pool(TID_enable); + lv_label_set_text_static(label, text); + lv_obj_align(label, LV_ALIGN_CENTER, 0, 0); + + /* 补偿开关 */ + lv_obj_t *sw = lv_switch_create(frame); + lv_obj_set_size(sw, 76, 36); + lv_obj_set_style_bg_color(sw, lv_color_hex(0x202020), 0); + lv_obj_align_to(sw, label, LV_ALIGN_OUT_RIGHT_MID, 10, 0); + if (custom->enabled) { + lv_obj_add_state(sw, LV_STATE_CHECKED); + } + else { + lv_obj_clear_state(sw, LV_STATE_CHECKED); + } + lv_obj_add_event_cb(sw, ev_enabled, LV_EVENT_VALUE_CHANGED, NULL); + + /* 标题栏返回按钮 */ + btn = lv_btn_create(frame); + lv_obj_set_size(btn, 150, 48); + lv_obj_add_style(btn, style_button, 0); + lv_obj_set_style_bg_color(btn, lv_color_hex(0xa8a8a8), 0); + lv_obj_align(btn, LV_ALIGN_RIGHT_MID, -10, 0); + label = lv_label_create(btn); + text = get_text_from_pool(TID_back); + lv_label_set_text(label, text); + lv_obj_set_style_text_font(label, &sans_m_24, 0); + lv_obj_set_style_text_color(label, lv_color_hex(0x000000), 0); + lv_obj_align(label, LV_ALIGN_CENTER, 0, 0); + lv_obj_add_event_cb(btn, ev_back, LV_EVENT_CLICKED, NULL); + + /* 状态栏背景 */ + frame = lv_obj_create(parent); + lv_obj_set_size(frame, LV_PCT(100), 70); + lv_obj_set_style_bg_color(frame, lv_color_hex(0x586273), 0); + lv_obj_add_style(frame, style_main, LV_PART_MAIN); + lv_obj_align(frame, LV_ALIGN_BOTTOM_MID, 0, 0); + lv_obj_set_style_border_width(frame, 2, 0); + lv_obj_set_style_border_color(frame, lv_color_hex(0xa8a8a8), 0); + lv_obj_set_style_border_side(frame, LV_BORDER_SIDE_TOP, 0); + + /* 保存补偿数据 */ + btn = lv_btn_create(frame); + lv_obj_set_user_data(btn, (void *)index); + lv_obj_set_size(btn, 160, 48); + lv_obj_add_style(btn, style_button, 0); + lv_obj_set_style_bg_color(btn, lv_color_hex(0xcc9933), 0); + lv_obj_align(btn, LV_ALIGN_RIGHT_MID, -10, 0); + label = lv_label_create(btn); + text = get_text_from_pool(TID_custom_save); + lv_label_set_text(label, text); + lv_obj_align(label, LV_ALIGN_CENTER, 0, 0); + lv_obj_add_event_cb(btn, ev_save, LV_EVENT_CLICKED, NULL); + temp = btn; + + /* 清除补偿数据 */ + btn = lv_btn_create(frame); + lv_obj_set_size(btn, 160, 48); + lv_obj_add_style(btn, style_button, 0); + lv_obj_set_style_bg_color(btn, lv_color_hex(0xa8a8a8), 0); + lv_obj_align_to(btn, temp, LV_ALIGN_OUT_LEFT_MID, -10, 0); + label = lv_label_create(btn); + text = get_text_from_pool(TID_comp_clear); + lv_label_set_text(label, text); + lv_obj_align(label, LV_ALIGN_CENTER, 0, 0); + lv_obj_add_event_cb(btn, ev_clear, LV_EVENT_CLICKED, NULL); + temp = btn; + + /* 测试值 */ + ta = lv_label_create(frame); + lv_obj_set_size(ta, 120, 40); + lv_obj_add_flag(ta, LV_OBJ_FLAG_CLICKABLE); + lv_obj_add_style(ta, style_input, 0); + lv_obj_set_style_pad_top(ta, 5, 0); + lv_label_set_text(ta, "0.0"); + lv_obj_align(ta, LV_ALIGN_LEFT_MID, 10, 0); + lv_obj_add_event_cb(ta, ev_test_value, LV_EVENT_CLICKED, (void *)0); + temp = ta; + + /* 测试按钮 */ + btn = lv_btn_create(frame); + lv_obj_set_size(btn, 120, 48); + lv_obj_add_style(btn, style_button, 0); + lv_obj_set_style_bg_color(btn, lv_color_hex(0xa8a8a8), 0); + lv_obj_align_to(btn, temp, LV_ALIGN_OUT_RIGHT_MID, 10, 0); + label = lv_label_create(btn); + text = get_text_from_pool(TID_test_run); + lv_label_set_text(label, text); + lv_obj_align(label, LV_ALIGN_CENTER, 0, 0); + lv_obj_add_event_cb(btn, ev_test, LV_EVENT_CLICKED, NULL); + temp = btn; + + /* '当前位置'显示框 */ + ta = lv_label_create(parent); + lv_obj_set_size(ta, 120, 40); + lv_obj_add_style(ta, style_label, 0); + lv_obj_set_style_text_align(ta, LV_TEXT_ALIGN_CENTER, 0); + lv_obj_set_style_pad_top(ta, 5, 0); + lv_obj_set_style_border_width(ta, 1, 0); + lv_obj_set_style_border_color(ta, lv_color_hex(0xa8a8a8), 0); + lv_label_set_text_static(ta, "0.0"); + lv_obj_align_to(ta, temp, LV_ALIGN_OUT_RIGHT_MID, 10, 0); + lbl_curpos = ta; +} + +static void page_body_init(lv_obj_t *parent) +{ + create_custom_area(parent); +} + +static void custom_info_init(void) +{ + s32 i; + s32 left, top; + + memset(customs, 0, sizeof(customs)); + for (i = 0; i < CUSTOM_MAX; ++i) { + left = (i / CUSTOM_ROWS) * 400 + 60; + top = (i % CUSTOM_ROWS) * 50 + 154; + customs[i].index = i; + customs[i].coord.x0 = left; + customs[i].coord.y0 = top; + dprint("customs[%d].x0=%d, y0=%d\n", i, left, top); + } +} + +s32 custom_open(void *args) +{ + UNUSED(args); + + dprint("[%s]++\n", __func__); + + /* 本地变量初始 */ + error_index = -1; + custom_changed = 0; + last_position = -1; + custom_info_init(); + + /* 获取参数数据接口 */ + params = get_params_data(); + + /* 获取运行时数据接口 */ + runtime = get_runtime_data(); + + /* 获取用户分段补偿数据 */ + custom = get_custom_data(); + + /* 创建页面背景对象 */ + page_init(); + + /* 创建页面背景对象,先创建body对象再创建head对象是为了显示3d效果 */ + page_body_init(page); + + /* 创建页面head对象 */ + page_head_init(page); + + /* success */ + intf_update(); + last_time = get_current_time(); + + return 0; +} + +void custom_close(void) +{ + dprint("[%s]++\n", __func__); + page_deinit(); +} + +void custom_update(void) +{ + s32 pos; + char buf[32]; + + /* 更新挡板位置 */ + pos = get_current_position(); + if (pos != last_position) { + sprintf(buf, "%.1f", pos / STORE_RATE); + lv_label_set_text(lbl_curpos, buf); + last_position = pos; + } + + if (time_after(get_current_time(), last_time)) { + last_time = get_current_time() + 1000; + } +} + diff --git a/800x480/MK_dealer.c b/800x480/MK_dealer.c new file mode 100644 index 0000000..a8fba61 --- /dev/null +++ b/800x480/MK_dealer.c @@ -0,0 +1,526 @@ +/* + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are + * met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * * Redistributions in binary form must reproduce the above + * copyright notice, this list of conditions and the following disclaimer + * in the documentation and/or other materials provided with the + * distribution. + * * Neither the name of the nor the names of its + * contributors may be used to endorse or promote products derived from + * this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT + * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR + * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT + * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT + * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, + * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY + * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE + * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + * + */ +#include +#include +#include +#include +#include +#include +#include "lvgl/lvgl.h" +#include "MK_macro.h" +#include "MK_types.h" +#include "MK_func.h" + +static lv_obj_t *page = NULL; +static lv_obj_t *ta_year = NULL; +static lv_obj_t *ta_month = NULL; +static lv_obj_t *ta_day = NULL; +static lv_obj_t *lbl_status = NULL; +static lv_obj_t *ta_phone = NULL; + +static struct params_data *params; +static struct runtime_data *runtime; +static u32 last_time; +static s32 params_changed; + +static void intf_update(void) +{ + time_t now; + struct tm *tm_now; + struct tm tm_production; + struct tm tm_purchase; + char buf[256]; + + /* 购机日期 */ + now = params->purchase_date; + tm_now = localtime(&now); + sprintf(buf, "%d", tm_now->tm_year + 1900); + lv_textarea_set_text(ta_year, buf); + sprintf(buf, "%02d", tm_now->tm_mon + 1); + lv_textarea_set_text(ta_month, buf); + sprintf(buf, "%02d", tm_now->tm_mday); + lv_textarea_set_text(ta_day, buf); + + /* 维护电话 */ + lv_textarea_set_text(ta_phone, params->phone); + + /* 状态栏显示 */ + tm_now = localtime(¶ms->production_date); + memcpy(&tm_production, tm_now, sizeof(struct tm)); + tm_now = localtime(¶ms->purchase_date); + memcpy(&tm_purchase, tm_now, sizeof(struct tm)); + const char *p1 = get_text_from_pool(TID_mfg_date); + const char *p2 = get_text_from_pool(TID_pur_date); + const char *p3 = get_text_from_pool(TID_phone); + sprintf(buf, "%s %04d-%02d-%02d %s %04d-%02d-%02d %s %s", + p1, + tm_production.tm_year + 1900, + tm_production.tm_mon + 1, + tm_production.tm_mday, + p2, + tm_purchase.tm_year + 1900, + tm_purchase.tm_mon + 1, + tm_purchase.tm_mday, + p3, + params->phone); + lv_label_set_text(lbl_status, buf); +} + +static s32 verify_year(const char *val, void *user_data) +{ + s32 v = strtol(val, NULL, 10); + + UNUSED(user_data); + if (v >= 2000 && v < 3000) { + return 1; + } + + return 0; +} + +static s32 verify_month(const char *val, void *user_data) +{ + s32 v = strtol(val, NULL, 10); + + UNUSED(user_data); + if (v > 0 && v <= 12) { + return 1; + } + + return 0; +} + +static s32 verify_day(const char *val, void *user_data) +{ + s32 v = strtol(val, NULL, 10); + + UNUSED(user_data); + if (v > 0 && v <= 31) { + return 1; + } + + return 0; +} + +static void datetime_value_update(const char *val, void *user_data) +{ + lv_obj_t *ta = (lv_obj_t *)user_data; + s32 ta_id = (s32)lv_obj_get_user_data(ta); + char buf[16]; + s32 v = strtol(val, NULL, 10); + + /* 值设定 */ + switch (ta_id) { + case TA_YEAR: + sprintf(buf, "%d", v); + break; + + case TA_MONTH: + case TA_DAY: + case TA_HOUR: + case TA_MINUTE: + case TA_SECOND: + sprintf(buf, "%02d", v); + break; + + default: + break; + } + + params_changed = 1; + lv_textarea_set_text(ta, buf); +} + +static void phone_value_update(const char *val, void *user_data) +{ + lv_obj_t *ta = (lv_obj_t *)user_data; + + params_changed = 1; + lv_textarea_set_text(ta, val + 1); +} + +static void purchase_date_save(void) +{ + time_t now; + struct tm tm_now; + s32 y,m,d; + + const char *p = lv_textarea_get_text(ta_year); + y = strtol(p, NULL, 10); + p = lv_textarea_get_text(ta_month); + m = strtol(p, NULL, 10); + p = lv_textarea_get_text(ta_day); + d = strtol(p, NULL, 10); + + dprint("[production]y=%d, m=%d, d=%d\n", y, m, d); + + tm_now.tm_year = y - 1900; + tm_now.tm_mon = m - 1; + tm_now.tm_mday = d; + tm_now.tm_hour = 0; + tm_now.tm_min = 0; + tm_now.tm_sec = 0; + + now = mktime(&tm_now); + params->purchase_date = now; +} + +static void phone_number_save(void) +{ + const char *p = lv_textarea_get_text(ta_phone); + strncpy(params->phone, p, PHONE_MAX - 1); +} + +static void ev_back(lv_event_t *e) +{ + UNUSED(e); + + buzz(); + if (params_changed) { + purchase_date_save(); + phone_number_save(); + params_data_save(); + params_changed = 0; + } + + set_current_window(WM_ORIGIN); +} + +static void ev_datetime_input(lv_event_t *e) +{ + static struct ime_cb ime_cb; + lv_obj_t *obj = lv_event_get_target(e); + s32 ta_id = (s32)lv_obj_get_user_data(obj); + + memset(&ime_cb, 0, sizeof(struct ime_cb)); + ime_cb.user_data = obj; + switch (ta_id) { + case TA_YEAR: + ime_cb.verify = verify_year; + break; + + case TA_MONTH: + ime_cb.verify = verify_month; + break; + + case TA_DAY: + ime_cb.verify = verify_day; + break; + + default: + break; + } + ime_cb.update = datetime_value_update; + + /* 调用输入框 */ + buzz(); + create_ime(0, 0, &ime_cb); +} + +static void ev_phone_input(lv_event_t *e) +{ + static struct ime_cb ime_cb; + lv_obj_t *obj = lv_event_get_target(e); + + memset(&ime_cb, 0, sizeof(struct ime_cb)); + ime_cb.user_data = obj; + ime_cb.update = phone_value_update; + + /* 调用输入框 */ + buzz(); + create_ime(0, 0, &ime_cb); +} + +static void ev_save(lv_event_t *e) +{ + UNUSED(e); + + buzz(); + if (params_changed) { + purchase_date_save(); + phone_number_save(); + params_data_save(); + params_changed = 0; + + /* 刷新页面 */ + intf_update(); + } +} + +static void datetime_create(lv_obj_t *parent) +{ + lv_obj_t *frame; + lv_obj_t *label; + lv_obj_t *btn; + lv_obj_t *ta; + const char *text; + lv_style_t *style_meter = get_project_style(STYLE_METER); + lv_style_t *style_input = get_project_style(STYLE_INPUT); + lv_style_t *style_button = get_project_style(STYLE_BUTTON); + + /* 背景框 */ + frame = lv_obj_create(parent); + lv_obj_set_size(frame, 760, 310); + lv_obj_add_style(frame, style_meter, 0); + lv_obj_set_style_bg_color(frame, lv_color_hex(0x586273), 0); + lv_obj_set_style_border_width(frame, 2, 0); + lv_obj_set_style_border_color(frame, lv_color_hex(0x808a97), 0); + lv_obj_align(frame, LV_ALIGN_LEFT_MID, 20, -5); + + /* '购机日期'标题 */ + label = lv_label_create(frame); + text = get_text_from_pool(TID_purchase_date); + lv_label_set_text(label, text); + lv_obj_set_style_text_font(label, &sans_m_24, 0); + lv_obj_set_style_text_color(label, lv_color_hex(0xd0d0d0), 0); + lv_obj_align(label, LV_ALIGN_TOP_MID, 0, 20); + + /* '月' */ + ta = lv_textarea_create(frame); + lv_obj_set_user_data(ta, (void *)TA_MONTH); + lv_textarea_set_one_line(ta, true); + lv_textarea_set_align(ta, LV_TEXT_ALIGN_CENTER); + lv_obj_add_style(ta, style_input, 0); + lv_obj_set_style_pad_top(ta, 10, 0); + lv_obj_set_style_text_color(ta, lv_color_hex(0), 0); + lv_textarea_set_text(ta, "0"); + lv_obj_set_style_text_font(ta, &sans_m_24, 0); + lv_obj_set_size(ta, 150, 48); + lv_textarea_set_accepted_chars(ta, "0123456789.-"); + lv_obj_set_style_opa(ta, LV_OPA_TRANSP, LV_PART_CURSOR); + lv_obj_align_to(ta, label, LV_ALIGN_OUT_BOTTOM_MID, 0, 8); + lv_obj_add_event_cb(ta, ev_datetime_input, LV_EVENT_CLICKED, NULL); + ta_month = ta; + + /* 'å¹´' */ + ta = lv_textarea_create(frame); + lv_obj_set_user_data(ta, (void *)TA_YEAR); + lv_textarea_set_one_line(ta, true); + lv_textarea_set_align(ta, LV_TEXT_ALIGN_CENTER); + lv_obj_add_style(ta, style_input, 0); + lv_obj_set_style_pad_top(ta, 10, 0); + lv_obj_set_style_text_color(ta, lv_color_hex(0), 0); + lv_textarea_set_text(ta, "0"); + lv_obj_set_style_text_font(ta, &sans_m_24, 0); + lv_obj_set_size(ta, 150, 48); + lv_textarea_set_accepted_chars(ta, "0123456789.-"); + lv_obj_set_style_opa(ta, LV_OPA_TRANSP, LV_PART_CURSOR); + lv_obj_align_to(ta, ta_month, LV_ALIGN_OUT_LEFT_MID, -10, 0); + lv_obj_add_event_cb(ta, ev_datetime_input, LV_EVENT_CLICKED, NULL); + ta_year = ta; + + /* '日' */ + ta = lv_textarea_create(frame); + lv_obj_set_user_data(ta, (void *)TA_DAY); + lv_textarea_set_one_line(ta, true); + lv_textarea_set_align(ta, LV_TEXT_ALIGN_CENTER); + lv_obj_add_style(ta, style_input, 0); + lv_obj_set_style_pad_top(ta, 10, 0); + lv_obj_set_style_text_color(ta, lv_color_hex(0), 0); + lv_textarea_set_text(ta, "0"); + lv_obj_set_style_text_font(ta, &sans_m_24, 0); + lv_obj_set_size(ta, 150, 48); + lv_textarea_set_accepted_chars(ta, "0123456789.-"); + lv_obj_set_style_opa(ta, LV_OPA_TRANSP, LV_PART_CURSOR); + lv_obj_align_to(ta, ta_month, LV_ALIGN_OUT_RIGHT_MID, 10, 0); + lv_obj_add_event_cb(ta, ev_datetime_input, LV_EVENT_CLICKED, NULL); + ta_day = ta; + + /* '维护电话'标题 */ + label = lv_label_create(frame); + text = get_text_from_pool(TID_phone); + lv_label_set_text(label, text); + lv_obj_set_style_text_font(label, &sans_m_24, 0); + lv_obj_set_style_text_color(label, lv_color_hex(0xd0d0d0), 0); + lv_obj_align_to(label, ta_month, LV_ALIGN_OUT_BOTTOM_MID, 0, 20); + + /* '维护电话' */ + ta = lv_textarea_create(frame); + lv_obj_set_user_data(ta, (void *)TA_PHONE); + lv_textarea_set_one_line(ta, true); + lv_textarea_set_align(ta, LV_TEXT_ALIGN_CENTER); + lv_obj_add_style(ta, style_input, 0); + lv_obj_set_style_pad_top(ta, 10, 0); + lv_obj_set_style_text_color(ta, lv_color_hex(0), 0); + lv_obj_set_style_bg_color(ta, lv_color_hex(0xf0f0f0), 0); + lv_textarea_set_text(ta, "0"); + lv_obj_set_style_text_font(ta, &sans_m_24, 0); + lv_obj_set_size(ta, 470, 48); + lv_textarea_set_accepted_chars(ta, "0123456789.-"); + lv_obj_align_to(ta, label, LV_ALIGN_OUT_BOTTOM_MID, 0, 8); + lv_obj_add_event_cb(ta, ev_phone_input, LV_EVENT_CLICKED, NULL); + ta_phone = ta; + + /* '保存' */ + btn = lv_btn_create(frame); + lv_obj_set_size(btn, 150, 48); + lv_obj_add_style(btn, style_button, 0); + lv_obj_set_style_bg_color(btn, lv_color_hex(0xa8a8a8), 0); + lv_obj_align(btn, LV_ALIGN_BOTTOM_MID, 0, -20); + label = lv_label_create(btn); + text = get_text_from_pool(TID_date_save); + lv_label_set_text(label, text); + lv_obj_set_style_text_font(label, &sans_m_24, 0); + lv_obj_set_style_text_color(label, lv_color_hex(0x000000), 0); + lv_obj_align(label, LV_ALIGN_CENTER, 0, 0); + lv_obj_add_event_cb(btn, ev_save, LV_EVENT_CLICKED, NULL); +} + +static void page_init(void) +{ + lv_style_t *style_main = get_project_style(STYLE_PAGE); + + /* 创建页面容器 */ + page = lv_obj_create(lv_scr_act()); + lv_obj_set_size(page, LV_PCT(100), LV_PCT(100)); + lv_obj_add_style(page, style_main, LV_PART_MAIN); + lv_obj_set_style_bg_color(page, lv_color_hex(0x444b5a), 0); +} + +static void page_deinit(void) +{ + if (page != NULL) { + lv_obj_del(page); + page = NULL; + } +} + +static void page_head_init(lv_obj_t *parent) +{ + lv_obj_t *frame; + lv_obj_t *label; + lv_obj_t *btn; + const char *text; + lv_style_t *style_main = get_project_style(STYLE_PAGE); + lv_style_t *style_button = get_project_style(STYLE_BUTTON); + + /* 标题栏背景 */ + frame = lv_obj_create(parent); + lv_obj_set_size(frame, LV_PCT(100), 60); + lv_obj_set_style_bg_color(frame, lv_color_hex(0x586273), 0); + lv_obj_add_style(frame, style_main, LV_PART_MAIN); + lv_obj_set_style_shadow_width(frame, 16, 0); + + lv_obj_t *logo = lv_img_create(frame); + lv_img_set_src(logo, "P:assets/lvgl_logo.png"); + lv_obj_align(logo, LV_ALIGN_LEFT_MID, 15, 0); + + /* 标题栏文字 */ + label = lv_label_create(frame); + text = get_text_from_pool(TID_date_phone); + lv_label_set_text(label, text); + lv_obj_set_style_text_font(label, &sans_r_30, 0); + lv_obj_set_style_text_color(label, lv_color_hex(0xd0d0d0), 0); + lv_obj_align(label, LV_ALIGN_LEFT_MID, 70, 0); + + /* 标题栏返回按钮 */ + btn = lv_btn_create(frame); + lv_obj_set_size(btn, 150, 48); + lv_obj_add_style(btn, style_button, 0); + lv_obj_set_style_bg_color(btn, lv_color_hex(0xa8a8a8), 0); + lv_obj_align(btn, LV_ALIGN_RIGHT_MID, -10, 0); + label = lv_label_create(btn); + text = get_text_from_pool(TID_back); + lv_label_set_text(label, text); + lv_obj_set_style_text_font(label, &sans_m_24, 0); + lv_obj_set_style_text_color(label, lv_color_hex(0x000000), 0); + lv_obj_align(label, LV_ALIGN_CENTER, 0, 0); + lv_obj_add_event_cb(btn, ev_back, LV_EVENT_CLICKED, NULL); + + /* 状态栏背景 */ + frame = lv_obj_create(parent); + lv_obj_set_size(frame, LV_PCT(100), 70); + lv_obj_set_style_bg_color(frame, lv_color_hex(0x586273), 0); + lv_obj_add_style(frame, style_main, LV_PART_MAIN); + lv_obj_align(frame, LV_ALIGN_BOTTOM_MID, 0, 0); + lv_obj_set_style_border_width(frame, 2, 0); + lv_obj_set_style_border_color(frame, lv_color_hex(0xa8a8a8), 0); + lv_obj_set_style_border_side(frame, LV_BORDER_SIDE_TOP, 0); + + /* 状态栏文字 */ + label = lv_label_create(frame); + lv_label_set_text(label, ""); + lv_obj_set_style_text_font(label, &sans_r_18, 0); + lv_obj_set_style_text_color(label, lv_color_hex(0xd0d0d0), 0); + lv_obj_align(label, LV_ALIGN_CENTER, 0, 0); + lbl_status = label; +} + +static void page_body_init(lv_obj_t *parent) +{ + /* 日期设置区 */ + datetime_create(parent); +} + +s32 dealer_open(void *args) +{ + UNUSED(args); + + dprint("[%s]++\n", __func__); + + /* 本地变量初始 */ + params_changed = 0; + + /* 获取参数数据接口 */ + params = get_params_data(); + + /* 获取运行时数据接口 */ + runtime = get_runtime_data(); + + /* 创建页面背景对象 */ + page_init(); + + /* 创建页面背景对象,先创建body对象再创建head对象是为了显示3d效果 */ + page_body_init(page); + + /* 创建页面head对象 */ + page_head_init(page); + + /* 页数刷新 */ + intf_update(); + + /* success */ + last_time = get_current_time(); + + return 0; +} + +void dealer_close(void) +{ + dprint("[%s]++\n", __func__); + page_deinit(); +} + +void dealer_update(void) +{ + if (time_after(get_current_time(), last_time)) { + last_time = get_current_time() + 1000; + } +} + diff --git a/800x480/MK_factory.c b/800x480/MK_factory.c new file mode 100644 index 0000000..cae4a5f --- /dev/null +++ b/800x480/MK_factory.c @@ -0,0 +1,272 @@ +/* + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are + * met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * * Redistributions in binary form must reproduce the above + * copyright notice, this list of conditions and the following disclaimer + * in the documentation and/or other materials provided with the + * distribution. + * * Neither the name of the nor the names of its + * contributors may be used to endorse or promote products derived from + * this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT + * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR + * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT + * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT + * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, + * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY + * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE + * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + * + */ +#include +#include +#include +#include +#include +#include +#include +#include +#include "lvgl/lvgl.h" +#include "MK_macro.h" +#include "MK_types.h" +#include "MK_func.h" + +static lv_obj_t *page = NULL; + +static struct params_data *params; +static struct runtime_data *runtime; +static u32 last_time; + +static void ev_back(lv_event_t *e) +{ + UNUSED(e); + + buzz(); + set_current_window(WM_PREV); +} + +static void ev_motor_type(lv_event_t *e) +{ + lv_obj_t *obj = lv_event_get_target(e); + + buzz(); + if (lv_obj_has_state(obj, LV_STATE_CHECKED)) { + params->motor_type = MOTOR_SERVO; + } + else { + params->motor_type = MOTOR_STEPPER; + } + + params_data_save(); + dprint("motor type: %d\n", params->motor_type); +} + +static void ev_motor_dir(lv_event_t *e) +{ + lv_obj_t *obj = lv_event_get_target(e); + + buzz(); + if (lv_obj_has_state(obj, LV_STATE_CHECKED)) { + params->motor_dir = MOTOR_RIGHT; + } + else { + params->motor_dir = MOTOR_LEFT; + } + + params_data_save(); + dprint("motor dir: %d\n", params->motor_dir); +} + +static void page_init(void) +{ + lv_style_t *style_main = get_project_style(STYLE_PAGE); + + /* 创建页面容器 */ + page = lv_obj_create(lv_scr_act()); + lv_obj_set_size(page, LV_PCT(100), LV_PCT(100)); + lv_obj_add_style(page, style_main, LV_PART_MAIN); + lv_obj_set_style_bg_color(page, lv_color_hex(0x444b5a), 0); +} + +static void page_deinit(void) +{ + if (page != NULL) { + lv_obj_del(page); + page = NULL; + } +} + +static void page_head_init(lv_obj_t *parent) +{ + lv_obj_t *frame; + lv_obj_t *label; + lv_obj_t *btn; + const char *text; + struct tm tm_production; + struct tm tm_purchase; + struct tm *tm_now; + char buf[256]; + lv_style_t *style_main = get_project_style(STYLE_PAGE); + lv_style_t *style_button = get_project_style(STYLE_BUTTON); + + /* 标题栏背景 */ + frame = lv_obj_create(parent); + lv_obj_set_size(frame, LV_PCT(100), 60); + lv_obj_set_style_bg_color(frame, lv_color_hex(0x586273), 0); + lv_obj_add_style(frame, style_main, LV_PART_MAIN); + lv_obj_set_style_shadow_width(frame, 16, 0); + + lv_obj_t *logo = lv_img_create(frame); + lv_img_set_src(logo, "P:assets/lvgl_logo.png"); + lv_obj_align(logo, LV_ALIGN_LEFT_MID, 15, 0); + + /* 标题栏文字 */ + label = lv_label_create(frame); + text = get_text_from_pool(TID_setting); + lv_label_set_text(label, "工厂参数"); + lv_obj_set_style_text_font(label, &sans_r_30, 0); + lv_obj_set_style_text_color(label, lv_color_hex(0xd0d0d0), 0); + lv_obj_align(label, LV_ALIGN_LEFT_MID, 70, 0); + + /* 标题栏返回按钮 */ + btn = lv_btn_create(frame); + lv_obj_set_size(btn, 150, 48); + lv_obj_add_style(btn, style_button, 0); + lv_obj_set_style_bg_color(btn, lv_color_hex(0xa8a8a8), 0); + lv_obj_align(btn, LV_ALIGN_RIGHT_MID, -10, 0); + label = lv_label_create(btn); + text = get_text_from_pool(TID_back); + lv_label_set_text(label, text); + lv_obj_set_style_text_font(label, &sans_m_24, 0); + lv_obj_set_style_text_color(label, lv_color_hex(0x000000), 0); + lv_obj_align(label, LV_ALIGN_CENTER, 0, 0); + lv_obj_add_event_cb(btn, ev_back, LV_EVENT_CLICKED, NULL); + + /* 状态栏背景 */ + frame = lv_obj_create(parent); + lv_obj_set_size(frame, LV_PCT(100), 70); + lv_obj_set_style_bg_color(frame, lv_color_hex(0x586273), 0); + lv_obj_add_style(frame, style_main, LV_PART_MAIN); + lv_obj_align(frame, LV_ALIGN_BOTTOM_MID, 0, 0); + lv_obj_set_style_border_width(frame, 2, 0); + lv_obj_set_style_border_color(frame, lv_color_hex(0xa8a8a8), 0); + lv_obj_set_style_border_side(frame, LV_BORDER_SIDE_TOP, 0); + + /* 状态栏文字 */ + label = lv_label_create(frame); + tm_now = localtime(¶ms->production_date); + memcpy(&tm_production, tm_now, sizeof(struct tm)); + tm_now = localtime(¶ms->purchase_date); + memcpy(&tm_purchase, tm_now, sizeof(struct tm)); + const char *p1 = get_text_from_pool(TID_mfg_date); + const char *p2 = get_text_from_pool(TID_pur_date); + const char *p3 = get_text_from_pool(TID_phone); + sprintf(buf, "%s %04d-%02d-%02d %s %04d-%02d-%02d %s %s", + p1, + tm_production.tm_year + 1900, + tm_production.tm_mon + 1, + tm_production.tm_mday, + p2, + tm_purchase.tm_year + 1900, + tm_purchase.tm_mon + 1, + tm_purchase.tm_mday, + p3, + params->phone); + lv_label_set_text(label, buf); + lv_obj_set_style_text_font(label, &sans_r_18, 0); + lv_obj_set_style_text_color(label, lv_color_hex(0xd0d0d0), 0); + lv_obj_align(label, LV_ALIGN_CENTER, 0, 0); +} + +static void page_body_init(lv_obj_t *parent) +{ + lv_obj_t *label; + lv_obj_t *temp; + lv_style_t *style_label = get_project_style(STYLE_LABEL); + + /* 增加一个'绝对值电机'开关 */ + label = lv_label_create(parent); + lv_obj_add_style(label, style_label, 0); + lv_label_set_text_static(label, "绝对值电机模式:"); + lv_obj_align(label, LV_ALIGN_TOP_LEFT, 20, 90); + lv_obj_t *sw = lv_switch_create(parent); + lv_obj_set_size(sw, 76, 36); + lv_obj_set_style_bg_color(sw, lv_color_hex(0x202020), 0); + lv_obj_align_to(sw, label, LV_ALIGN_OUT_RIGHT_MID, 15, 0); + if (params->motor_type == MOTOR_SERVO) { + lv_obj_add_state(sw, LV_STATE_CHECKED); + } + else { + lv_obj_clear_state(sw, LV_STATE_CHECKED); + } + lv_obj_add_event_cb(sw, ev_motor_type, LV_EVENT_VALUE_CHANGED, NULL); + temp = sw; + + /* 增加一个'电机方向反转'开关 */ + label = lv_label_create(parent); + lv_obj_add_style(label, style_label, 0); + lv_label_set_text_static(label, "电机方向反转:"); + lv_obj_align_to(label, temp, LV_ALIGN_OUT_RIGHT_MID, 40, 0); + sw = lv_switch_create(parent); + lv_obj_set_size(sw, 76, 36); + lv_obj_set_style_bg_color(sw, lv_color_hex(0x202020), 0); + lv_obj_align_to(sw, label, LV_ALIGN_OUT_RIGHT_MID, 15, 0); + if (params->motor_dir == MOTOR_RIGHT) { + lv_obj_add_state(sw, LV_STATE_CHECKED); + } + else { + lv_obj_clear_state(sw, LV_STATE_CHECKED); + } + lv_obj_add_event_cb(sw, ev_motor_dir, LV_EVENT_VALUE_CHANGED, NULL); +} + +s32 factory_open(void *args) +{ + UNUSED(args); + + dprint("[%s]++\n", __func__); + + /* 本地变量初始 */ + + /* 获取参数数据接口 */ + params = get_params_data(); + + /* 获取运行时数据接口 */ + runtime = get_runtime_data(); + + /* 创建页面背景对象 */ + page_init(); + + /* 创建页面背景对象,先创建body对象再创建head对象是为了显示3d效果 */ + page_body_init(page); + + /* 创建页面head对象 */ + page_head_init(page); + + /* success */ + last_time = get_current_time(); + + return 0; +} + +void factory_close(void) +{ + dprint("[%s]++\n", __func__); + page_deinit(); +} + +void factory_update(void) +{ + if (time_after(get_current_time(), last_time)) { + last_time = get_current_time() + 1000; + } +} + diff --git a/800x480/MK_info.c b/800x480/MK_info.c new file mode 100644 index 0000000..596b856 --- /dev/null +++ b/800x480/MK_info.c @@ -0,0 +1,611 @@ +/* + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are + * met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * * Redistributions in binary form must reproduce the above + * copyright notice, this list of conditions and the following disclaimer + * in the documentation and/or other materials provided with the + * distribution. + * * Neither the name of the nor the names of its + * contributors may be used to endorse or promote products derived from + * this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT + * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR + * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT + * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT + * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, + * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY + * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE + * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + * + */ +#include +#include +#include +#include +#include +#include +#include "lvgl/lvgl.h" +#include "MK_macro.h" +#include "MK_types.h" +#include "MK_func.h" + +static lv_obj_t *page = NULL; +static lv_obj_t *ta_year = NULL; +static lv_obj_t *ta_month = NULL; +static lv_obj_t *ta_day = NULL; +static lv_obj_t *lbl_status = NULL; +static lv_obj_t *ta_s1 = NULL; +static lv_obj_t *ta_s2 = NULL; +static lv_obj_t *sys_frame = NULL; + +static struct params_data *params; +static struct runtime_data *runtime; +static u32 last_time; +static s32 params_changed; +static s32 show_hidden; + +static void intf_update(void) +{ + time_t now; + struct tm *tm_now; + struct tm tm_production; + struct tm tm_purchase; + char buf[256]; + + /* 生产日期 */ + now = params->production_date; + tm_now = localtime(&now); + sprintf(buf, "%d", tm_now->tm_year + 1900); + lv_textarea_set_text(ta_year, buf); + sprintf(buf, "%02d", tm_now->tm_mon + 1); + lv_textarea_set_text(ta_month, buf); + sprintf(buf, "%02d", tm_now->tm_mday); + lv_textarea_set_text(ta_day, buf); + + /* 爬行距离 */ + sprintf(buf, "%d", params->crawl_s1); + lv_textarea_set_text(ta_s1, buf); + sprintf(buf, "%d", params->crawl_s2); + lv_textarea_set_text(ta_s2, buf); + + /* 状态栏显示 */ + tm_now = localtime(¶ms->production_date); + memcpy(&tm_production, tm_now, sizeof(struct tm)); + tm_now = localtime(¶ms->purchase_date); + memcpy(&tm_purchase, tm_now, sizeof(struct tm)); + const char *p1 = get_text_from_pool(TID_mfg_date); + const char *p2 = get_text_from_pool(TID_pur_date); + const char *p3 = get_text_from_pool(TID_phone); + sprintf(buf, "%s %04d-%02d-%02d %s %04d-%02d-%02d %s %s", + p1, + tm_production.tm_year + 1900, + tm_production.tm_mon + 1, + tm_production.tm_mday, + p2, + tm_purchase.tm_year + 1900, + tm_purchase.tm_mon + 1, + tm_purchase.tm_mday, + p3, + params->phone); + lv_label_set_text(lbl_status, buf); +} + +static s32 verify_year(const char *val, void *user_data) +{ + s32 v = strtol(val, NULL, 10); + + UNUSED(user_data); + if (v >= 2000 && v < 3000) { + return 1; + } + + return 0; +} + +static s32 verify_month(const char *val, void *user_data) +{ + s32 v = strtol(val, NULL, 10); + + UNUSED(user_data); + if (v > 0 && v <= 12) { + return 1; + } + + return 0; +} + +static s32 verify_day(const char *val, void *user_data) +{ + s32 v = strtol(val, NULL, 10); + + UNUSED(user_data); + + if (v > 0 && v <= 31) { + return 1; + } + + return 0; +} + +static void datetime_value_update(const char *val, void *user_data) +{ + lv_obj_t *ta = (lv_obj_t *)user_data; + s32 ta_id = (s32)lv_obj_get_user_data(ta); + char buf[16]; + s32 v = strtol(val, NULL, 10); + + /* 值设定 */ + switch (ta_id) { + case TA_YEAR: + sprintf(buf, "%d", v); + break; + + case TA_MONTH: + case TA_DAY: + case TA_HOUR: + case TA_MINUTE: + case TA_SECOND: + sprintf(buf, "%02d", v); + break; + + default: + break; + } + + params_changed = 1; + lv_textarea_set_text(ta, buf); +} + +static void production_date_save(void) +{ + time_t now; + struct tm tm_now; + s32 y,m,d; + + const char *p = lv_textarea_get_text(ta_year); + y = strtol(p, NULL, 10); + p = lv_textarea_get_text(ta_month); + m = strtol(p, NULL, 10); + p = lv_textarea_get_text(ta_day); + d = strtol(p, NULL, 10); + + dprint("[production]y=%d, m=%d, d=%d\n", y, m, d); + + tm_now.tm_year = y - 1900; + tm_now.tm_mon = m - 1; + tm_now.tm_mday = d; + tm_now.tm_hour = 0; + tm_now.tm_min = 0; + tm_now.tm_sec = 0; + + now = mktime(&tm_now); + params->production_date = now; + + /* 在设定生产日期时同时设定购机日期, 并将维护电话清空 */ + params->purchase_date = now; + strcpy(params->phone, "00000000000"); +} + +static s32 verify_crawl_s1(const char *val, void *user_data) +{ + s32 v = strtol(val, NULL, 10); + + UNUSED(user_data); + if (v < CRAWL_S1_MIN || v > CRAWL_S1_MAX) { + return 0; + } + + return 1; +} + +static s32 verify_crawl_s2(const char *val, void *user_data) +{ + s32 v = strtol(val, NULL, 10); + + UNUSED(user_data); + if (v < CRAWL_S2_MIN || v > CRAWL_S2_MAX) { + return 0; + } + + return 1; +} + +static void crawl_value_update(const char *val, void *user_data) +{ + lv_obj_t *ta = (lv_obj_t *)user_data; + s32 ta_id = (s32)lv_obj_get_user_data(ta); + char buf[16]; + s32 v = strtol(val, NULL, 10); + + /* 值设定 */ + switch (ta_id) { + case TA_CRAWL_S1: + params->crawl_s1 = v; + break; + + case TA_CRAWL_S2: + params->crawl_s2 = v; + break; + + default: + break; + } + + sprintf(buf, "%d", v); + lv_textarea_set_text(ta, buf); + params_data_save(); +} + +static void ev_back(lv_event_t *e) +{ + UNUSED(e); + + buzz(); + if (params_changed) { + production_date_save(); + params_data_save(); + params_changed = 0; + } + + set_current_window(WM_SETUP); +} + +static void ev_datetime_input(lv_event_t *e) +{ + static struct ime_cb ime_cb; + lv_obj_t *obj = lv_event_get_target(e); + s32 ta_id = (s32)lv_obj_get_user_data(obj); + + memset(&ime_cb, 0, sizeof(struct ime_cb)); + ime_cb.user_data = obj; + switch (ta_id) { + case TA_YEAR: + ime_cb.verify = verify_year; + break; + + case TA_MONTH: + ime_cb.verify = verify_month; + break; + + case TA_DAY: + ime_cb.verify = verify_day; + break; + + default: + break; + } + ime_cb.update = datetime_value_update; + + /* 调用输入框 */ + buzz(); + create_ime(0, 0, &ime_cb); +} + +static void ev_crawl_input(lv_event_t *e) +{ + static struct ime_cb ime_cb; + lv_obj_t *obj = lv_event_get_target(e); + s32 ta_id = (s32)lv_obj_get_user_data(obj); + + memset(&ime_cb, 0, sizeof(struct ime_cb)); + ime_cb.user_data = obj; + switch (ta_id) { + case TA_CRAWL_S1: + ime_cb.verify = verify_crawl_s1; + break; + + case TA_CRAWL_S2: + ime_cb.verify = verify_crawl_s2; + break; + + default: + break; + } + ime_cb.update = crawl_value_update; + + /* 调用输入框 */ + buzz(); + create_ime(0, 0, &ime_cb); +} + +static void ev_save(lv_event_t *e) +{ + UNUSED(e); + + buzz(); + if (params_changed) { + production_date_save(); + params_data_save(); + params_changed = 0; + + /* 刷新页面 */ + intf_update(); + } +} + +static void ev_hidden(lv_event_t *e) +{ + UNUSED(e); + + if (++show_hidden >= 5) { + lv_obj_clear_flag(sys_frame, LV_OBJ_FLAG_HIDDEN); + } +} + +static void datetime_create(lv_obj_t *parent) +{ + lv_obj_t *frame; + lv_obj_t *label; + lv_obj_t *btn; + lv_obj_t *ta; + const char *text; + char buf[260]; + lv_style_t *style_meter = get_project_style(STYLE_METER); + lv_style_t *style_input = get_project_style(STYLE_INPUT); + lv_style_t *style_button = get_project_style(STYLE_BUTTON); + lv_style_t *style_label = get_project_style(STYLE_LABEL); + lv_style_t *style_none = get_project_style(STYLE_NONE); + + /* 背景框 */ + frame = lv_obj_create(parent); + lv_obj_set_size(frame, 760, 310); + lv_obj_add_style(frame, style_meter, 0); + lv_obj_set_style_bg_color(frame, lv_color_hex(0x586273), 0); + lv_obj_set_style_border_width(frame, 2, 0); + lv_obj_set_style_border_color(frame, lv_color_hex(0x808a97), 0); + lv_obj_align(frame, LV_ALIGN_LEFT_MID, 20, -5); + + /* 隐藏项窗口 */ + sys_frame = lv_obj_create(frame); + lv_obj_set_size(sys_frame, 500, 100); + lv_obj_add_style(sys_frame, style_none, 0); + lv_obj_align(sys_frame, LV_ALIGN_BOTTOM_MID, 0, 0); + lv_obj_add_flag(sys_frame, LV_OBJ_FLAG_HIDDEN); + + /* '生产日期'标题 */ + label = lv_label_create(frame); + lv_obj_add_style(label, style_label, 0); + text = get_text_from_pool(TID_production_date); + lv_label_set_text(label, text); + lv_obj_align(label, LV_ALIGN_TOP_MID, 0, 20); + + /* '月' */ + ta = lv_textarea_create(frame); + lv_obj_set_user_data(ta, (void *)TA_MONTH); + lv_textarea_set_one_line(ta, true); + lv_textarea_set_align(ta, LV_TEXT_ALIGN_CENTER); + lv_obj_add_style(ta, style_input, 0); + lv_textarea_set_text(ta, "0"); + lv_obj_set_size(ta, 150, 48); + lv_textarea_set_accepted_chars(ta, "0123456789.-"); + lv_obj_set_style_opa(ta, LV_OPA_TRANSP, LV_PART_CURSOR); + lv_obj_align(ta, LV_ALIGN_TOP_MID, 0, 65); + lv_obj_add_event_cb(ta, ev_datetime_input, LV_EVENT_CLICKED, NULL); + ta_month = ta; + + /* 'å¹´' */ + ta = lv_textarea_create(frame); + lv_obj_set_user_data(ta, (void *)TA_YEAR); + lv_textarea_set_one_line(ta, true); + lv_textarea_set_align(ta, LV_TEXT_ALIGN_CENTER); + lv_obj_add_style(ta, style_input, 0); + lv_textarea_set_text(ta, "0"); + lv_obj_set_size(ta, 150, 48); + lv_textarea_set_accepted_chars(ta, "0123456789.-"); + lv_obj_set_style_opa(ta, LV_OPA_TRANSP, LV_PART_CURSOR); + lv_obj_align_to(ta, ta_month, LV_ALIGN_OUT_LEFT_MID, -10, 0); + lv_obj_add_event_cb(ta, ev_datetime_input, LV_EVENT_CLICKED, NULL); + ta_year = ta; + + /* '日' */ + ta = lv_textarea_create(frame); + lv_obj_set_user_data(ta, (void *)TA_DAY); + lv_textarea_set_one_line(ta, true); + lv_textarea_set_align(ta, LV_TEXT_ALIGN_CENTER); + lv_obj_add_style(ta, style_input, 0); + lv_textarea_set_text(ta, "0"); + lv_obj_set_size(ta, 150, 48); + lv_textarea_set_accepted_chars(ta, "0123456789.-"); + lv_obj_set_style_opa(ta, LV_OPA_TRANSP, LV_PART_CURSOR); + lv_obj_align_to(ta, ta_month, LV_ALIGN_OUT_RIGHT_MID, 10, 0); + lv_obj_add_event_cb(ta, ev_datetime_input, LV_EVENT_CLICKED, NULL); + ta_day = ta; + + /* CRAWL S1 */ + ta = lv_textarea_create(sys_frame); + lv_obj_set_user_data(ta, (void *)TA_CRAWL_S1); + lv_textarea_set_one_line(ta, true); + lv_textarea_set_align(ta, LV_TEXT_ALIGN_CENTER); + lv_obj_add_style(ta, style_input, 0); + lv_textarea_set_text(ta, "0"); + lv_obj_set_size(ta, 200, 48); + lv_textarea_set_accepted_chars(ta, "0123456789.-"); + lv_obj_set_style_opa(ta, LV_OPA_TRANSP, LV_PART_CURSOR); + lv_obj_align(ta, LV_ALIGN_BOTTOM_MID, -135, -20); + lv_obj_add_event_cb(ta, ev_crawl_input, LV_EVENT_CLICKED, NULL); + ta_s1 = ta; + + /* 'CRAWL S1'标题 */ + label = lv_label_create(sys_frame); + lv_obj_add_style(label, style_label, 0); + sprintf(buf, "S1(%d-%d)[%d]:", CRAWL_S1_MIN, CRAWL_S1_MAX, DEFAULT_CRAWL_S1); + lv_label_set_text(label, buf); + lv_obj_align_to(label, ta_s1, LV_ALIGN_OUT_TOP_LEFT, 0, -8); + + /* CRAWL S2 */ + ta = lv_textarea_create(sys_frame); + lv_obj_set_user_data(ta, (void *)TA_CRAWL_S2); + lv_textarea_set_one_line(ta, true); + lv_textarea_set_align(ta, LV_TEXT_ALIGN_CENTER); + lv_obj_add_style(ta, style_input, 0); + lv_textarea_set_text(ta, "0"); + lv_obj_set_size(ta, 200, 48); + lv_textarea_set_accepted_chars(ta, "0123456789.-"); + lv_obj_set_style_opa(ta, LV_OPA_TRANSP, LV_PART_CURSOR); + lv_obj_align(ta, LV_ALIGN_BOTTOM_MID, 135, -20); + lv_obj_add_event_cb(ta, ev_crawl_input, LV_EVENT_CLICKED, NULL); + ta_s2 = ta; + + /* 'CRAWL S2'标题 */ + label = lv_label_create(sys_frame); + lv_obj_add_style(label, style_label, 0); + sprintf(buf, "S2(%d-%d)[%d]:", CRAWL_S2_MIN, CRAWL_S2_MAX, DEFAULT_CRAWL_S2); + lv_label_set_text(label, buf); + lv_obj_align_to(label, ta_s2, LV_ALIGN_OUT_TOP_LEFT, 0, -8); + + /* '保存' */ + btn = lv_btn_create(frame); + lv_obj_set_size(btn, 150, 48); + lv_obj_add_style(btn, style_button, 0); + lv_obj_set_style_bg_color(btn, lv_color_hex(0xa8a8a8), 0); + lv_obj_align(btn, LV_ALIGN_TOP_MID, 0, 140); + label = lv_label_create(btn); + text = get_text_from_pool(TID_date_save); + lv_label_set_text(label, text); + lv_obj_align(label, LV_ALIGN_CENTER, 0, 0); + lv_obj_add_event_cb(btn, ev_save, LV_EVENT_CLICKED, NULL); +} + +static void page_init(void) +{ + lv_style_t *style_main = get_project_style(STYLE_PAGE); + + /* 创建页面容器 */ + page = lv_obj_create(lv_scr_act()); + lv_obj_set_size(page, LV_PCT(100), LV_PCT(100)); + lv_obj_add_style(page, style_main, LV_PART_MAIN); + lv_obj_set_style_bg_color(page, lv_color_hex(0x444b5a), 0); +} + +static void page_deinit(void) +{ + if (page != NULL) { + lv_obj_del(page); + page = NULL; + } +} + +static void page_head_init(lv_obj_t *parent) +{ + lv_obj_t *frame; + lv_obj_t *label; + lv_obj_t *btn; + const char *text; + lv_style_t *style_main = get_project_style(STYLE_PAGE); + lv_style_t *style_button = get_project_style(STYLE_BUTTON); + + /* 标题栏背景 */ + frame = lv_obj_create(parent); + lv_obj_set_size(frame, LV_PCT(100), 60); + lv_obj_set_style_bg_color(frame, lv_color_hex(0x586273), 0); + lv_obj_add_style(frame, style_main, LV_PART_MAIN); + lv_obj_set_style_shadow_width(frame, 16, 0); + + lv_obj_t *logo = lv_img_create(frame); + lv_img_set_src(logo, "P:assets/lvgl_logo.png"); + lv_obj_align(logo, LV_ALIGN_LEFT_MID, 15, 0); + lv_obj_add_flag(logo, LV_OBJ_FLAG_CLICKABLE); + lv_obj_add_event_cb(logo, ev_hidden, LV_EVENT_CLICKED, NULL); + + /* 标题栏文字 */ + label = lv_label_create(frame); + text = get_text_from_pool(TID_setup_info); + lv_label_set_text(label, text); + lv_obj_set_style_text_font(label, &sans_r_30, 0); + lv_obj_set_style_text_color(label, lv_color_hex(0xd0d0d0), 0); + lv_obj_align(label, LV_ALIGN_LEFT_MID, 70, 0); + + /* 标题栏返回按钮 */ + btn = lv_btn_create(frame); + lv_obj_set_size(btn, 150, 48); + lv_obj_add_style(btn, style_button, 0); + lv_obj_set_style_bg_color(btn, lv_color_hex(0xa8a8a8), 0); + lv_obj_align(btn, LV_ALIGN_RIGHT_MID, -10, 0); + label = lv_label_create(btn); + text = get_text_from_pool(TID_back); + lv_label_set_text(label, text); + lv_obj_set_style_text_font(label, &sans_m_24, 0); + lv_obj_set_style_text_color(label, lv_color_hex(0x000000), 0); + lv_obj_align(label, LV_ALIGN_CENTER, 0, 0); + lv_obj_add_event_cb(btn, ev_back, LV_EVENT_CLICKED, NULL); + + /* 状态栏背景 */ + frame = lv_obj_create(parent); + lv_obj_set_size(frame, LV_PCT(100), 70); + lv_obj_set_style_bg_color(frame, lv_color_hex(0x586273), 0); + lv_obj_add_style(frame, style_main, LV_PART_MAIN); + lv_obj_align(frame, LV_ALIGN_BOTTOM_MID, 0, 0); + lv_obj_set_style_border_width(frame, 2, 0); + lv_obj_set_style_border_color(frame, lv_color_hex(0xa8a8a8), 0); + lv_obj_set_style_border_side(frame, LV_BORDER_SIDE_TOP, 0); + + /* 状态栏文字 */ + label = lv_label_create(frame); + lv_label_set_text(label, ""); + lv_obj_set_style_text_font(label, &sans_r_18, 0); + lv_obj_set_style_text_color(label, lv_color_hex(0xd0d0d0), 0); + lv_obj_align(label, LV_ALIGN_CENTER, 0, 0); + lbl_status = label; +} + +static void page_body_init(lv_obj_t *parent) +{ + /* 日期设置区 */ + datetime_create(parent); +} + +s32 info_open(void *args) +{ + UNUSED(args); + + dprint("[%s]++\n", __func__); + + /* 本地变量初始 */ + params_changed = 0; + show_hidden = 0; + + /* 获取参数数据接口 */ + params = get_params_data(); + + /* 获取运行时数据接口 */ + runtime = get_runtime_data(); + + /* 创建页面背景对象 */ + page_init(); + + /* 创建页面背景对象,先创建body对象再创建head对象是为了显示3d效果 */ + page_body_init(page); + + /* 创建页面head对象 */ + page_head_init(page); + + /* 页数刷新 */ + intf_update(); + + /* success */ + last_time = get_current_time(); + + return 0; +} + +void info_close(void) +{ + dprint("[%s]++\n", __func__); + page_deinit(); +} + +void info_update(void) +{ + if (time_after(get_current_time(), last_time)) { + last_time = get_current_time() + 1000; + } +} + diff --git a/800x480/MK_main.c b/800x480/MK_main.c new file mode 100644 index 0000000..9024264 --- /dev/null +++ b/800x480/MK_main.c @@ -0,0 +1,472 @@ +/* + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are + * met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * * Redistributions in binary form must reproduce the above + * copyright notice, this list of conditions and the following disclaimer + * in the documentation and/or other materials provided with the + * distribution. + * * Neither the name of the nor the names of its + * contributors may be used to endorse or promote products derived from + * this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT + * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR + * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT + * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT + * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, + * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY + * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE + * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + * + */ +#include +#include "lvgl/lvgl.h" +#include "MK_macro.h" +#include "MK_types.h" +#include "MK_func.h" + +static lv_obj_t *dialog = NULL; + +static s32 current_window; +static s32 prev_window; +static s32 emergency_stop; +static s32 motor_malfunction; +static s32 mcu_malfunction; +static s32 error_no; +static s32 comm_error; + +static struct wm_info windows[WM_MAX] = { + { + .id = WM_SINGLE, + .title = {"Mode Selection", "模式选择"}, + .icon = {"P:assets/icon-mode-gray.png", + "P:assets/icon-mode-blue.png"}, + .focus = "P:assets/navi-checked.png", + .rect = {0, 99, 161, 70}, + .icon_ofs = 29, + .title_ofs = 60, + .handle = NULL, + .checked = 0, + .open = single_open, + .close = single_close, + .update = single_update, + }, + { + .id = WM_TUTORIAL, + .title = {"Pump set", "药泵设置"}, + .icon = {"P:assets/icon-setup-gray.png", + "P:assets/icon-setup-blue.png"}, + .focus = "P:assets/navi-checked.png", + .rect = {0, 337, 161, 70}, + .icon_ofs = 30, + .title_ofs = 60, + .handle = NULL, + .checked = 0, + .open = tutorial_open, + .close = tutorial_close, + .update = tutorial_update, + }, + { + .id = WM_WIRELESS, + .title = {"Calibration", "水质校准"}, + .icon = {"P:assets/icon-calibrate-gray.png", + "P:assets/icon-calibrate-blue.png"}, + .focus = "P:assets/navi-checked.png", + .rect = {0, 421, 161, 70}, + .icon_ofs = 26, + .title_ofs = 60, + .handle = NULL, + .checked = 0, + .open = wireless_open, + .close = wireless_close, + .update = wireless_update, + }, + { + .id = WM_BATCH, + .title = {"Selection criteria", "水质标准"}, + .icon = {"P:assets/icon-standard-gray.png", + "P:assets/icon-standard-blue.png"}, + .focus = "P:assets/navi-checked.png", + .rect = {0, 254, 161, 70}, + .icon_ofs = 30, + .title_ofs = 60, + .handle = NULL, + .checked = 0, + .open = batch_open, + .close = batch_close, + .update = batch_update, + }, + { + .id = WM_ORIGIN, + .title = {"Data state", "水质状态"}, + .icon = {"P:assets/icon-state-gray.png", + "P:assets/icon-state-blue.png"}, + .focus = "P:assets/navi-checked.png", + .rect = {0, 177, 161, 70}, + .icon_ofs = 28, + .title_ofs = 60, + .handle = NULL, + .checked = 0, + .open = origin_open, + .close = origin_close, + .update = origin_update, + }, + { + .id = WM_SETTING, + .title = {"Settings", "系统设置"}, + .icon = {"P:assets/icon-system-gray.png", + "P:assets/icon-system-blue.png"}, + .focus = "P:assets/navi-checked.png", + .rect = {0, 504, 161, 70}, + .icon_ofs = 28, + .title_ofs = 60, + .handle = NULL, + .checked = 0, + .open = setting_open, + .close = setting_close, + .update = setting_update, + }, + { + .id = WM_COMPENSATION, + .title = {"Settings", "系统设置"}, + .icon = {"P:assets/icon-system-gray.png", + "P:assets/icon-system-blue.png"}, + .focus = "P:assets/navi-checked.png", + .rect = {0, 504, 161, 70}, + .icon_ofs = 28, + .title_ofs = 60, + .handle = NULL, + .checked = 0, + .open = compensation_open, + .close = compensation_close, + .update = compensation_update, + }, + { + .id = WM_SETUP, + .title = {"Settings", "系统设置"}, + .icon = {"P:assets/icon-system-gray.png", + "P:assets/icon-system-blue.png"}, + .focus = "P:assets/navi-checked.png", + .rect = {0, 504, 161, 70}, + .icon_ofs = 28, + .title_ofs = 60, + .handle = NULL, + .checked = 0, + .open = setup_open, + .close = setup_close, + .update = setup_update, + }, + { + .id = WM_SYSTEM, + .title = {"Settings", "系统设置"}, + .icon = {"P:assets/icon-system-gray.png", + "P:assets/icon-system-blue.png"}, + .focus = "P:assets/navi-checked.png", + .rect = {0, 504, 161, 70}, + .icon_ofs = 28, + .title_ofs = 60, + .handle = NULL, + .checked = 0, + .open = system_open, + .close = system_close, + .update = system_update, + }, + { + .id = WM_INFO, + .title = {"Settings", "系统设置"}, + .icon = {"P:assets/icon-system-gray.png", + "P:assets/icon-system-blue.png"}, + .focus = "P:assets/navi-checked.png", + .rect = {0, 504, 161, 70}, + .icon_ofs = 28, + .title_ofs = 60, + .handle = NULL, + .checked = 0, + .open = info_open, + .close = info_close, + .update = info_update, + }, + { + .id = WM_DEALER, + .title = {"Settings", "系统设置"}, + .icon = {"P:assets/icon-system-gray.png", + "P:assets/icon-system-blue.png"}, + .focus = "P:assets/navi-checked.png", + .rect = {0, 504, 161, 70}, + .icon_ofs = 28, + .title_ofs = 60, + .handle = NULL, + .checked = 0, + .open = dealer_open, + .close = dealer_close, + .update = dealer_update, + }, + { + .id = WM_CUSTOM, + .title = {"Settings", "系统设置"}, + .icon = {"P:assets/icon-system-gray.png", + "P:assets/icon-system-blue.png"}, + .focus = "P:assets/navi-checked.png", + .rect = {0, 504, 161, 70}, + .icon_ofs = 28, + .title_ofs = 60, + .handle = NULL, + .checked = 0, + .open = custom_open, + .close = custom_close, + .update = custom_update, + }, + { + .id = WM_FACTORY, + .title = {"Settings", "系统设置"}, + .icon = {"P:assets/icon-system-gray.png", + "P:assets/icon-system-blue.png"}, + .focus = "P:assets/navi-checked.png", + .rect = {0, 504, 161, 70}, + .icon_ofs = 28, + .title_ofs = 60, + .handle = NULL, + .checked = 0, + .open = factory_open, + .close = factory_close, + .update = factory_update, + }, + { + .id = WM_TESTER, + .title = {"Settings", "系统设置"}, + .icon = {"P:assets/icon-system-gray.png", + "P:assets/icon-system-blue.png"}, + .focus = "P:assets/navi-checked.png", + .rect = {0, 504, 161, 70}, + .icon_ofs = 28, + .title_ofs = 60, + .handle = NULL, + .checked = 0, + .open = tester_open, + .close = tester_close, + .update = tester_update, + }, +}; + +static void show_warning(s32 id, s32 visible) +{ + const char *text; + char buf[260]; + + if (dialog != NULL) { + lv_obj_del(dialog); + dialog = NULL; + + /* 取消屏幕独占模式 */ + lv_obj_clear_flag(lv_layer_top(), LV_OBJ_FLAG_CLICKABLE); + } + + /* 创建提示窗口并显示提示内容 */ + if (visible) { + lv_obj_add_flag(lv_layer_top(), LV_OBJ_FLAG_CLICKABLE); + dialog = lv_obj_create(lv_layer_top()); + lv_obj_set_size(dialog, 600, 250); + lv_obj_set_style_bg_color(dialog, lv_color_hex(0xff0000), 0); + lv_obj_align(dialog, LV_ALIGN_CENTER, 0, 0); + lv_obj_t *label = lv_label_create(dialog); + lv_obj_set_style_text_font(label, &sans_r_30, 0); + lv_obj_set_style_text_letter_space(label, 4, 0); + lv_obj_set_style_text_line_space(label, 20, 0); + lv_obj_set_style_text_align(label, LV_TEXT_ALIGN_CENTER, 0); + switch (id) { + case WARN_STOP: + text = get_text_from_pool(TID_emergency); + lv_label_set_text_static(label, text); + break; + + case WARN_MOTOR: + text = get_text_from_pool(TID_motor); + lv_label_set_text_static(label, text); + break; + + case WARN_COMM: + text = "单片机通讯异常, 请检查单片机程序\n是否正确烧录!"; + lv_label_set_text_static(label, text); + break; + + case WARN_MCU: + default: + text = get_text_from_pool(TID_mcu); + sprintf(buf, "%s(%02X)!", text, error_no); + lv_label_set_text(label, buf); + break; + } + lv_obj_set_style_text_color(label, lv_color_hex(0xffffff), 0); + lv_obj_align(label, LV_ALIGN_CENTER, 0, 0); + } +} + +void set_current_window(s32 new_window) +{ + const struct wm_info *old_win = NULL; + const struct wm_info *new_win; + + assert(new_window < COUNTOF(windows)); + + dprint("current_window=%d, new_window=%d\n", current_window, new_window); + if (current_window == new_window) { + return; + } + + if (new_window == WM_PREV) { + new_window = prev_window; + } + + if (current_window != WM_NONE) { + old_win = &windows[current_window]; + } + new_win = &windows[new_window]; + + /* 关闭旧窗口 */ + if (old_win != NULL && old_win->close != NULL) { + old_win->close(); + } + + /* 打开新窗口 */ + if (new_win->open != NULL) { + new_win->open(NULL); + } + + prev_window = current_window; + current_window = new_window; +} + +s32 main_init(void) +{ + /* 本地变量初始 */ + current_window = WM_NONE; + prev_window = WM_NONE; + emergency_stop = 0; + motor_malfunction = 0; + mcu_malfunction = 0; + comm_error = 0; + + /* 设定当前运行窗口 */ + set_current_window(WM_DEFAULT); + check_keypress(KEY_X1); /* 上电后会有一次按键按下事件?*/ + dprint("set_current_window to default.\n"); + + return 0; +} + +void main_deinit(void) +{ + if (current_window != WM_NONE) { + const struct wm_info *wm = &windows[current_window]; + if (wm->close != NULL) { + wm->close(); + } + } +} + +void main_update(void) +{ +#if 1 // 调试临时禁止通讯异常检测, by franki + + /* 与单片机通讯异常检测 */ + if (comm_error) { + if (get_motor_status()) { + comm_error = 0; + + /* 取消通讯异常提示 */ + show_warning(WARN_COMM, FALSE); + } + } + else { + if (!get_motor_status()) { + comm_error = 1; + + /* 显示通讯异常提示 */ + show_warning(WARN_COMM, TRUE); + } + } + if (comm_error) { + return; + } +#endif + + /* 检测急停机械按钮,必需手动解除 */ + if (emergency_stop) { + if (!get_xinput_state(KEY_X3)) { + emergency_stop = 0; + + /* 取消急停状态提示 */ + show_warning(WARN_STOP, FALSE); + } + } + else { + if (get_xinput_state(KEY_X3)) { + emergency_stop = 1; + + /* 停止电机驱动 */ + buzz(); + motor_terminate(); + + /* 显示急停状态提示,同时清除电机报警状态和行程开关报警状态 + * (如果存在) */ + motor_malfunction = 0; + mcu_malfunction = 0; + show_warning(WARN_STOP, TRUE); + } + } + if (emergency_stop) { + return; + } + + /* 检测电机报警 */ + if (!motor_malfunction) { + if (get_xinput_state(KEY_X2)) { + motor_malfunction = 1; + + /* 停止电机驱动 */ + buzz(); + motor_terminate(); + + /* 显示电机报警提示框 */ + show_warning(WARN_MOTOR, TRUE); + } + } + else { + return; + } + + /* 行程开关错误 */ + if (!mcu_malfunction) { + error_no = get_mcu_error_status(); + if (error_no != 0) { + mcu_malfunction = 1; + + /* 报警并显示提示 */ + buzz(); + motor_terminate(); + + /* 显示行程开关报警提示框 */ + show_warning(WARN_MCU, TRUE); + } + } + else { + return; + } + + /* 运行子窗口的update过程 */ + assert(current_window < COUNTOF(windows)); + if (current_window != WM_NONE) { + const struct wm_info *wm = &windows[current_window]; + if (wm->update != NULL) { + wm->update(); + } + } +} + diff --git a/800x480/MK_origin.c b/800x480/MK_origin.c new file mode 100644 index 0000000..fb17e94 --- /dev/null +++ b/800x480/MK_origin.c @@ -0,0 +1,594 @@ +/* + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are + * met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * * Redistributions in binary form must reproduce the above + * copyright notice, this list of conditions and the following disclaimer + * in the documentation and/or other materials provided with the + * distribution. + * * Neither the name of the nor the names of its + * contributors may be used to endorse or promote products derived from + * this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT + * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR + * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT + * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT + * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, + * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY + * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE + * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + * + */ +#include +#include +#include +#include +#include +#include +#include "lvgl/lvgl.h" +#include "MK_macro.h" +#include "MK_types.h" +#include "MK_func.h" + +static lv_obj_t *page = NULL; +static lv_obj_t *lbl_time = NULL; +//static lv_obj_t *ta_min = NULL; +//static lv_obj_t *ta_max = NULL; +//static lv_obj_t *ta_curpos = NULL; +static lv_obj_t *ta_origin = NULL; +static lv_obj_t *ta_wireless = NULL; + +static struct params_data *params; +static struct runtime_data *runtime; +static struct comp_data *comp; +static u32 last_time; +//static s32 params_changed; +static s32 last_position; + +static void update_datetime(void) +{ + s32 lang; + char buffer[260] = {0}; + + lang = get_language(); + encode_datetime_by_lang(lang, buffer); + lv_label_set_text(lbl_time, buffer); +} + +static void intf_update(void) +{ + char buf[16]; + + /* 原点位置 */ + sprintf(buf, "%.1f", runtime->origin / STORE_RATE); + lv_textarea_set_text(ta_origin, buf); +} + +static void origin_value_update(const char *val, void *user_data) +{ + UNUSED(user_data); + + /* 同时设定设原点时电机的绝对位置作为用户原点位置 */ + comp->offset = get_current_pulse_count() - comp->origin[0].pulse; + dprint("comp offset: %d\n", comp->offset); + + /* 值设定 */ + s32 v = strtof(val, NULL) * STORE_RATE; + params->origin = v; + if (params->diagonal) { + runtime->origin = params->origin + runtime->target_comp; + } + else { + runtime->origin = params->origin; + } + runtime->fixed = runtime->origin; + runtime->min = runtime->origin; + runtime->max = params->max + runtime->origin; + intf_update(); + + /* 保存原点参数 */ + params_data_save(); + comp_data_save(); + comp_data_recalc(); +} + +s32 verify_wlid(const char *val, void *user_data) +{ + s32 v = strtol(val, NULL, 10); + + UNUSED(user_data); + if (v < 1 || v > 99) { + return 0; + } + + return 1; +} + +static void wlid_value_update(const char *val, void *user_data) +{ + char buf[16]; + lv_obj_t *ta = (lv_obj_t *)user_data; + + /* 值设定 */ + s32 v = strtol(val, NULL, 10); + sprintf(buf, "%d", v); + lv_textarea_set_text(ta, buf); + + /* 保存 */ + params->wireless_id = v; + runtime->wireless_changed = v; + params_data_save(); + +// params_changed = 1; +} + +static void invoke_window_update(const char *val, void *user_data) +{ + s32 wid = (s32)user_data; + + UNUSED(val); + set_current_window(wid); +} + +static s32 verify_level2_pwd(const char *val, void *user_data) +{ + s32 i; + + UNUSED(user_data); + for (i = LEVEL2; i < LEVEL_MAX; ++i) { + if (strncmp(val + 1, params->passwd[i], PWD_MAX) == 0) { + return 1; + } + } + + return 0; +} + +static s32 verify_level3_pwd(const char *val, void *user_data) +{ + s32 i; + + UNUSED(user_data); + for (i = LEVEL3; i < LEVEL_MAX; ++i) { + if (strncmp(val + 1, params->passwd[i], PWD_MAX) == 0) { + return 1; + } + } + + return 0; +} + +static void ev_back(lv_event_t *e) +{ + UNUSED(e); + + buzz(); + set_current_window(WM_SINGLE); +} + +static void ev_date_and_phone(lv_event_t *e) +{ + static struct ime_cb ime_cb; + lv_obj_t *obj = lv_event_get_target(e); + + memset(&ime_cb, 0, sizeof(struct ime_cb)); + ime_cb.user_data = lv_obj_get_user_data(obj); + ime_cb.pwd_mode = 1; + ime_cb.verify = verify_level3_pwd; + ime_cb.update = invoke_window_update; + + /* 调用输入框 */ + buzz(); + create_ime(runtime->min / STORE_RATE, runtime->max / STORE_RATE, &ime_cb); +} + +static void ev_motor(lv_event_t *e) +{ + static struct ime_cb ime_cb; + lv_obj_t *obj = lv_event_get_target(e); + + memset(&ime_cb, 0, sizeof(struct ime_cb)); + ime_cb.user_data = lv_obj_get_user_data(obj); + ime_cb.pwd_mode = 1; + ime_cb.verify = verify_level2_pwd; + ime_cb.update = invoke_window_update; + + /* 调用输入框 */ + buzz(); + create_ime(runtime->min / STORE_RATE, runtime->max / STORE_RATE, &ime_cb); +} + +static void ev_origin(lv_event_t *e) +{ + static struct ime_cb ime_cb; + lv_obj_t *obj = lv_event_get_target(e); + + memset(&ime_cb, 0, sizeof(struct ime_cb)); + ime_cb.user_data = obj; + ime_cb.update = origin_value_update; + + /* 调用输入框 */ + buzz(); + create_ime(runtime->min / STORE_RATE, runtime->max / STORE_RATE, &ime_cb); +} + +static void ev_wlid(lv_event_t *e) +{ + static struct ime_cb ime_cb; + lv_obj_t *obj = lv_event_get_target(e); + + memset(&ime_cb, 0, sizeof(struct ime_cb)); + ime_cb.user_data = obj; + ime_cb.verify = verify_wlid; + ime_cb.update = wlid_value_update; + + /* 调用输入框 */ + buzz(); + create_ime(runtime->min / STORE_RATE, runtime->max / STORE_RATE, &ime_cb); +} + +static void ev_gohome(lv_event_t *e) +{ + lv_obj_t *obj = lv_event_get_target(e); + + buzz(); + motor_reset(); + lv_obj_set_style_bg_color(obj, lv_color_hex(0x00a5ff), 0); +} + +static void ev_auto_start(lv_event_t *e) +{ + lv_obj_t *obj = lv_event_get_target(e); + + buzz(); + if (lv_obj_has_state(obj, LV_STATE_CHECKED)) { + params->auto_start = 1; + } + else { + params->auto_start = 0; + } + params_data_save(); +} + +static void create_origin_area(lv_obj_t *parent) +{ + lv_obj_t *frame; + lv_obj_t *label; + lv_obj_t *btn; + lv_obj_t *ta; + const char *text; + char buf[64]; + lv_style_t *style_meter = get_project_style(STYLE_METER); + lv_style_t *style_input = get_project_style(STYLE_INPUT); + lv_style_t *style_button = get_project_style(STYLE_BUTTON); + + /* 背景框 */ + frame = lv_obj_create(parent); + lv_obj_set_size(frame, 370, 310); + lv_obj_add_style(frame, style_meter, 0); + lv_obj_set_style_bg_color(frame, lv_color_hex(0x586273), 0); + lv_obj_set_style_border_width(frame, 2, 0); + lv_obj_set_style_border_color(frame, lv_color_hex(0x808a97), 0); + lv_obj_align(frame, LV_ALIGN_LEFT_MID, 20, -5); + + /* '模块ID'标题 */ + label = lv_label_create(frame); + text = get_text_from_pool(TID_wireless_id); + lv_label_set_text(label, text); + lv_obj_set_style_text_font(label, &sans_m_24, 0); + lv_obj_set_style_text_color(label, lv_color_hex(0xd0d0d0), 0); + lv_obj_align(label, LV_ALIGN_TOP_LEFT, 20, 20); + + /* '模块ID'值 */ + ta = lv_textarea_create(frame); + lv_textarea_set_one_line(ta, true); + lv_textarea_set_align(ta, LV_TEXT_ALIGN_CENTER); + lv_obj_add_style(ta, style_input, 0); + lv_obj_set_style_pad_top(ta, 10, 0); + lv_obj_set_style_text_color(ta, lv_color_hex(0), 0); + sprintf(buf, "%d", params->wireless_id); + lv_textarea_set_text(ta, buf); + lv_obj_set_style_text_font(ta, &sans_m_24, 0); + lv_obj_set_size(ta, 320, 48); + lv_textarea_set_accepted_chars(ta, "0123456789"); + lv_obj_set_style_opa(ta, LV_OPA_TRANSP, LV_PART_CURSOR); + lv_obj_align_to(ta, label, LV_ALIGN_OUT_BOTTOM_LEFT, 0, 8); + lv_obj_add_event_cb(ta, ev_wlid, LV_EVENT_CLICKED, NULL); + ta_wireless = ta; + + /* '原点位置设定'标题 */ + label = lv_label_create(frame); + text = get_text_from_pool(TID_origin_set); + lv_label_set_text(label, text); + lv_obj_set_style_text_font(label, &sans_m_24, 0); + lv_obj_set_style_text_color(label, lv_color_hex(0xd0d0d0), 0); + lv_obj_align_to(label, ta_wireless, LV_ALIGN_OUT_BOTTOM_LEFT, 0, 20); + + /* '原点位置设定'值 */ + ta = lv_textarea_create(frame); + lv_textarea_set_one_line(ta, true); + lv_textarea_set_align(ta, LV_TEXT_ALIGN_CENTER); + lv_obj_add_style(ta, style_input, 0); + lv_obj_set_style_pad_top(ta, 10, 0); + lv_obj_set_style_text_color(ta, lv_color_hex(0), 0); + lv_textarea_set_text(ta, "0"); + lv_obj_set_style_text_font(ta, &sans_m_24, 0); + lv_obj_set_size(ta, 320, 48); + lv_textarea_set_accepted_chars(ta, "0123456789.-"); + lv_obj_set_style_opa(ta, LV_OPA_TRANSP, LV_PART_CURSOR); + lv_obj_align_to(ta, label, LV_ALIGN_OUT_BOTTOM_LEFT, 0, 8); + lv_obj_add_event_cb(ta, ev_origin, LV_EVENT_CLICKED, NULL); + ta_origin = ta; + + /* 回原点 */ + btn = lv_btn_create(frame); + lv_obj_set_size(btn, 150, 48); + lv_obj_add_style(btn, style_button, 0); + lv_obj_set_style_bg_color(btn, lv_color_hex(0xa8a8a8), 0); + lv_obj_align(btn, LV_ALIGN_BOTTOM_MID, 0, -25); + label = lv_label_create(btn); + text = get_text_from_pool(TID_gohome); + lv_label_set_text(label, text); + lv_obj_set_style_text_font(label, &sans_m_24, 0); + lv_obj_set_style_text_color(label, lv_color_hex(0x000000), 0); + lv_obj_align(label, LV_ALIGN_CENTER, 0, 0); + lv_obj_add_event_cb(btn, ev_gohome, LV_EVENT_CLICKED, NULL); +} + +static void create_button_area(lv_obj_t *parent) +{ + lv_obj_t *frame; + lv_obj_t *label; + lv_obj_t *btn; + lv_obj_t *temp; + const char *text; + lv_style_t *style_meter = get_project_style(STYLE_METER); + lv_style_t *style_button = get_project_style(STYLE_BUTTON); + lv_style_t *style_label = get_project_style(STYLE_LABEL); + + /* 背景框 */ + frame = lv_obj_create(parent); + lv_obj_set_size(frame, 370, 310); + lv_obj_add_style(frame, style_meter, 0); + lv_obj_set_style_bg_color(frame, lv_color_hex(0x586273), 0); + lv_obj_set_style_border_width(frame, 2, 0); + lv_obj_set_style_border_color(frame, lv_color_hex(0x808a97), 0); + lv_obj_align(frame, LV_ALIGN_RIGHT_MID, -20, -5); + + /* 购机日期和维护电话 */ + btn = lv_btn_create(frame); + lv_obj_set_user_data(btn, (void *)WM_DEALER); + lv_obj_set_size(btn, 280, 48); + lv_obj_add_style(btn, style_button, 0); + lv_obj_set_style_bg_color(btn, lv_color_hex(0xa8a8a8), 0); + lv_obj_align(btn, LV_ALIGN_TOP_MID, 0, 20); + label = lv_label_create(btn); + text = get_text_from_pool(TID_date_phone); + lv_label_set_text(label, text); + lv_obj_set_style_text_font(label, &sans_m_24, 0); + lv_obj_set_style_text_color(label, lv_color_hex(0x000000), 0); + lv_obj_align(label, LV_ALIGN_TOP_MID, 0, 0); + lv_obj_add_event_cb(btn, ev_date_and_phone, LV_EVENT_CLICKED, NULL); + temp = btn; + + /* 电机参数 */ + btn = lv_btn_create(frame); + lv_obj_set_user_data(btn, (void *)WM_SETTING); + lv_obj_set_size(btn, 280, 48); + lv_obj_add_style(btn, style_button, 0); + lv_obj_set_style_bg_color(btn, lv_color_hex(0xa8a8a8), 0); + lv_obj_align_to(btn, temp, LV_ALIGN_OUT_BOTTOM_MID, 0, 20); + label = lv_label_create(btn); + text = get_text_from_pool(TID_motor_params); + lv_label_set_text(label, text); + lv_obj_set_style_text_font(label, &sans_m_24, 0); + lv_obj_set_style_text_color(label, lv_color_hex(0x000000), 0); + lv_obj_align(label, LV_ALIGN_CENTER, 0, 0); + lv_obj_add_event_cb(btn, ev_motor, LV_EVENT_CLICKED, NULL); + + /* 增加一个'自动启动运行'开关 */ + lv_obj_t *sw = lv_switch_create(frame); + lv_obj_set_size(sw, 76, 36); + lv_obj_set_style_bg_color(sw, lv_color_hex(0x202020), 0); + lv_obj_align(sw, LV_ALIGN_BOTTOM_RIGHT, -20, -20); + if (params->auto_start) { + lv_obj_add_state(sw, LV_STATE_CHECKED); + } + else { + lv_obj_clear_state(sw, LV_STATE_CHECKED); + } + lv_obj_add_event_cb(sw, ev_auto_start, LV_EVENT_VALUE_CHANGED, NULL); + label = lv_label_create(parent); + lv_obj_add_style(label, style_label, 0); + text = get_text_from_pool(TID_diagonal); + lv_label_set_text_static(label, "自动启动运行:"); + lv_obj_align_to(label, sw, LV_ALIGN_OUT_LEFT_MID, -10, 0); +} + +static void page_init(void) +{ + lv_style_t *style_main = get_project_style(STYLE_PAGE); + + /* 创建页面容器 */ + page = lv_obj_create(lv_scr_act()); + lv_obj_set_size(page, LV_PCT(100), LV_PCT(100)); + lv_obj_add_style(page, style_main, LV_PART_MAIN); + lv_obj_set_style_bg_color(page, lv_color_hex(0x444b5a), 0); +} + +static void page_deinit(void) +{ + if (page != NULL) { + lv_obj_del(page); + page = NULL; + } +} + +static void page_head_init(lv_obj_t *parent) +{ + lv_obj_t *frame; + lv_obj_t *label; + lv_obj_t *btn; + const char *text; + struct tm tm_production; + struct tm tm_purchase; + struct tm *tm_now; + char buf[256]; + lv_style_t *style_main = get_project_style(STYLE_PAGE); + lv_style_t *style_button = get_project_style(STYLE_BUTTON); + + /* 标题栏背景 */ + frame = lv_obj_create(parent); + lv_obj_set_size(frame, LV_PCT(100), 60); + lv_obj_set_style_bg_color(frame, lv_color_hex(0x586273), 0); + lv_obj_add_style(frame, style_main, LV_PART_MAIN); + lv_obj_set_style_shadow_width(frame, 16, 0); + + lv_obj_t *logo = lv_img_create(frame); + lv_img_set_src(logo, "P:assets/lvgl_logo.png"); + lv_obj_align(logo, LV_ALIGN_LEFT_MID, 15, 0); + + /* 标题栏文字 */ + label = lv_label_create(frame); + text = get_text_from_pool(TID_origin); + lv_label_set_text(label, text); + lv_obj_set_style_text_font(label, &sans_r_30, 0); + lv_obj_set_style_text_color(label, lv_color_hex(0xd0d0d0), 0); + lv_obj_align(label, LV_ALIGN_LEFT_MID, 70, 0); + + /* 标题栏日期时间 */ + lbl_time = lv_label_create(frame); + lv_label_set_text(lbl_time, ""); + lv_obj_set_style_text_font(lbl_time, &sans_r_18, 0); + lv_obj_set_style_text_color(lbl_time, lv_color_hex(0xd0d0d0), 0); + lv_obj_align(lbl_time, LV_ALIGN_CENTER, 0, 0); + + /* 标题栏返回按钮 */ + btn = lv_btn_create(frame); + lv_obj_set_size(btn, 150, 48); + lv_obj_add_style(btn, style_button, 0); + lv_obj_set_style_bg_color(btn, lv_color_hex(0xa8a8a8), 0); + lv_obj_align(btn, LV_ALIGN_RIGHT_MID, -10, 0); + label = lv_label_create(btn); + text = get_text_from_pool(TID_back); + lv_label_set_text(label, text); + lv_obj_set_style_text_font(label, &sans_m_24, 0); + lv_obj_set_style_text_color(label, lv_color_hex(0x000000), 0); + lv_obj_align(label, LV_ALIGN_CENTER, 0, 0); + lv_obj_add_event_cb(btn, ev_back, LV_EVENT_CLICKED, NULL); + + /* 状态栏背景 */ + frame = lv_obj_create(parent); + lv_obj_set_size(frame, LV_PCT(100), 70); + lv_obj_add_style(frame, style_main, LV_PART_MAIN); + lv_obj_set_style_bg_color(frame, lv_color_hex(0x586273), 0); + lv_obj_align(frame, LV_ALIGN_BOTTOM_MID, 0, 0); + lv_obj_set_style_border_width(frame, 2, 0); + lv_obj_set_style_border_color(frame, lv_color_hex(0xa8a8a8), 0); + lv_obj_set_style_border_side(frame, LV_BORDER_SIDE_TOP, 0); + + /* 状态栏文字 */ + label = lv_label_create(frame); + tm_now = localtime(¶ms->production_date); + memcpy(&tm_production, tm_now, sizeof(struct tm)); + tm_now = localtime(¶ms->purchase_date); + memcpy(&tm_purchase, tm_now, sizeof(struct tm)); + const char *p1 = get_text_from_pool(TID_mfg_date); + const char *p2 = get_text_from_pool(TID_pur_date); + const char *p3 = get_text_from_pool(TID_phone); + sprintf(buf, "%s %04d-%02d-%02d %s %04d-%02d-%02d %s %s", + p1, + tm_production.tm_year + 1900, + tm_production.tm_mon + 1, + tm_production.tm_mday, + p2, + tm_purchase.tm_year + 1900, + tm_purchase.tm_mon + 1, + tm_purchase.tm_mday, + p3, + params->phone); + lv_label_set_text(label, buf); + lv_obj_set_style_text_font(label, &sans_r_18, 0); + lv_obj_set_style_text_color(label, lv_color_hex(0xd0d0d0), 0); + lv_obj_align(label, LV_ALIGN_CENTER, 0, 0); +} + +static void page_body_init(lv_obj_t *parent) +{ + /* 创建原点设置区域 */ + create_origin_area(parent); + + /* 创建其他设置区域 */ + create_button_area(parent); + + /* 页面值刷新 */ + intf_update(); +} + +s32 origin_open(void *args) +{ + UNUSED(args); + + dprint("[%s]++\n", __func__); + + /* 本地变量初始 */ + last_position = -1; + + /* 获取参数数据接口 */ + params = get_params_data(); + + /* 获取运行时数据接口 */ + runtime = get_runtime_data(); + + /* 获取多段补偿数据接口 */ + comp = get_comp_data(); + + /* 创建页面背景对象,先创建body对象再创建head对象是为了显示3d效果 */ + page_init(); + + /* 创建页面body对象 */ + page_body_init(page); + + /* 创建页面head对象 */ + page_head_init(page); + + /* success */ + last_time = get_current_time(); + + return 0; +} + +void origin_close(void) +{ + dprint("[%s]++\n", __func__); + page_deinit(); +} + +void origin_update(void) +{ +// s32 pos; +// char buf[32]; + +#if 0 + /* 更新挡板位置 */ + pos = get_current_position(); + if (pos != last_position) { + sprintf(buf, "%.1f", pos / STORE_RATE); + lv_textarea_set_text(ta_curpos, buf); + last_position = pos; + } +#endif + + if (time_after(get_current_time(), last_time)) { + update_datetime(); + last_time = get_current_time() + 1000; + } +} + diff --git a/800x480/MK_setting.c b/800x480/MK_setting.c new file mode 100644 index 0000000..6c87f0f --- /dev/null +++ b/800x480/MK_setting.c @@ -0,0 +1,569 @@ +/* + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are + * met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * * Redistributions in binary form must reproduce the above + * copyright notice, this list of conditions and the following disclaimer + * in the documentation and/or other materials provided with the + * distribution. + * * Neither the name of the nor the names of its + * contributors may be used to endorse or promote products derived from + * this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT + * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR + * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT + * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT + * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, + * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY + * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE + * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + * + */ +#include +#include +#include +#include +#include +#include +#include "lvgl/lvgl.h" +#include "MK_macro.h" +#include "MK_types.h" +#include "MK_func.h" + +static lv_obj_t *page = NULL; +static lv_obj_t *lbl_time = NULL; +static lv_obj_t *ta_run = NULL; +static lv_obj_t *ta_gohome = NULL; +static lv_obj_t *ta_time = NULL; +static lv_obj_t *ta_crawl = NULL; + +static struct params_data *params; +static struct runtime_data *runtime; +static u32 last_time; +static s32 params_changed; + +static void intf_update(void) +{ + char buf[16]; + + /* 运行速度 */ + sprintf(buf, "%d", params->speed_run); + lv_textarea_set_text(ta_run, buf); + + /* 回原速度 */ + sprintf(buf, "%d", params->speed_gohome); + lv_textarea_set_text(ta_gohome, buf); + + /* 加减速时间 */ + sprintf(buf, "%d", params->speed_time); + lv_textarea_set_text(ta_time, buf); + + /* 回原速度 */ + sprintf(buf, "%d", params->speed_crawl); + lv_textarea_set_text(ta_crawl, buf); +} + +static void setting_value_update(const char *val, void *user_data) +{ + lv_obj_t *ta = (lv_obj_t *)user_data; + s32 ta_id = (s32)lv_obj_get_user_data(ta); + char buf[16] = {0}; + s32 v; + + /* 值设定 */ + switch (ta_id) { + case TA_MAX: + params->test_min = 0; + params->test_max = strtof(val, NULL) * STORE_RATE; + params->max = params->test_max - params->test_min; + snprintf(buf, sizeof(buf), "%.2f", params->test_max / STORE_RATE); + break; + + case TA_MIN: + params->test_min = strtof(val, NULL) * STORE_RATE; + params->max = params->test_max - params->test_min; + snprintf(buf, sizeof(buf), "%.2f", params->test_min / STORE_RATE); + break; + + case TA_SPEED_RUN: + v = strtol(val, NULL, 10); + ATOMIC_STM(params->speed_run, v); + snprintf(buf, sizeof(buf), "%d", v); + break; + + case TA_SPEED_GOHOME: + v = strtol(val, NULL, 10); + ATOMIC_STM(params->speed_gohome, v); + snprintf(buf, sizeof(buf), "%d", v); + break; + + case TA_SPEED_TIME: + v = strtol(val, NULL, 10); + ATOMIC_STM(params->speed_time, v); + snprintf(buf, sizeof(buf), "%d", v); + break; + + case TA_SPEED_CRAWL: + v = strtol(val, NULL, 10); + ATOMIC_STM(params->speed_crawl, v); + snprintf(buf, sizeof(buf), "%d", v); + break; + + case TA_NUM: + v = strtol(val, NULL, 10); + if (v == 0) { + v = DEFAULT_NUM; + } + ATOMIC_STM(params->pulse_rate.num, v); + snprintf(buf, sizeof(buf), "%d", v); + break; + + case TA_DEN: + v = strtol(val, NULL, 10); + if (v == 0) { + v = DEFAULT_DEN; + } + ATOMIC_STM(params->pulse_rate.den, v); + snprintf(buf, sizeof(buf), "%d", v); + break; + + default: + break; + } + + params_changed = 1; + lv_textarea_set_text(ta, buf); +} + +static s32 verify_speed_run(const char *val, void *user_data) +{ + s32 v = strtol(val, NULL, 10); + + UNUSED(user_data); + if (v < SPEED_RUN_MIN || v > SPEED_RUN_MAX) { + return 0; + } + + return 1; +} + +static s32 verify_speed_gohome(const char *val, void *user_data) +{ + s32 v = strtol(val, NULL, 10); + + UNUSED(user_data); + if (v < SPEED_GOHOME_MIN || v > SPEED_GOHOME_MAX) { + return 0; + } + + return 1; +} + +static s32 verify_speed_time(const char *val, void *user_data) +{ + s32 v = strtol(val, NULL, 10); + + UNUSED(user_data); + if (v < SPEED_TIME_MIN || v > SPEED_TIME_MAX) { + return 0; + } + + return 1; +} + +static s32 verify_speed_crawl(const char *val, void *user_data) +{ + s32 v = strtol(val, NULL, 10); + + UNUSED(user_data); + if (v < SPEED_CRAWL_MIN || v > SPEED_CRAWL_MAX) { + return 0; + } + + return 1; +} + +/* +static s32 verify_rate(const char *val, void *user_data) +{ + s32 v = strtol(val, NULL, 10); + + UNUSED(user_data); + if (v < 1 || v > 1000) { + return 0; + } + + return 1; +}*/ + +static void ev_back(lv_event_t *e) +{ + UNUSED(e); + + buzz(); + if (params_changed) { + runtime_data_update(); + params_data_save(); + } + + set_current_window(WM_PREV); + + // test + dprint("test max: %d, test min: %d\nspeed run: %d, speed gohome: %d, speed time: %d, speed crawl: %d\n", + params->test_max, params->test_min, params->speed_run, + params->speed_gohome, params->speed_time, params->speed_crawl); +} + +static void ev_setting(lv_event_t *e) +{ + static struct ime_cb ime_cb; + lv_obj_t *obj = lv_event_get_target(e); + s32 ta_id = (s32)lv_obj_get_user_data(obj); + s32 min, max; + + memset(&ime_cb, 0, sizeof(struct ime_cb)); + ime_cb.user_data = obj; + switch (ta_id) { + case TA_SPEED_RUN: + min = SPEED_RUN_MIN; + max = SPEED_RUN_MAX; + ime_cb.verify = verify_speed_run; + break; + + case TA_SPEED_GOHOME: + min = SPEED_GOHOME_MIN; + max = SPEED_GOHOME_MAX; + ime_cb.verify = verify_speed_gohome; + break; + + case TA_SPEED_TIME: + min = SPEED_TIME_MIN; + max = SPEED_TIME_MAX; + ime_cb.verify = verify_speed_time; + break; + + case TA_SPEED_CRAWL: + min = SPEED_CRAWL_MIN; + max = SPEED_CRAWL_MAX; + ime_cb.verify = verify_speed_crawl; + break; + +// case TA_NUM: +// case TA_DEN: +// ime_cb.verify = verify_rate; +// break; + + default: + min = runtime->min / STORE_RATE; + max = runtime->max / STORE_RATE; + break; + } + ime_cb.update = setting_value_update; + + /* 调用输入框 */ + buzz(); + create_ime(min, max, &ime_cb); +} + +static void ev_gohome(lv_event_t *e) +{ + lv_obj_t *obj = lv_event_get_target(e); + + buzz(); + motor_reset(); + lv_obj_set_style_bg_color(obj, lv_color_hex(0x00a5ff), 0); +} + +static void create_setting_area(lv_obj_t *parent) +{ + lv_obj_t *frame; + lv_obj_t *label; + lv_obj_t *btn; + lv_obj_t *ta; + const char *text; + char buf[64]; + lv_style_t *style_meter = get_project_style(STYLE_METER); + lv_style_t *style_input = get_project_style(STYLE_INPUT); + lv_style_t *style_button = get_project_style(STYLE_BUTTON); + lv_style_t *style_label = get_project_style(STYLE_LABEL); + + /* 背景框 */ + frame = lv_obj_create(parent); + lv_obj_set_size(frame, 760, 310); + lv_obj_add_style(frame, style_meter, 0); + lv_obj_set_style_bg_color(frame, lv_color_hex(0x586273), 0); + lv_obj_set_style_border_width(frame, 2, 0); + lv_obj_set_style_border_color(frame, lv_color_hex(0x808a97), 0); + lv_obj_align(frame, LV_ALIGN_LEFT_MID, 20, -5); + + /* '运行速度'标题 */ + label = lv_label_create(frame); + lv_obj_add_style(label, style_label, 0); + text = get_text_from_pool(TID_run_speed); + sprintf(buf, "%s(%d~%d)[%d]:", text, SPEED_RUN_MIN, SPEED_RUN_MAX, DEFAULT_SPEED_RUN); + lv_label_set_text(label, buf); + lv_obj_align(label, LV_ALIGN_TOP_LEFT, 20, 20); + + /* '运行速度'值 */ + ta = lv_textarea_create(frame); + lv_obj_set_user_data(ta, (void *)TA_SPEED_RUN); + lv_textarea_set_one_line(ta, true); + lv_textarea_set_align(ta, LV_TEXT_ALIGN_CENTER); + lv_obj_add_style(ta, style_input, 0); + lv_textarea_set_text(ta, "0"); + lv_obj_set_size(ta, 320, 48); + lv_textarea_set_accepted_chars(ta, "0123456789.-"); + lv_obj_set_style_opa(ta, LV_OPA_TRANSP, LV_PART_CURSOR); + lv_obj_align_to(ta, label, LV_ALIGN_OUT_BOTTOM_LEFT, 0, 8); + lv_obj_add_event_cb(ta, ev_setting, LV_EVENT_CLICKED, NULL); + ta_run = ta; + + /* '加减速时间'标题 */ + label = lv_label_create(frame); + lv_obj_add_style(label, style_label, 0); + text = get_text_from_pool(TID_time_speed); + sprintf(buf, "%s(%d~%d)[%d]:", text, SPEED_TIME_MIN, SPEED_TIME_MAX, DEFAULT_SPEED_TIME); + lv_label_set_text(label, buf); + lv_obj_align_to(label, ta_run, LV_ALIGN_OUT_BOTTOM_LEFT, 0, 20); + + /* '加减速时间'值 */ + ta = lv_textarea_create(frame); + lv_obj_set_user_data(ta, (void *)TA_SPEED_TIME); + lv_textarea_set_one_line(ta, true); + lv_textarea_set_align(ta, LV_TEXT_ALIGN_CENTER); + lv_obj_add_style(ta, style_input, 0); + lv_textarea_set_text(ta, "0"); + lv_obj_set_size(ta, 320, 48); + lv_textarea_set_accepted_chars(ta, "0123456789.-"); + lv_obj_set_style_opa(ta, LV_OPA_TRANSP, LV_PART_CURSOR); + lv_obj_align_to(ta, label, LV_ALIGN_OUT_BOTTOM_LEFT, 0, 8); + lv_obj_add_event_cb(ta, ev_setting, LV_EVENT_CLICKED, NULL); + ta_time = ta; + + /* '回原速度'标题 */ + label = lv_label_create(frame); + lv_obj_add_style(label, style_label, 0); + text = get_text_from_pool(TID_gohome_speed); + sprintf(buf, "%s(%d~%d)[%d]:", text, SPEED_GOHOME_MIN, SPEED_GOHOME_MAX, DEFAULT_SPEED_GOHOME); + lv_label_set_text(label, buf); + lv_obj_align(label, LV_ALIGN_OUT_TOP_LEFT, 420, 20); + + /* '回原速度'值 */ + ta = lv_textarea_create(frame); + lv_obj_set_user_data(ta, (void *)TA_SPEED_GOHOME); + lv_textarea_set_one_line(ta, true); + lv_textarea_set_align(ta, LV_TEXT_ALIGN_CENTER); + lv_obj_add_style(ta, style_input, 0); + lv_textarea_set_text(ta, "0"); + lv_obj_set_size(ta, 320, 48); + lv_textarea_set_accepted_chars(ta, "0123456789.-"); + lv_obj_set_style_opa(ta, LV_OPA_TRANSP, LV_PART_CURSOR); + lv_obj_align_to(ta, label, LV_ALIGN_OUT_BOTTOM_LEFT, 0, 8); + lv_obj_add_event_cb(ta, ev_setting, LV_EVENT_CLICKED, NULL); + ta_gohome = ta; + + /* '爬行速度'标题 */ + label = lv_label_create(frame); + lv_obj_add_style(label, style_label, 0); + text = get_text_from_pool(TID_crawl_speed); + sprintf(buf, "%s(%d~%d)[%d]:", text, SPEED_CRAWL_MIN, SPEED_CRAWL_MAX, DEFAULT_SPEED_CRAWL); + lv_label_set_text(label, buf); + lv_obj_align_to(label, ta_gohome, LV_ALIGN_OUT_BOTTOM_LEFT, 0, 20); + + /* '爬行速度'值 */ + ta = lv_textarea_create(frame); + lv_obj_set_user_data(ta, (void *)TA_SPEED_CRAWL); + lv_textarea_set_one_line(ta, true); + lv_textarea_set_align(ta, LV_TEXT_ALIGN_CENTER); + lv_obj_add_style(ta, style_input, 0); + lv_textarea_set_text(ta, "0"); + lv_obj_set_size(ta, 320, 48); + lv_textarea_set_accepted_chars(ta, "0123456789.-"); + lv_obj_set_style_opa(ta, LV_OPA_TRANSP, LV_PART_CURSOR); + lv_obj_align_to(ta, label, LV_ALIGN_OUT_BOTTOM_LEFT, 0, 8); + lv_obj_add_event_cb(ta, ev_setting, LV_EVENT_CLICKED, NULL); + ta_crawl = ta; + + /* 回原点 */ + btn = lv_btn_create(frame); + lv_obj_set_size(btn, 200, 48); + lv_obj_add_style(btn, style_button, 0); + if (get_gohome_status()) { + lv_obj_set_style_bg_color(btn, lv_color_hex(0x00a5ff), 0); + } + else { + lv_obj_set_style_bg_color(btn, lv_color_hex(0xa8a8a8), 0); + } + lv_obj_align(btn, LV_ALIGN_BOTTOM_MID, 0, -25); + label = lv_label_create(btn); + text = get_text_from_pool(TID_gohome); + lv_label_set_text(label, text); + lv_obj_align(label, LV_ALIGN_CENTER, 0, 0); + lv_obj_add_event_cb(btn, ev_gohome, LV_EVENT_CLICKED, NULL); +} + +static void page_init(void) +{ + lv_style_t *style_main = get_project_style(STYLE_PAGE); + + /* 创建页面容器 */ + page = lv_obj_create(lv_scr_act()); + lv_obj_set_size(page, LV_PCT(100), LV_PCT(100)); + lv_obj_add_style(page, style_main, LV_PART_MAIN); + lv_obj_set_style_bg_color(page, lv_color_hex(0x444b5a), 0); +} + +static void page_deinit(void) +{ + if (page != NULL) { + lv_obj_del(page); + page = NULL; + } +} + +static void page_head_init(lv_obj_t *parent) +{ + lv_obj_t *frame; + lv_obj_t *label; + lv_obj_t *btn; + const char *text; + struct tm tm_production; + struct tm tm_purchase; + struct tm *tm_now; + char buf[256]; + lv_style_t *style_main = get_project_style(STYLE_PAGE); + lv_style_t *style_button = get_project_style(STYLE_BUTTON); + + /* 标题栏背景 */ + frame = lv_obj_create(parent); + lv_obj_set_size(frame, LV_PCT(100), 60); + lv_obj_set_style_bg_color(frame, lv_color_hex(0x586273), 0); + lv_obj_add_style(frame, style_main, LV_PART_MAIN); + lv_obj_set_style_shadow_width(frame, 16, 0); + + lv_obj_t *logo = lv_img_create(frame); + lv_img_set_src(logo, "P:assets/lvgl_logo.png"); + lv_obj_align(logo, LV_ALIGN_LEFT_MID, 15, 0); + + /* 标题栏文字 */ + label = lv_label_create(frame); + text = get_text_from_pool(TID_motor_params); + lv_label_set_text(label, text); + lv_obj_set_style_text_font(label, &sans_r_30, 0); + lv_obj_set_style_text_color(label, lv_color_hex(0xd0d0d0), 0); + lv_obj_align(label, LV_ALIGN_LEFT_MID, 70, 0); + + /* 标题栏日期时间 */ + lbl_time = lv_label_create(frame); + lv_label_set_text(lbl_time, ""); + lv_obj_set_style_text_font(lbl_time, &sans_r_18, 0); + lv_obj_set_style_text_color(lbl_time, lv_color_hex(0xd0d0d0), 0); + lv_obj_align(lbl_time, LV_ALIGN_CENTER, 0, 0); + + /* 标题栏返回按钮 */ + btn = lv_btn_create(frame); + lv_obj_set_size(btn, 150, 48); + lv_obj_add_style(btn, style_button, 0); + lv_obj_set_style_bg_color(btn, lv_color_hex(0xa8a8a8), 0); + lv_obj_align(btn, LV_ALIGN_RIGHT_MID, -10, 0); + label = lv_label_create(btn); + text = get_text_from_pool(TID_back); + lv_label_set_text(label, text); + lv_obj_align(label, LV_ALIGN_CENTER, 0, 0); + lv_obj_add_event_cb(btn, ev_back, LV_EVENT_CLICKED, NULL); + + /* 状态栏背景 */ + frame = lv_obj_create(parent); + lv_obj_set_size(frame, LV_PCT(100), 70); + lv_obj_set_style_bg_color(frame, lv_color_hex(0x586273), 0); + lv_obj_add_style(frame, style_main, LV_PART_MAIN); + lv_obj_align(frame, LV_ALIGN_BOTTOM_MID, 0, 0); + lv_obj_set_style_border_width(frame, 2, 0); + lv_obj_set_style_border_color(frame, lv_color_hex(0xa8a8a8), 0); + lv_obj_set_style_border_side(frame, LV_BORDER_SIDE_TOP, 0); + + /* 状态栏文字 */ + label = lv_label_create(frame); + tm_now = localtime(¶ms->production_date); + memcpy(&tm_production, tm_now, sizeof(struct tm)); + tm_now = localtime(¶ms->purchase_date); + memcpy(&tm_purchase, tm_now, sizeof(struct tm)); + const char *p1 = get_text_from_pool(TID_mfg_date); + const char *p2 = get_text_from_pool(TID_pur_date); + const char *p3 = get_text_from_pool(TID_phone); + sprintf(buf, "%s %04d-%02d-%02d %s %04d-%02d-%02d %s %s", + p1, + tm_production.tm_year + 1900, + tm_production.tm_mon + 1, + tm_production.tm_mday, + p2, + tm_purchase.tm_year + 1900, + tm_purchase.tm_mon + 1, + tm_purchase.tm_mday, + p3, + params->phone); + lv_label_set_text(label, buf); + lv_obj_set_style_text_font(label, &sans_r_18, 0); + lv_obj_set_style_text_color(label, lv_color_hex(0xd0d0d0), 0); + lv_obj_align(label, LV_ALIGN_CENTER, 0, 0); +} + +static void page_body_init(lv_obj_t *parent) +{ + /* 创建原点设置区域 */ + create_setting_area(parent); + + /* 页面值刷新 */ + intf_update(); +} + +s32 setting_open(void *args) +{ + UNUSED(args); + + dprint("[%s]++\n", __func__); + + /* 本地变量初始 */ + params_changed = 0; + + /* 获取参数数据接口 */ + params = get_params_data(); + + /* 获取运行时数据接口 */ + runtime = get_runtime_data(); + + /* 创建页面背景对象 */ + page_init(); + + /* 创建页面head对象 */ + page_head_init(page); + + /* 创建页面body对象 */ + page_body_init(page); + + /* success */ + last_time = get_current_time(); + + return 0; +} + +void setting_close(void) +{ + dprint("[%s]++\n", __func__); + page_deinit(); +} + +void setting_update(void) +{ + if (time_after(get_current_time(), last_time)) { + last_time = get_current_time() + 1000; + } +} + diff --git a/800x480/MK_setup.c b/800x480/MK_setup.c new file mode 100644 index 0000000..1c7ef1a --- /dev/null +++ b/800x480/MK_setup.c @@ -0,0 +1,796 @@ +/* + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are + * met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * * Redistributions in binary form must reproduce the above + * copyright notice, this list of conditions and the following disclaimer + * in the documentation and/or other materials provided with the + * distribution. + * * Neither the name of the nor the names of its + * contributors may be used to endorse or promote products derived from + * this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT + * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR + * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT + * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT + * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, + * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY + * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE + * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + * + */ +#include +#include +#include +#include +#include +#include +#include +#include +#include "lvgl/lvgl.h" +#include "MK_macro.h" +#include "MK_types.h" +#include "MK_func.h" + +static lv_obj_t *page = NULL; +static lv_obj_t *lbl_time = NULL; +static lv_obj_t *dialog = NULL; + +static struct params_data *params; +static struct runtime_data *runtime; +static u32 last_time; +static s32 processing; +static s32 thread_exit; + +static void show_process(const char *msg, s32 visible); + +static void update_datetime(void) +{ + s32 lang; + char buffer[260] = {0}; + + lang = get_language(); + encode_datetime_by_lang(lang, buffer); + lv_label_set_text(lbl_time, buffer); +} + +static void ev_close(lv_event_t *e) +{ + UNUSED(e); + + if (ATOMIC_GET(thread_exit)) { + ATOMIC_STM(processing, PROC_NONE); + show_process("", FALSE); + } +} + +static void show_process(const char *msg, s32 visible) +{ + if (!visible && dialog != NULL) { + lv_obj_del(dialog); + dialog = NULL; + + /* 取消屏幕独占模式 */ + lv_obj_clear_flag(lv_layer_top(), LV_OBJ_FLAG_CLICKABLE); + + return; + } + + /* 创建提示窗口并显示提示内容 */ + if (visible) { + if (dialog == NULL) { + lv_obj_add_flag(lv_layer_top(), LV_OBJ_FLAG_CLICKABLE); + dialog = lv_obj_create(lv_layer_top()); + lv_obj_set_size(dialog, 600, 250); + lv_obj_set_style_bg_color(dialog, lv_color_hex(0xff0000), 0); + lv_obj_align(dialog, LV_ALIGN_CENTER, 0, 0); + lv_obj_add_flag(dialog, LV_OBJ_FLAG_CLICKABLE); + lv_obj_add_event_cb(dialog, ev_close, LV_EVENT_CLICKED, NULL); + lv_obj_t *label = lv_label_create(dialog); + lv_obj_set_style_text_font(label, &sans_r_30, 0); + lv_obj_set_style_text_letter_space(label, 4, 0); + lv_obj_set_style_text_line_space(label, 15, 0); + lv_obj_set_style_text_align(label, LV_TEXT_ALIGN_CENTER, 0); + lv_label_set_text(label, msg); + lv_obj_set_style_text_color(label, lv_color_hex(0xffffff), 0); + lv_obj_align(label, LV_ALIGN_CENTER, 0, 0); + } + else { + lv_obj_t *label = lv_obj_get_child(dialog, 0); + lv_label_set_text(label, msg); + } + } +} + +static s32 valid_image(const char *ext) +{ + if (strcasecmp(ext, "png") == 0 + || strcasecmp(ext, "jpg") == 0 + || strcasecmp(ext, "bmp") == 0) { + return 1; + } + + return 0; +} + +static const char *find_image(char *fname, const char *sign) +{ + DIR *dp; + struct dirent *dirp; + char *ofile = NULL; + const char *p; + + /* 查找U盘图像文件 */ + dp = opendir("/udisk"); + if (dp == NULL) { + goto err1; + } + + while ((dirp = readdir(dp)) != NULL) { + if (dirp->d_type != DT_REG) { + continue; + } + + dprint("type: %d, name: %s\n", dirp->d_type, dirp->d_name); + + p = strrchr(dirp->d_name, '.'); + if (p == NULL) { + continue; + } + + /* 过滤不符合要求的文件 */ + if (strncmp(dirp->d_name, sign, 2) != 0) { + continue; + } + + if (valid_image(p + 1)) { + snprintf(fname, MAX_PATH, "/udisk/%s", dirp->d_name); + ofile = fname; + break; + } + } + closedir(dp); + + if (ofile != NULL) { + goto err1; + } + + /* 如果U盘中没有找到,则从TF卡中查找 */ + dp = opendir("/sdcard"); + if (dp == NULL) { + goto err1; + } + + while ((dirp = readdir(dp)) != NULL) { + if (dirp->d_type != DT_REG) { + continue; + } + + dprint("type: %d, name: %s\n", dirp->d_type, dirp->d_name); + + p = strrchr(dirp->d_name, '.'); + if (p == NULL) { + continue; + } + + /* 过滤不符合要求的文件 */ + if (strncmp(dirp->d_name, sign, 2) != 0) { + continue; + } + + if (valid_image(p + 1)) { + snprintf(fname, MAX_PATH, "/sdcard/%s", dirp->d_name); + ofile = fname; + break; + } + } + closedir(dp); + +err1: + return ofile; +} + +static const char *convert_logo(const char *ifile) +{ + s32 w, h; + s32 ret; + const char *ofile = "/tmp/__logo__.bmp"; + + /* 检查图像是否有效 */ + ret = image_info(ifile, &w, &h); + if (ret != 0 || w > LV_HOR_RES || h > LV_VER_RES) { + goto err1; + } + + ret = image_convert(ifile, ofile, IMG_BMP); + if (ret != 0) { + goto err1; + } + + return ofile; + +err1: + return NULL; +} + +static const char *convert_qrcode(const char *ifile) +{ + s32 w, h; + s32 ret; + char buf[260]; + const char *tfile = "/tmp/__logo__.png"; + const char *ofile = "/data/qrcode.png"; + s32 fd; + + /* 检查图像是否有效 */ + ret = image_info(ifile, &w, &h); + dprint("image: name: %s %d x %d(%d x %d)\n", ifile, w, h, LV_HOR_RES, LV_VER_RES); + if (ret != 0 || w > LV_HOR_RES || h > LV_VER_RES) { + goto err1; + } + + ret = image_convert(ifile, tfile, IMG_PNG); + if (ret != 0) { + goto err1; + } + + /* 储存到数据分区 */ + sprintf(buf, "cp -a %s %s && sync", tfile, ofile); + system(buf); + + /* 删除临时文件 */ + sprintf(buf, "rm -f %s", tfile); + system(buf); + + /* 写入一个dump文件来保证之前的写入完全写入磁盘 */ + sync(); + fd = open("/data/dump", O_WRONLY | O_CREAT | O_TRUNC); + if (fd != -1) { + write(fd, &fd, sizeof(fd)); + fsync(fd); + close(fd); + } + + /* 检测文件拷贝是否成功 */ + if (access(ofile, R_OK) != 0) { + goto err1; + } + + /* 清除旧的图像缓存 */ + lv_img_cache_invalidate_src("P:/data/qrcode.png"); + + return ofile; + +err1: + return NULL; +} + +static void write_logo(const char *fname) +{ + char cmd[260]; + + /* 压缩gzip格式并写入 */ + sprintf(cmd, "gzip -c %s | dd of=/dev/block/by-name/logo", fname); + system(cmd); + + /* 写入logo分区 */ + system("sync"); + + /* 删除中间文件 */ + sprintf(cmd, "rm -f %s", fname); + system(cmd); +} + +static void *logo_thread(void *arg) +{ + const char *ifile, *ofile; + char path[MAX_PATH]; + + UNUSED(arg); + + ATOMIC_CLR(thread_exit); + + /* 显示搜索logo提示 */ + ATOMIC_STM(processing, PROC_START); + + sleep(2); + ifile = find_image(path, "1-"); + if (ifile == NULL) { + ATOMIC_STM(processing, PROC_NON_EXIST); + goto end; + } + + ofile = convert_logo(ifile); + if (ofile == NULL) { + ATOMIC_STM(processing, PROC_INVALID); + goto end; + } + + /* 写入logo */ + ATOMIC_STM(processing, PROC_WRITE); + write_logo(ofile); + + /* 写入完成 */ + ATOMIC_STM(processing, PROC_FINISH); + +end: + ATOMIC_SET(thread_exit); + + return NULL; +} + +static void *qrcode_thread(void *arg) +{ + const char *ifile, *ofile; + char path[MAX_PATH]; + + UNUSED(arg); + + ATOMIC_CLR(thread_exit); + + /* 显示搜索image提示 */ + ATOMIC_STM(processing, PROC_START); + + sleep(2); + ifile = find_image(path, "2-"); + if (ifile == NULL) { + ATOMIC_STM(processing, PROC_NON_EXIST); + goto end; + } + + ofile = convert_qrcode(ifile); + if (ofile == NULL) { + ATOMIC_STM(processing, PROC_INVALID); + goto end; + } + + /* 导入完成 */ + ATOMIC_STM(processing, PROC_FINISH); + +end: + ATOMIC_SET(thread_exit); + + return NULL; +} + +static void ev_back(lv_event_t *e) +{ + UNUSED(e); + + buzz(); + set_current_window(WM_SINGLE); +} + +static void ev_invoke(lv_event_t *e) +{ + lv_obj_t *obj = lv_event_get_target(e); + s32 btn_id = (s32)lv_obj_get_user_data(obj); + + buzz(); + set_current_window(btn_id); +} + +static void ev_logo(lv_event_t *e) +{ + pthread_t thread_id; + + UNUSED(e); + + /* 创建logo写入线程 */ + if (pthread_create(&thread_id, NULL, &logo_thread, NULL) != 0) { + eprint("Create 'logo' thread fail.\n"); + return; + } + pthread_detach(thread_id); +} + +static void ev_auto(lv_event_t *e) +{ + lv_obj_t *obj = lv_event_get_target(e); + + if (lv_obj_has_state(obj, LV_STATE_CHECKED)) { + runtime->test_mode = 1; + } + else { + runtime->test_mode = 0; + } + dprint("test mode: %d\n", runtime->test_mode); +} + +static void ev_lang(lv_event_t *e) +{ + lv_obj_t *obj = lv_event_get_target(e); + + params->language = lv_dropdown_get_selected(obj); + params_data_save(); + language_update(); +} + +static void ev_wireless(lv_event_t *e) +{ + lv_obj_t *obj = lv_event_get_target(e); + + if (lv_obj_has_state(obj, LV_STATE_CHECKED)) { + params->wireless_module = 1; + } + else { + params->wireless_module = 0; + runtime->sw_wireless = 0; + } + params_data_save(); + dprint("wireless status: %d\n", params->wireless_module); +} + +static void ev_qrcode(lv_event_t *e) +{ + pthread_t thread_id; + + UNUSED(e); + + /* 创建qrcode写入线程 */ + if (pthread_create(&thread_id, NULL, &qrcode_thread, NULL) != 0) { + eprint("Create 'qrcode' thread fail.\n"); + return; + } + pthread_detach(thread_id); +} + +static void page_init(void) +{ + lv_style_t *style_main = get_project_style(STYLE_PAGE); + + /* 创建页面容器 */ + page = lv_obj_create(lv_scr_act()); + lv_obj_set_size(page, LV_PCT(100), LV_PCT(100)); + lv_obj_add_style(page, style_main, LV_PART_MAIN); + lv_obj_set_style_bg_color(page, lv_color_hex(0x444b5a), 0); +} + +static void page_deinit(void) +{ + if (page != NULL) { + lv_obj_del(page); + page = NULL; + } +} + +static void page_head_init(lv_obj_t *parent) +{ + lv_obj_t *frame; + lv_obj_t *label; + lv_obj_t *btn; + const char *text; + struct tm tm_production; + struct tm tm_purchase; + struct tm *tm_now; + char buf[256]; + lv_style_t *style_main = get_project_style(STYLE_PAGE); + lv_style_t *style_button = get_project_style(STYLE_BUTTON); + + /* 标题栏背景 */ + frame = lv_obj_create(parent); + lv_obj_set_size(frame, LV_PCT(100), 60); + lv_obj_set_style_bg_color(frame, lv_color_hex(0x586273), 0); + lv_obj_add_style(frame, style_main, LV_PART_MAIN); + lv_obj_set_style_shadow_width(frame, 16, 0); + + lv_obj_t *logo = lv_img_create(frame); + lv_img_set_src(logo, "P:assets/lvgl_logo.png"); + lv_obj_align(logo, LV_ALIGN_LEFT_MID, 15, 0); + + /* 标题栏文字 */ + label = lv_label_create(frame); + text = get_text_from_pool(TID_setting); + lv_label_set_text(label, text); + lv_obj_set_style_text_font(label, &sans_r_30, 0); + lv_obj_set_style_text_color(label, lv_color_hex(0xd0d0d0), 0); + lv_obj_align(label, LV_ALIGN_LEFT_MID, 70, 0); + + /* 标题栏日期时间 */ + lbl_time = lv_label_create(frame); + lv_label_set_text(lbl_time, ""); + lv_obj_set_style_text_font(lbl_time, &sans_r_18, 0); + lv_obj_set_style_text_color(lbl_time, lv_color_hex(0xd0d0d0), 0); + lv_obj_align(lbl_time, LV_ALIGN_CENTER, 0, 0); + + /* 标题栏返回按钮 */ + btn = lv_btn_create(frame); + lv_obj_set_size(btn, 150, 48); + lv_obj_add_style(btn, style_button, 0); + lv_obj_set_style_bg_color(btn, lv_color_hex(0xa8a8a8), 0); + lv_obj_align(btn, LV_ALIGN_RIGHT_MID, -10, 0); + label = lv_label_create(btn); + text = get_text_from_pool(TID_back); + lv_label_set_text(label, text); + lv_obj_set_style_text_font(label, &sans_m_24, 0); + lv_obj_set_style_text_color(label, lv_color_hex(0x000000), 0); + lv_obj_align(label, LV_ALIGN_CENTER, 0, 0); + lv_obj_add_event_cb(btn, ev_back, LV_EVENT_CLICKED, NULL); + + /* 状态栏背景 */ + frame = lv_obj_create(parent); + lv_obj_set_size(frame, LV_PCT(100), 70); + lv_obj_set_style_bg_color(frame, lv_color_hex(0x586273), 0); + lv_obj_add_style(frame, style_main, LV_PART_MAIN); + lv_obj_align(frame, LV_ALIGN_BOTTOM_MID, 0, 0); + lv_obj_set_style_border_width(frame, 2, 0); + lv_obj_set_style_border_color(frame, lv_color_hex(0xa8a8a8), 0); + lv_obj_set_style_border_side(frame, LV_BORDER_SIDE_TOP, 0); + + /* 状态栏文字 */ + label = lv_label_create(frame); + tm_now = localtime(¶ms->production_date); + memcpy(&tm_production, tm_now, sizeof(struct tm)); + tm_now = localtime(¶ms->purchase_date); + memcpy(&tm_purchase, tm_now, sizeof(struct tm)); + const char *p1 = get_text_from_pool(TID_mfg_date); + const char *p2 = get_text_from_pool(TID_pur_date); + const char *p3 = get_text_from_pool(TID_phone); + sprintf(buf, "%s %04d-%02d-%02d %s %04d-%02d-%02d %s %s", + p1, + tm_production.tm_year + 1900, + tm_production.tm_mon + 1, + tm_production.tm_mday, + p2, + tm_purchase.tm_year + 1900, + tm_purchase.tm_mon + 1, + tm_purchase.tm_mday, + p3, + params->phone); + lv_label_set_text(label, buf); + lv_obj_set_style_text_font(label, &sans_r_18, 0); + lv_obj_set_style_text_color(label, lv_color_hex(0xd0d0d0), 0); + lv_obj_align(label, LV_ALIGN_CENTER, 0, 0); +} + +static void page_body_init(lv_obj_t *parent) +{ + lv_obj_t *btn; + lv_obj_t *label; + lv_obj_t *temp; + const char *text; + lv_style_t *style_button = get_project_style(STYLE_BUTTON); + lv_style_t *style_label = get_project_style(STYLE_LABEL); + + /* 电机参数设置 */ + btn = lv_btn_create(parent); + lv_obj_set_user_data(btn, (void *)WM_SETTING); + lv_obj_set_size(btn, 200, 68); + lv_obj_add_style(btn, style_button, 0); + lv_obj_set_style_bg_color(btn, lv_color_hex(0xa8a8a8), 0); + lv_obj_align(btn, LV_ALIGN_TOP_LEFT, 80, 147); + label = lv_label_create(btn); + text = get_text_from_pool(TID_motor_params); + lv_label_set_text(label, text); + lv_obj_set_style_text_font(label, &sans_m_24, 0); + lv_obj_set_style_text_color(label, lv_color_hex(0x000000), 0); + lv_obj_align(label, LV_ALIGN_CENTER, 0, 0); + lv_obj_add_event_cb(btn, ev_invoke, LV_EVENT_CLICKED, NULL); + temp = btn; + + /* 多段补偿设置 */ + btn = lv_btn_create(parent); + lv_obj_set_user_data(btn, (void *)WM_COMPENSATION); + lv_obj_set_size(btn, 200, 68); + lv_obj_add_style(btn, style_button, 0); + lv_obj_set_style_bg_color(btn, lv_color_hex(0xa8a8a8), 0); + //lv_obj_align(btn, LV_ALIGN_TOP_MID, -110, 147); + lv_obj_align_to(btn, temp, LV_ALIGN_OUT_RIGHT_MID, 20, 0); + label = lv_label_create(btn); + text = get_text_from_pool(TID_setup_comp); + lv_label_set_text(label, text); + lv_obj_set_style_text_font(label, &sans_m_24, 0); + lv_obj_set_style_text_color(label, lv_color_hex(0x000000), 0); + lv_obj_align(label, LV_ALIGN_CENTER, 0, 0); + lv_obj_add_event_cb(btn, ev_invoke, LV_EVENT_CLICKED, NULL); + + /* 时间和密码设置 */ + btn = lv_btn_create(parent); + lv_obj_set_user_data(btn, (void *)WM_SYSTEM); + lv_obj_set_size(btn, 200, 68); + lv_obj_add_style(btn, style_button, 0); + lv_obj_set_style_bg_color(btn, lv_color_hex(0xa8a8a8), 0); + //lv_obj_align_to(btn, temp, LV_ALIGN_OUT_BOTTOM_MID, 0, 20); + lv_obj_align_to(btn, temp, LV_ALIGN_OUT_BOTTOM_MID, 0, 20); + label = lv_label_create(btn); + text = get_text_from_pool(TID_setup_sys); + lv_label_set_text(label, text); + lv_obj_set_style_text_font(label, &sans_m_24, 0); + lv_obj_set_style_text_color(label, lv_color_hex(0x000000), 0); + lv_obj_align(label, LV_ALIGN_CENTER, 0, 0); + lv_obj_add_event_cb(btn, ev_invoke, LV_EVENT_CLICKED, NULL); + temp = btn; + + /* 生产日期设置 */ + btn = lv_btn_create(parent); + lv_obj_set_user_data(btn, (void *)WM_INFO); + lv_obj_set_size(btn, 200, 68); + lv_obj_add_style(btn, style_button, 0); + lv_obj_set_style_bg_color(btn, lv_color_hex(0xa8a8a8), 0); + //lv_obj_align_to(btn, temp, LV_ALIGN_OUT_RIGHT_MID, 20, 0); + lv_obj_align_to(btn, temp, LV_ALIGN_OUT_RIGHT_MID, 20, 0); + label = lv_label_create(btn); + text = get_text_from_pool(TID_setup_info); + lv_label_set_text(label, text); + lv_obj_set_style_text_font(label, &sans_m_24, 0); + lv_obj_set_style_text_color(label, lv_color_hex(0x000000), 0); + lv_obj_align(label, LV_ALIGN_CENTER, 0, 0); + lv_obj_add_event_cb(btn, ev_invoke, LV_EVENT_CLICKED, NULL); + temp = btn; + + /* 写入客户logo */ + btn = lv_btn_create(parent); + lv_obj_set_size(btn, 200, 68); + lv_obj_add_style(btn, style_button, 0); + lv_obj_set_style_bg_color(btn, lv_color_hex(0xa8a8a8), 0); + //lv_obj_align_to(btn, temp, LV_ALIGN_OUT_TOP_MID, 0, -20); + lv_obj_align(btn, LV_ALIGN_TOP_RIGHT, -80, 147); + label = lv_label_create(btn); + text = get_text_from_pool(TID_logo); + lv_label_set_text(label, text); + lv_obj_set_style_text_font(label, &sans_m_24, 0); + lv_obj_set_style_text_color(label, lv_color_hex(0x000000), 0); + lv_obj_align(label, LV_ALIGN_CENTER, 0, 0); + lv_obj_add_event_cb(btn, ev_logo, LV_EVENT_CLICKED, NULL); + temp = btn; + + /* 导入教程二维码 */ + btn = lv_btn_create(parent); + lv_obj_set_size(btn, 200, 68); + lv_obj_add_style(btn, style_button, 0); + lv_obj_set_style_bg_color(btn, lv_color_hex(0xa8a8a8), 0); + lv_obj_align_to(btn, temp, LV_ALIGN_OUT_BOTTOM_MID, 0, 20); + label = lv_label_create(btn); + text = get_text_from_pool(TID_qrcode); + lv_label_set_text(label, text); + lv_obj_set_style_text_font(label, &sans_m_24, 0); + lv_obj_set_style_text_color(label, lv_color_hex(0x000000), 0); + lv_obj_align(label, LV_ALIGN_CENTER, 0, 0); + lv_obj_add_event_cb(btn, ev_qrcode, LV_EVENT_CLICKED, NULL); + + lv_obj_t *drp = lv_dropdown_create(parent); + lv_dropdown_set_options(drp, "简体中文(CN)\n英文(EN)"); + lv_obj_set_size(drp, 200, 40); + lv_obj_set_style_radius(drp, 5, 0); + lv_obj_set_style_text_color(drp, lv_color_black(), 0); + lv_obj_set_style_text_font(drp, &sans_m_24, 0); + lv_obj_set_style_pad_top(drp, 5, 0); + lv_obj_set_style_pad_bottom(drp, 0, 0); + lv_dropdown_set_selected(drp, params->language); + lv_obj_align(drp, LV_ALIGN_BOTTOM_LEFT, 80 + 70, -90); + label = lv_label_create(parent); + lv_obj_add_style(label, style_label, 0); + text = get_text_from_pool(TID_lang); + lv_label_set_text_static(label, text); + lv_obj_align_to(label, drp, LV_ALIGN_OUT_LEFT_MID, -15, 0); + lv_obj_add_event_cb(drp, ev_lang, LV_EVENT_VALUE_CHANGED, NULL); + + /* 增加一个自动测试模式开关 */ + lv_obj_t *sw = lv_switch_create(parent); + lv_obj_set_size(sw, 76, 36); + lv_obj_set_style_bg_color(sw, lv_color_hex(0x202020), 0); + lv_obj_align(sw, LV_ALIGN_BOTTOM_RIGHT, -20, -90); + if (runtime->test_mode) { + lv_obj_add_state(sw, LV_STATE_CHECKED); + } + else { + lv_obj_clear_state(sw, LV_STATE_CHECKED); + } + lv_obj_add_event_cb(sw, ev_auto, LV_EVENT_VALUE_CHANGED, NULL); + label = lv_label_create(parent); + lv_obj_add_style(label, style_label, 0); + text = get_text_from_pool(TID_test); + lv_label_set_text(label, text); + lv_obj_align_to(label, sw, LV_ALIGN_OUT_LEFT_MID, -10, 0); + + /* 增加一个'无线开关'开关 */ + sw = lv_switch_create(parent); + lv_obj_set_size(sw, 76, 36); + lv_obj_set_style_bg_color(sw, lv_color_hex(0x202020), 0); + lv_obj_align(sw, LV_ALIGN_BOTTOM_RIGHT, -230, -90); + if (params->wireless_module) { + lv_obj_add_state(sw, LV_STATE_CHECKED); + } + else { + lv_obj_clear_state(sw, LV_STATE_CHECKED); + } + lv_obj_add_event_cb(sw, ev_wireless, LV_EVENT_VALUE_CHANGED, NULL); + label = lv_label_create(parent); + lv_obj_add_style(label, style_label, 0); + text = get_text_from_pool(TID_wireless_sw); + lv_label_set_text_static(label, text); + lv_obj_align_to(label, sw, LV_ALIGN_OUT_LEFT_MID, -10, 0); +} + +s32 setup_open(void *args) +{ + UNUSED(args); + + dprint("[%s]++\n", __func__); + + /* 本地变量初始 */ + processing = 0; + + /* 获取参数数据接口 */ + params = get_params_data(); + + /* 获取运行时数据接口 */ + runtime = get_runtime_data(); + + /* 创建页面背景对象 */ + page_init(); + + /* 创建页面背景对象,先创建body对象再创建head对象是为了显示3d效果 */ + page_body_init(page); + + /* 创建页面head对象 */ + page_head_init(page); + + /* success */ + last_time = get_current_time(); + + return 0; +} + +void setup_close(void) +{ + dprint("[%s]++\n", __func__); + page_deinit(); +} + +void setup_update(void) +{ + s32 show; + const char *pmsg; + + show = ATOMIC_GET(processing); + switch (show) { + case PROC_START: + pmsg = "正在搜索图像文件,请稍候..."; + show_process(pmsg, TRUE); + ATOMIC_CLR(processing); + break; + + case PROC_NON_EXIST: + pmsg = "没有找到图像文件,请检查U盘或\n" + "TF卡是否插入,以及里面是否有\n" + "正确的图像文件。"; + show_process(pmsg, TRUE); + ATOMIC_CLR(processing); + break; + + case PROC_INVALID: + pmsg = "文件格式不正确或图像尺寸\n超过屏幕显示范围。"; + show_process(pmsg, TRUE); + ATOMIC_CLR(processing); + break; + + case PROC_WRITE: + pmsg = "正在写入图像文件, 请稍候..."; + show_process(pmsg, TRUE); + ATOMIC_CLR(processing); + break; + + case PROC_FINISH: + pmsg = "成功写入图像文件, 点击\n提示框退出。"; + show_process(pmsg, TRUE); + ATOMIC_CLR(processing); + break; + + default: + break; + } + + if (time_after(get_current_time(), last_time)) { + update_datetime(); + last_time = get_current_time() + 1000; + } +} + diff --git a/800x480/MK_single.c b/800x480/MK_single.c new file mode 100644 index 0000000..2f27fb4 --- /dev/null +++ b/800x480/MK_single.c @@ -0,0 +1,1102 @@ +/* + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are + * met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * * Redistributions in binary form must reproduce the above + * copyright notice, this list of conditions and the following disclaimer + * in the documentation and/or other materials provided with the + * distribution. + * * Neither the name of the nor the names of its + * contributors may be used to endorse or promote products derived from + * this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT + * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR + * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT + * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT + * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, + * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY + * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE + * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + * + */ +#include +#include +#include +#include +#include +#include +#include "lvgl/lvgl.h" +#include "MK_macro.h" +#include "MK_types.h" +#include "MK_func.h" + +static lv_obj_t *page = NULL; +static lv_obj_t *lbl_curpos = NULL; +static lv_obj_t *btn_terminate = NULL; +static lv_obj_t *btn_start = NULL; +static lv_obj_t *btn_gohome = NULL; +static lv_obj_t *led_motor = NULL; +static lv_obj_t *lbl_target_comp = NULL; +static lv_obj_t *lbl_max = NULL; +static lv_obj_t *lbl_min = NULL; +static lv_obj_t *btn_inc = NULL; +static lv_obj_t *btn_dec = NULL; + +static struct params_data *params; +static struct runtime_data *runtime; +static u32 last_time; +static s32 last_position; +static s32 data_changed; +static s32 last_motor; + +/* 前置函数声明 */ +static void ev_start(lv_event_t *e); + +static void update_page(void) +{ + char buf[260]; + + /* 更新最大最小值显示 */ + const char *p1 = get_text_from_pool(TID_max); + const char *p2 = get_text_from_pool(TID_min); + sprintf(buf, "%s: %.1f", p1, runtime->max / STORE_RATE); + lv_label_set_text(lbl_max, buf); + + sprintf(buf, "%s: %.1f", p2, runtime->min / STORE_RATE); + lv_label_set_text(lbl_min, buf); +} + +static void target_comp_update(const char *val, void *user_data) +{ + lv_obj_t *ta = (lv_obj_t *)user_data; + char buf[16]; + + s32 v = strtof(val, NULL) * STORE_RATE; + runtime->target_comp = v; + if (params->diagonal) { + runtime->origin = params->origin + runtime->target_comp; + runtime_data_update(); + update_page(); + } + data_changed = TRUE; + + sprintf(buf, "%.1f", v / STORE_RATE); + lv_textarea_set_text(ta, buf); +} + +static void fixed_update(const char *val, void *user_data) +{ + lv_obj_t *ta = (lv_obj_t *)user_data; + char buf[16]; + + s32 v = strtof(val, NULL) * STORE_RATE; + runtime->fixed = v; + runtime->target = v; + data_changed = TRUE; + + sprintf(buf, "%.1f", v / STORE_RATE); + lv_textarea_set_text(ta, buf); + + if (params->auto_start) { + ev_start(NULL); + } +} + +static void inching_update(const char *val, void *user_data) +{ + lv_obj_t *ta = (lv_obj_t *)user_data; + char buf[16]; + + s32 v = strtof(val, NULL) * STORE_RATE; + s32 btn_id = (s32)lv_obj_get_user_data(ta); + if (btn_id == TA_INC) { + runtime->inching = v; + } + else if (btn_id == TA_DEC) { + runtime->inching2 = v; + } + data_changed = TRUE; + + sprintf(buf, "%.1f", v / STORE_RATE); + lv_textarea_set_text(ta, buf); +} + +static void ev_inching(lv_event_t *e) +{ + static struct ime_cb ime_cb; + lv_obj_t *obj = lv_event_get_target(e); + + memset(&ime_cb, 0, sizeof(struct ime_cb)); + ime_cb.user_data = obj; + ime_cb.update = inching_update; + + /* 调用输入框 */ + buzz(); + create_ime(0, CUSTOM_VALUE_MAX, &ime_cb); +} + +static void ev_target(lv_event_t *e) +{ + static struct ime_cb ime_cb; + lv_obj_t *obj = lv_event_get_target(e); + + memset(&ime_cb, 0, sizeof(struct ime_cb)); + ime_cb.user_data = obj; + ime_cb.verify = verify_range_common; + ime_cb.update = fixed_update; + + /* 调用输入框 */ + buzz(); + create_ime(runtime->min / STORE_RATE, runtime->max / STORE_RATE, &ime_cb); +} + +s32 verify_target_comp(const char *val, void *user_data) +{ + s32 v = strtoul(val, NULL, 10); + + UNUSED(user_data); + if (v < 0 || v > 200) { + return 0; + } + + return 1; +} + +static void ev_target_comp(lv_event_t *e) +{ + static struct ime_cb ime_cb; + lv_obj_t *obj = lv_event_get_target(e); + + memset(&ime_cb, 0, sizeof(struct ime_cb)); + ime_cb.user_data = obj; + ime_cb.verify = verify_target_comp; + ime_cb.update = target_comp_update; + + /* 调用输入框 */ + buzz(); + create_ime(1, 99, &ime_cb); +} + +static void ev_navigate(lv_event_t *e) +{ + lv_obj_t *obj = lv_event_get_target(e); + + s32 win_id = (s32)lv_obj_get_user_data(obj); + + buzz(); + dprint("window id: %d\n", win_id); + set_current_window(win_id); +} + +static void ev_terminate(lv_event_t *e) +{ + UNUSED(e); + + buzz(); + motor_terminate(); + lv_obj_add_state(btn_start, LV_STATE_DISABLED); + lv_obj_set_style_bg_color(btn_gohome, lv_color_hex(0xa8a8a8), 0); +} + +static void ev_gohome(lv_event_t *e) +{ + lv_obj_t *obj = lv_event_get_target(e); + + buzz(); + motor_reset(); + lv_obj_add_state(btn_start, LV_STATE_DISABLED); + lv_obj_set_style_bg_color(obj, lv_color_hex(0x00a5ff), 0); +} + +static void ev_start(lv_event_t *e) +{ + UNUSED(e); + + dprint("running: %d, runtime->target=%d\n", get_running_status(), runtime->target); + if (!get_running_status()) { + buzz(); + runtime->target = runtime->fixed; +#if defined(ZZF_SPEC_2_1_4) + if (lv_obj_has_state(btn_inc, LV_STATE_CHECKED)) { + runtime->target += runtime->inching; + } + else if (lv_obj_has_state(btn_dec, LV_STATE_CHECKED)) { + runtime->target += runtime->inching2; + } +#endif + set_target_position(runtime->target); + if (runtime->sw_print) { + /* 同步打印 */ + printer_action(runtime->target); + } + } +} + +static void ev_print(lv_event_t *e) +{ + UNUSED(e); + + buzz(); + + /* 手动打印 */ + printer_action(runtime->target); +} + +static void ev_auto_print(lv_event_t *e) +{ + lv_obj_t *obj = lv_event_get_target(e); + + buzz(); + if (lv_obj_has_state(obj, LV_STATE_CHECKED)) { + runtime->sw_print = TRUE; + } + else { + runtime->sw_print = FALSE; + } +} + +static void ev_adjust(lv_event_t *e) +{ + lv_obj_t *obj = lv_event_get_target(e); + +#if defined(ZZF_SPEC_2_1_4) + buzz(); + s32 btn_id = (s32)lv_obj_get_user_data(obj); + if (btn_id == BTN_INC) { + if (lv_obj_has_state(obj, LV_STATE_CHECKED)) { + lv_obj_clear_state(btn_dec, LV_STATE_CHECKED); + } + } + else { + if (lv_obj_has_state(obj, LV_STATE_CHECKED)) { + lv_obj_clear_state(btn_inc, LV_STATE_CHECKED); + } + } +#else + if (get_running_status()) { + return; + } + + buzz(); + + s32 btn_id = (s32)lv_obj_get_user_data(obj); + if (btn_id == BTN_INC) { + runtime->target += runtime->inching; + } + else { + runtime->target -= runtime->inching; + } + if (runtime->target > runtime->max) { + runtime->target = runtime->max; + } + else if (runtime->target < runtime->min) { + runtime->target = runtime->min; + } + + set_target_position(runtime->target); +#endif +} + +static s32 verify_setting_pwd(const char *val, void *user_data) +{ + char buf[12] = {0}; + u32 super; + + UNUSED(user_data); + + /* 超级密码 */ + super = calc_super_passwd(); + snprintf(buf, sizeof(buf), "%u", super); + dprint("super: %s\n", buf); + if (strncmp(val + 1, buf, 8) == 0) { + return 1; + } + + if (strncmp(val + 1, params->passwd[LEVEL4], PWD_MAX) == 0) { + return 1; + } + + return 0; +} + +static void invoke_window_update(const char *val, void *user_data) +{ + s32 wid = (s32)user_data; + + UNUSED(val); + set_current_window(wid); +} + +static void ev_setting(lv_event_t *e) +{ + static struct ime_cb ime_cb; + lv_obj_t *obj = lv_event_get_target(e); + + memset(&ime_cb, 0, sizeof(struct ime_cb)); + ime_cb.user_data = lv_obj_get_user_data(obj); + ime_cb.pwd_mode = 1; + ime_cb.verify = verify_setting_pwd; + ime_cb.update = invoke_window_update; + + /* 调用输入框 */ + buzz(); + create_ime(0, 0, &ime_cb); +} + +static s32 verify_tester_pwd(const char *val, void *user_data) +{ + char buf[12] = {0}; + u32 super; + + UNUSED(user_data); + + /* 超级密码 */ + super = calc_super_passwd(); + snprintf(buf, sizeof(buf), "%u", super); + dprint("super: %s\n", buf); + if (strncmp(val + 1, buf, 8) == 0) { + return 1; + } + + if (strncmp(val + 1, "88888", PWD_MAX) == 0) { + return 1; + } + + return 0; +} + +static void ev_tester(lv_event_t *e) +{ + static struct ime_cb ime_cb; + lv_obj_t *obj = lv_event_get_target(e); + + memset(&ime_cb, 0, sizeof(struct ime_cb)); + ime_cb.user_data = lv_obj_get_user_data(obj); + ime_cb.pwd_mode = 1; + ime_cb.verify = verify_tester_pwd; + ime_cb.update = invoke_window_update; + + /* 调用输入框 */ + buzz(); + create_ime(0, 0, &ime_cb); +} + +static s32 verify_level2_pwd(const char *val, void *user_data) +{ + s32 i; + + UNUSED(user_data); + for (i = LEVEL2; i < LEVEL_MAX; ++i) { + if (strncmp(val + 1, params->passwd[i], PWD_MAX) == 0) { + return 1; + } + } + + return 0; +} + +static void ev_custom(lv_event_t *e) +{ + static struct ime_cb ime_cb; + lv_obj_t *obj = lv_event_get_target(e); + + memset(&ime_cb, 0, sizeof(struct ime_cb)); + ime_cb.user_data = lv_obj_get_user_data(obj); + ime_cb.pwd_mode = 1; + ime_cb.verify = verify_level2_pwd; + ime_cb.update = invoke_window_update; + + /* 调用输入框 */ + buzz(); + create_ime(0, 0, &ime_cb); +} + +static s32 verify_level1_pwd(const char *val, void *user_data) +{ + s32 i; + + UNUSED(user_data); + for (i = LEVEL1; i < LEVEL_MAX; ++i) { + if (strncmp(val + 1, params->passwd[i], PWD_MAX) == 0) { + return 1; + } + } + + return 0; +} + +static void ev_origin(lv_event_t *e) +{ + static struct ime_cb ime_cb; + lv_obj_t *obj = lv_event_get_target(e); + + memset(&ime_cb, 0, sizeof(struct ime_cb)); + ime_cb.user_data = lv_obj_get_user_data(obj); + ime_cb.pwd_mode = 1; + ime_cb.verify = verify_level1_pwd; + ime_cb.update = invoke_window_update; + + /* 调用输入框 */ + buzz(); + create_ime(0, 0, &ime_cb); +} + +static void create_inching(lv_obj_t *parent) +{ + lv_obj_t *btn; + lv_obj_t *label; + lv_obj_t *ta; + char buf[16]; + lv_style_t *style_input = get_project_style(STYLE_INPUT); + lv_style_t *style_button = get_project_style(STYLE_BUTTON); + lv_style_t *style_label = get_project_style(STYLE_LABEL); + + /* 增加 */ + btn = lv_btn_create(parent); + lv_obj_set_size(btn, 85, 48); + lv_obj_set_user_data(btn, (void *)BTN_INC); + lv_obj_add_style(btn, style_button, 0); + lv_obj_set_style_bg_color(btn, lv_color_hex(0xa8a8a8), 0); + lv_obj_align(btn, LV_ALIGN_TOP_LEFT, 600, 80); +#if defined(ZZF_SPEC_2_1_4) + lv_obj_set_style_text_color(btn, lv_color_hex(0), LV_STATE_CHECKED); + lv_obj_set_style_bg_color(btn, lv_color_hex(0x00ff00), LV_STATE_CHECKED); + lv_obj_add_flag(btn, LV_OBJ_FLAG_CHECKABLE); +#endif + label = lv_label_create(btn); +#if defined(ZZF_SPEC_2_1_4) + lv_label_set_text(label, "外框"); +#else + lv_label_set_text(label, LV_SYMBOL_LEFT LV_SYMBOL_LEFT); +#endif + lv_obj_set_style_text_font(label, &sans_m_24, 0); + lv_obj_set_style_text_color(label, lv_color_hex(0), 0); + lv_obj_align(label, LV_ALIGN_CENTER, 0, 0); + lv_obj_add_event_cb(btn, ev_adjust, LV_EVENT_CLICKED, NULL); + btn_inc = btn; + + /* 减少 */ + btn = lv_btn_create(parent); + lv_obj_set_size(btn, 85, 48); + lv_obj_set_user_data(btn, (void *)BTN_DEC); + lv_obj_add_style(btn, style_button, 0); + lv_obj_set_style_bg_color(btn, lv_color_hex(0xa8a8a8), 0); + lv_obj_align(btn, LV_ALIGN_TOP_LEFT, 695, 80); +#if defined(ZZF_SPEC_2_1_4) + lv_obj_set_style_text_color(btn, lv_color_hex(0), LV_STATE_CHECKED); + lv_obj_set_style_bg_color(btn, lv_color_hex(0x00ff00), LV_STATE_CHECKED); + lv_obj_add_flag(btn, LV_OBJ_FLAG_CHECKABLE); +#endif + label = lv_label_create(btn); +#if defined(ZZF_SPEC_2_1_4) + lv_label_set_text(label, "内框"); +#else + lv_label_set_text(label, LV_SYMBOL_RIGHT LV_SYMBOL_RIGHT); +#endif + lv_obj_set_style_text_font(label, &sans_m_24, 0); + lv_obj_set_style_text_color(label, lv_color_hex(0), 0); + lv_obj_align(label, LV_ALIGN_CENTER, 0, 0); + lv_obj_add_event_cb(btn, ev_adjust, LV_EVENT_CLICKED, NULL); + btn_dec = btn; + + ta = lv_textarea_create(parent); + lv_obj_set_user_data(ta, (void *)TA_INC); + lv_textarea_set_one_line(ta, true); + lv_textarea_set_align(ta, LV_TEXT_ALIGN_CENTER); + lv_obj_add_style(ta, style_input, 0); + sprintf(buf, "%.1f", runtime->inching / STORE_RATE); + lv_textarea_set_text(ta, buf); + lv_obj_set_style_text_font(ta, &sans_m_30, 0); +#if defined(ZZF_SPEC_2_1_4) + lv_obj_set_size(ta, 80, 48); + lv_obj_align_to(ta, btn_inc, LV_ALIGN_OUT_BOTTOM_MID, 0, 10); +#else + lv_obj_set_size(ta, 108, 48); + lv_obj_align(ta, LV_ALIGN_TOP_LEFT, 602, 138); +#endif + lv_textarea_set_accepted_chars(ta, "0123456789.-"); + lv_obj_set_style_opa(ta, LV_OPA_TRANSP, LV_PART_CURSOR); + lv_obj_set_style_pad_top(ta, 13, 0); + lv_obj_add_event_cb(ta, ev_inching, LV_EVENT_CLICKED, NULL); + +#if defined(ZZF_SPEC_2_1_4) + ta = lv_textarea_create(parent); + lv_obj_set_user_data(ta, (void *)TA_DEC); + lv_textarea_set_one_line(ta, true); + lv_textarea_set_align(ta, LV_TEXT_ALIGN_CENTER); + lv_obj_add_style(ta, style_input, 0); + sprintf(buf, "%.1f", runtime->inching2 / STORE_RATE); + lv_textarea_set_text(ta, buf); + lv_obj_set_style_text_font(ta, &sans_m_30, 0); + lv_obj_set_size(ta, 80, 48); + lv_obj_align_to(ta, btn_dec, LV_ALIGN_OUT_BOTTOM_MID, 0, 10); + lv_textarea_set_accepted_chars(ta, "0123456789.-"); + lv_obj_set_style_opa(ta, LV_OPA_TRANSP, LV_PART_CURSOR); + lv_obj_set_style_pad_top(ta, 13, 0); + lv_obj_add_event_cb(ta, ev_inching, LV_EVENT_CLICKED, NULL); +#endif + +#if !defined(ZZF_SPEC_2_1_4) + label = lv_label_create(parent); + lv_obj_set_size(label, 68, 48); + lv_label_set_text(label, "mm"); + lv_obj_add_style(label, style_label, 0); + lv_obj_set_style_bg_color(label, lv_color_white(), 0); + lv_obj_set_style_bg_opa(label, LV_OPA_COVER, 0); + lv_obj_set_style_text_align(label, LV_TEXT_ALIGN_CENTER, 0); + lv_obj_set_style_text_color(label, lv_color_hex(0), 0); + lv_obj_set_style_pad_top(label, 10, 0); + lv_obj_align_to(label, ta, LV_ALIGN_OUT_RIGHT_MID, 0, 0); +#endif +} + +static void create_navigate(lv_obj_t *parent) +{ + lv_obj_t *btn; + lv_obj_t *label; + const char *text; + lv_style_t *style_button = get_project_style(STYLE_BUTTON); + + /* 原点设置 */ + btn = lv_btn_create(parent); + lv_obj_set_user_data(btn, (void *)WM_ORIGIN); + lv_obj_set_size(btn, 180, 60); + lv_obj_add_style(btn, style_button, 0); + lv_obj_set_style_bg_color(btn, lv_color_hex(0xa8a8a8), 0); + lv_obj_align(btn, LV_ALIGN_TOP_LEFT, 22, 82); + label = lv_label_create(btn); + text = get_text_from_pool(TID_origin); + lv_label_set_text(label, text); + lv_obj_set_style_text_font(label, &sans_m_24, 0); + lv_obj_set_style_text_color(label, lv_color_hex(0x000000), 0); + lv_obj_align(label, LV_ALIGN_CENTER, 0, 0); + lv_obj_add_event_cb(btn, ev_origin, LV_EVENT_CLICKED, NULL); + + /* 使用教程 */ + btn = lv_btn_create(parent); + lv_obj_set_user_data(btn, (void *)WM_TUTORIAL); + lv_obj_set_size(btn, 180, 60); + lv_obj_add_style(btn, style_button, 0); + lv_obj_set_style_bg_color(btn, lv_color_hex(0xa8a8a8), 0); + lv_obj_align(btn, LV_ALIGN_TOP_LEFT, 22, 164); + label = lv_label_create(btn); + text = get_text_from_pool(TID_tutorial); + lv_label_set_text(label, text); + lv_obj_set_style_text_font(label, &sans_m_24, 0); + lv_obj_set_style_text_color(label, lv_color_hex(0x000000), 0); + lv_obj_align(label, LV_ALIGN_CENTER, 0, 0); + lv_obj_add_event_cb(btn, ev_navigate, LV_EVENT_CLICKED, NULL); + + /* 无线模式 */ + btn = lv_btn_create(parent); + lv_obj_set_user_data(btn, (void *)WM_WIRELESS); + lv_obj_set_size(btn, 180, 60); + lv_obj_add_style(btn, style_button, 0); + lv_obj_set_style_bg_color(btn, lv_color_hex(0xa8a8a8), 0); + lv_obj_align(btn, LV_ALIGN_TOP_LEFT, 22, 246); + label = lv_label_create(btn); + text = get_text_from_pool(TID_wireless); + lv_label_set_text(label, text); + lv_obj_set_style_text_font(label, &sans_m_24, 0); + lv_obj_set_style_text_color(label, lv_color_hex(0x000000), 0); + lv_obj_align(label, LV_ALIGN_CENTER, 0, 0); + lv_obj_add_event_cb(btn, ev_navigate, LV_EVENT_CLICKED, NULL); + + /* 联动模式 */ + btn = lv_btn_create(parent); + lv_obj_set_user_data(btn, (void *)WM_BATCH); + lv_obj_set_size(btn, 180, 60); + lv_obj_add_style(btn, style_button, 0); + lv_obj_set_style_bg_color(btn, lv_color_hex(0xa8a8a8), 0); + lv_obj_align(btn, LV_ALIGN_TOP_LEFT, 22, 328); + label = lv_label_create(btn); + text = get_text_from_pool(TID_batch); + lv_label_set_text(label, text); + lv_obj_set_style_text_font(label, &sans_m_24, 0); + lv_obj_set_style_text_color(label, lv_color_hex(0x000000), 0); + lv_obj_align(label, LV_ALIGN_CENTER, 0, 0); + lv_obj_add_event_cb(btn, ev_navigate, LV_EVENT_CLICKED, NULL); +} + +static void create_curpos(lv_obj_t *parent) +{ + lv_obj_t *frame; + lv_obj_t *label; + lv_obj_t *ta; + const char *text; + lv_style_t *style_label = get_project_style(STYLE_LABEL); + + /* 标题文字 */ + label = lv_label_create(parent); + lv_obj_add_style(label, style_label, 0); + text = get_text_from_pool(TID_curpos); + lv_label_set_text(label, text); + lv_obj_set_style_text_align(label, LV_TEXT_ALIGN_CENTER, 0); + lv_obj_align(label, LV_ALIGN_TOP_MID, 0, 15); + + /* 位置值背景框 */ + frame = lv_obj_create(parent); + lv_obj_set_size(frame, LV_PCT(100), 80); + lv_obj_set_style_radius(frame, 0, 0); + lv_obj_set_style_border_width(frame, 0, 0); + lv_obj_set_style_pad_left(frame, 0, 0); + lv_obj_set_style_pad_right(frame, 0, 0); + lv_obj_set_style_pad_top(frame, 0, 0); + lv_obj_set_style_pad_bottom(frame, 0, 0); + lv_obj_set_style_bg_color(frame, lv_color_hex(0x444b5a), 0); + lv_obj_align(frame, LV_ALIGN_TOP_MID, 0, 60); + + /* 位置值文字 */ + ta = lv_label_create(frame); + lv_obj_set_style_text_font(ta, &sans_b_36, 0); + lv_obj_set_style_text_color(ta, lv_color_hex(0xf0f0f0), 0); + lv_label_set_text(ta, "0"); + lv_obj_set_style_text_align(ta, LV_TEXT_ALIGN_CENTER, 0); + lv_obj_align(ta, LV_ALIGN_CENTER, -35, 0); + lbl_curpos = ta; + + /* 单位符号 */ + label = lv_label_create(frame); + lv_obj_add_style(label, style_label, 0); + lv_obj_set_style_text_font(label, &sans_m_30, 0); +// lv_obj_set_style_text_color(label, lv_color_hex(0), 0); + lv_label_set_text(label, "mm"); + lv_obj_align(label, LV_ALIGN_BOTTOM_RIGHT, -25, -16); +} + +static void create_target(lv_obj_t *parent) +{ + lv_obj_t *frame; + lv_obj_t *label; + lv_obj_t *ta; + const char *text; + char buf[16]; + lv_style_t *style_input = get_project_style(STYLE_INPUT); + lv_style_t *style_label = get_project_style(STYLE_LABEL); + + /* 标题文字 */ + label = lv_label_create(parent); + lv_obj_add_style(label, style_label, 0); + text = get_text_from_pool(TID_target_size); + lv_label_set_text(label, text); + lv_obj_set_style_text_align(label, LV_TEXT_ALIGN_CENTER, 0); + if (params->diagonal) { + lv_obj_align(label, LV_ALIGN_TOP_MID, -55, 15); + } + else { + lv_obj_align(label, LV_ALIGN_TOP_MID, 0, 15); + } + + /* 材料宽度标题, 只有在45度切割功能打开时才显示 */ + if (params->diagonal) { + label = lv_label_create(parent); + lv_obj_add_style(label, style_label, 0); + text = get_text_from_pool(TID_target_comp); + lv_label_set_text(label, text); + lv_obj_set_style_text_align(label, LV_TEXT_ALIGN_CENTER, 0); + lv_obj_align(label, LV_ALIGN_TOP_MID, 110, 15); + } + + /* 输入框背景 */ + frame = lv_obj_create(parent); + lv_obj_set_size(frame, LV_PCT(100), 80); + lv_obj_set_style_radius(frame, 0, 0); + lv_obj_set_style_border_width(frame, 0, 0); + lv_obj_set_style_bg_color(frame, lv_color_hex(0x444b5a), 0); + lv_obj_set_style_pad_left(frame, 0, 0); + lv_obj_set_style_pad_right(frame, 0, 0); + lv_obj_set_style_pad_top(frame, 0, 0); + lv_obj_set_style_pad_bottom(frame, 0, 0); + lv_obj_align(frame, LV_ALIGN_TOP_MID, 0, 60); + + /* 目标尺寸 */ + ta = lv_textarea_create(frame); + lv_textarea_set_one_line(ta, true); + lv_textarea_set_align(ta, LV_TEXT_ALIGN_CENTER); + lv_obj_add_style(ta, style_input, 0); + lv_obj_set_style_pad_top(ta, 22, 0); + snprintf(buf, sizeof(buf), "%.1f", runtime->fixed / STORE_RATE); + lv_textarea_set_text(ta, buf); + lv_obj_set_style_text_font(ta, &sans_b_36, 0); + if (params->diagonal) { + lv_obj_set_size(ta, 210, 70); + } + else { + lv_obj_set_size(ta, 320, 70); + } + lv_textarea_set_accepted_chars(ta, "0123456789.-"); + lv_obj_set_style_opa(ta, LV_OPA_TRANSP, LV_PART_CURSOR); + lv_obj_align(ta, LV_ALIGN_LEFT_MID, 10, 0); + lv_obj_add_event_cb(ta, ev_target, LV_EVENT_CLICKED, NULL); + + /* 目标补偿值(材料宽度) */ + ta = lv_textarea_create(frame); + lv_textarea_set_one_line(ta, true); + lv_textarea_set_align(ta, LV_TEXT_ALIGN_CENTER); + lv_obj_add_style(ta, style_input, 0); + lv_obj_set_style_pad_top(ta, 22, 0); + if (!params->diagonal) { + lv_obj_add_flag(ta, LV_OBJ_FLAG_HIDDEN); + sprintf(buf, "0"); + } + else { + snprintf(buf, sizeof(buf), "%.1f", runtime->target_comp / STORE_RATE); + } + lv_textarea_set_text(ta, buf); + lv_obj_set_style_text_font(ta, &sans_b_36, 0); + lv_obj_set_size(ta, 100, 70); + lv_textarea_set_accepted_chars(ta, "0123456789."); + lv_obj_set_style_opa(ta, LV_OPA_TRANSP, LV_PART_CURSOR); + lv_obj_align(ta, LV_ALIGN_RIGHT_MID, -10, 0); + lv_obj_add_event_cb(ta, ev_target_comp, LV_EVENT_CLICKED, NULL); + + lbl_target_comp = ta; + +#if defined(ZZF_USE_UNUSED) + /* 单位符号 */ + label = lv_label_create(frame); + lv_label_set_text(label, "mm"); + lv_obj_set_style_text_font(label, &sans_m_30, 0); + lv_obj_set_style_text_color(label, lv_color_hex(0), 0); + lv_obj_align(label, LV_ALIGN_BOTTOM_RIGHT, -25, -16); +#endif +} + +static void create_printer(lv_obj_t *parent) +{ + lv_obj_t *btn; + lv_obj_t *label; + const char *text; + lv_style_t *style_button = get_project_style(STYLE_BUTTON); + + /* 多段补偿 */ + btn = lv_btn_create(parent); + lv_obj_set_user_data(btn, (void *)WM_CUSTOM); + lv_obj_set_size(btn, 180, 48); + lv_obj_add_style(btn, style_button, 0); + lv_obj_set_style_bg_color(btn, lv_color_hex(0xa8a8a8), 0); + lv_obj_align(btn, LV_ALIGN_TOP_LEFT, 600, 212); + label = lv_label_create(btn); + text = get_text_from_pool(TID_custom); + lv_label_set_text_static(label, text); + lv_obj_align(label, LV_ALIGN_CENTER, 0, 0); + lv_obj_add_event_cb(btn, ev_custom, LV_EVENT_CLICKED, NULL); + + /* 打印开关 */ + btn = lv_btn_create(parent); + lv_obj_set_size(btn, 180, 48); + lv_obj_add_style(btn, style_button, 0); + lv_obj_set_style_bg_color(btn, lv_color_hex(0xa8a8a8), 0); + lv_obj_set_style_text_color(btn, lv_color_hex(0), LV_STATE_CHECKED); + lv_obj_set_style_bg_color(btn, lv_color_hex(0x00ff00), LV_STATE_CHECKED); + lv_obj_add_flag(btn, LV_OBJ_FLAG_CHECKABLE); + if (runtime->sw_print) { + lv_obj_add_state(btn, LV_STATE_CHECKED); + } + else { + lv_obj_clear_state(btn, LV_STATE_CHECKED); + } + lv_obj_align(btn, LV_ALIGN_TOP_LEFT, 600, 276); + label = lv_label_create(btn); + text = get_text_from_pool(TID_print_sw); + lv_label_set_text(label, text); + lv_obj_align(label, LV_ALIGN_CENTER, 0, 0); + lv_obj_add_event_cb(btn, ev_auto_print, LV_EVENT_CLICKED, NULL); + + /* 打印 */ + btn = lv_btn_create(parent); + lv_obj_set_size(btn, 180, 48); + lv_obj_add_style(btn, style_button, 0); + lv_obj_set_style_bg_color(btn, lv_color_hex(0xa8a8a8), 0); + lv_obj_align(btn, LV_ALIGN_TOP_LEFT, 600, 340); + label = lv_label_create(btn); + text = get_text_from_pool(TID_print); + lv_label_set_text(label, text); + lv_obj_align(label, LV_ALIGN_CENTER, 0, 0); + lv_obj_add_event_cb(btn, ev_print, LV_EVENT_CLICKED, NULL); +} + +static void page_init(void) +{ + lv_style_t *style_main = get_project_style(STYLE_PAGE); + + /* 创建页面容器 */ + page = lv_obj_create(lv_scr_act()); + lv_obj_set_size(page, LV_PCT(100), LV_PCT(100)); + lv_obj_add_style(page, style_main, LV_PART_MAIN); + lv_obj_set_style_bg_color(page, lv_color_hex(0x444b5a), 0); +} + +static void page_deinit(void) +{ + if (page != NULL) { + lv_obj_del(page); + page = NULL; + } +} + +static void page_head_init(lv_obj_t *parent) +{ + lv_obj_t *frame; + lv_obj_t *btn; + lv_obj_t *label; + const char *text; + char buf[260]; + lv_style_t *style_main = get_project_style(STYLE_PAGE); + lv_style_t *style_button = get_project_style(STYLE_BUTTON); + + /* 标题栏背景 */ + frame = lv_obj_create(parent); + lv_obj_set_size(frame, LV_PCT(100), 60); + lv_obj_set_style_bg_color(frame, lv_color_hex(0x586273), 0); + lv_obj_add_style(frame, style_main, LV_PART_MAIN); + lv_obj_set_style_shadow_width(frame, 16, 0); + + lv_obj_t *logo = lv_img_create(frame); + lv_obj_set_user_data(logo, (void *)WM_SETUP); + lv_img_set_src(logo, "P:assets/lvgl_logo.png"); + lv_obj_align(logo, LV_ALIGN_LEFT_MID, 15, 0); + lv_obj_add_flag(logo, LV_OBJ_FLAG_CLICKABLE); + lv_obj_add_event_cb(logo, ev_setting, LV_EVENT_CLICKED, NULL); + led_motor = lv_led_create(logo); + lv_obj_set_size(led_motor, 8, 8); + lv_led_set_brightness(led_motor, 150); + lv_led_set_color(led_motor, lv_color_hex(0x00ff00)); + lv_obj_align(led_motor, LV_ALIGN_CENTER, 0, 0); + lv_led_off(led_motor); + + /* 标题栏文字 */ + label = lv_label_create(frame); + text = get_text_from_pool(TID_inching); + lv_label_set_text(label, text); + lv_obj_set_style_text_font(label, &sans_r_30, 0); + lv_obj_set_style_text_color(label, lv_color_hex(0xd0d0d0), 0); + lv_obj_align(label, LV_ALIGN_LEFT_MID, 70, 0); + + /* 标题栏'最大值最小值显示' */ + /* 提示文字 */ + const char *p1 = get_text_from_pool(TID_max); + const char *p2 = get_text_from_pool(TID_min); + label = lv_label_create(frame); + sprintf(buf, "%s: %.1f", p1, runtime->max / STORE_RATE); + lv_label_set_text(label, buf); + lv_obj_set_style_text_font(label, &sans_r_18, 0); + lv_obj_set_style_text_color(label, lv_color_hex(0xd0d0d0), 0); + lv_obj_align(label, LV_ALIGN_CENTER, -80, 0); + lbl_max = label; + + label = lv_label_create(frame); + sprintf(buf, "%s: %.1f", p2, runtime->min / STORE_RATE); + lv_label_set_text(label, buf); + lv_obj_set_style_text_font(label, &sans_r_18, 0); + lv_obj_set_style_text_color(label, lv_color_hex(0xd0d0d0), 0); + lv_obj_align(label, LV_ALIGN_CENTER, 80, 0); + lbl_min = label; + + /* 版本及编译日期 */ + s32 fw = get_mcu_version(); + label = lv_label_create(frame); + lv_obj_set_user_data(label, (void *)WM_TESTER); + sprintf(buf, "Ver: %s-%d.%d.%d.%d\nBuild: %s", REVERSION, + (fw >> 24) & 0xff, (fw >> 16) & 0xff, (fw >> 8) & 0xff, fw & 0xff, + __DATE__); + lv_label_set_text(label, buf); + lv_obj_set_style_text_align(label, LV_TEXT_ALIGN_RIGHT, 0); + lv_obj_set_style_text_font(label, &sans_r_18, 0); + lv_obj_set_style_text_color(label, lv_color_hex(0xa8a8a8), 0); + lv_obj_align(label, LV_ALIGN_RIGHT_MID, -10, 0); + lv_obj_add_flag(label, LV_OBJ_FLAG_CLICKABLE); + lv_obj_add_event_cb(label, ev_tester, LV_EVENT_CLICKED, NULL); + + /* 状态栏背景 */ + frame = lv_obj_create(parent); + lv_obj_set_size(frame, LV_PCT(100), 70); + lv_obj_set_style_bg_color(frame, lv_color_hex(0x586273), 0); + lv_obj_add_style(frame, style_main, LV_PART_MAIN); + lv_obj_align(frame, LV_ALIGN_BOTTOM_MID, 0, 0); + lv_obj_set_style_border_width(frame, 2, 0); + lv_obj_set_style_border_color(frame, lv_color_hex(0xa8a8a8), 0); + lv_obj_set_style_border_side(frame, LV_BORDER_SIDE_TOP, 0); + + /* 状态栏'回原点'按钮 */ + btn = lv_btn_create(frame); + lv_obj_set_size(btn, 220, 54); + lv_obj_add_style(btn, style_button, 0); + if (get_gohome_status()) { + lv_obj_set_style_bg_color(btn, lv_color_hex(0x00a5ff), 0); + } + else { + lv_obj_set_style_bg_color(btn, lv_color_hex(0xa8a8a8), 0); + } + lv_obj_align(btn, LV_ALIGN_LEFT_MID, 10, 0); + label = lv_label_create(btn); + text = get_text_from_pool(TID_gohome); + lv_label_set_text(label, text); + lv_obj_set_style_text_font(label, &sans_r_30, 0); + lv_obj_set_style_text_color(label, lv_color_hex(0x000000), 0); + lv_obj_align(label, LV_ALIGN_CENTER, 0, 0); + lv_obj_add_event_cb(btn, ev_gohome, LV_EVENT_CLICKED, NULL); + btn_gohome = btn; + + /* 状态栏'启动运行'按钮 */ + btn = lv_btn_create(frame); + lv_obj_set_size(btn, 280, 54); + lv_obj_add_style(btn, style_button, 0); + lv_obj_set_style_bg_color(btn, lv_color_hex(0x00ff00), 0); + lv_obj_align(btn, LV_ALIGN_CENTER, 0, 0); + lv_obj_add_state(btn, LV_STATE_DISABLED); + label = lv_label_create(btn); + text = get_text_from_pool(TID_start); + lv_label_set_text(label, text); + lv_obj_set_style_text_font(label, &sans_r_30, 0); + lv_obj_set_style_text_color(label, lv_color_hex(0x000000), 0); + lv_obj_align(label, LV_ALIGN_CENTER, 0, 0); + lv_obj_add_event_cb(btn, ev_start, LV_EVENT_CLICKED, NULL); + btn_start = btn; + + /* 状态栏'急停'按钮 */ + btn = lv_btn_create(frame); + lv_obj_set_size(btn, 220, 54); + lv_obj_add_style(btn, style_button, 0); + lv_obj_set_style_bg_color(btn, lv_color_hex(0xff0000), 0); + lv_obj_align(btn, LV_ALIGN_RIGHT_MID, -10, 0); + label = lv_label_create(btn); + text = get_text_from_pool(TID_stop); + lv_label_set_text(label, text); + lv_obj_set_style_text_font(label, &sans_r_30, 0); + lv_obj_set_style_text_color(label, lv_color_hex(0xffffff), 0); + lv_obj_align(label, LV_ALIGN_CENTER, 0, 0); + lv_obj_add_event_cb(btn, ev_terminate, LV_EVENT_CLICKED, NULL); + btn_terminate = btn; +} + +static void page_body_init(lv_obj_t *parent) +{ + lv_obj_t *frame; + lv_obj_t *temp; + lv_style_t *style_meter = get_project_style(STYLE_METER); + + /* 创建导航功能区 */ + create_navigate(parent); + + /* 创建打印功能区 */ + create_printer(parent); + + /* 创建档板位置显示区背景 */ + frame = lv_obj_create(parent); + lv_obj_set_size(frame, 344, 145); + lv_obj_add_style(frame, style_meter, 0); + lv_obj_set_style_bg_color(frame, lv_color_hex(0x586273), 0); + lv_obj_set_style_border_color(frame, lv_color_hex(0x808a97), 0); + lv_obj_set_style_border_width(frame, 2, 0); + lv_obj_align(frame, LV_ALIGN_TOP_MID, 0, 80); + temp = frame; + + /* 挡板当前位置显示区 */ + create_curpos(frame); + + /* 创建目标尺寸输入区背景 */ + frame = lv_obj_create(parent); + lv_obj_set_size(frame, 344, 145); + lv_obj_add_style(frame, style_meter, 0); + lv_obj_set_style_bg_color(frame, lv_color_hex(0x586273), 0); + lv_obj_set_style_border_color(frame, lv_color_hex(0x808a97), 0); + lv_obj_set_style_border_width(frame, 2, 0); + lv_obj_align_to(frame, temp, LV_ALIGN_OUT_BOTTOM_MID, 0, 20); + + /* 目标尺寸输入区 */ + create_target(frame); + + /* 微调区 */ + create_inching(parent); +} + +s32 single_open(void *args) +{ + UNUSED(args); + + dprint("[%s]++\n", __func__); + + /* 获取参数数据接口 */ + params = get_params_data(); + + /* 获取运行时数据接口 */ + runtime = get_runtime_data(); + + /* 本地变量初始 */ + last_position = -1; + runtime->target = runtime->fixed; + data_changed = FALSE; + last_motor = -1; + + /* 创建页面背景对象 */ + page_init(); + + /* 创建页面body对象 */ + page_body_init(page); + + /* 创建页面head对象 */ + page_head_init(page); + + /* success */ + last_time = get_current_time(); + + return 0; +} + +void single_close(void) +{ + dprint("[%s]++\n", __func__); + page_deinit(); +} + +void single_update(void) +{ + s32 pos; + char buf[32]; + + /* 更新挡板位置 */ + pos = get_current_position(); + if (pos != last_position) { + sprintf(buf, "%.1f", pos / STORE_RATE); + lv_label_set_text(lbl_curpos, buf); + last_position = pos; + } + + /* 更新电机驱动状态 */ + s32 motor_opened = get_motor_status(); + if (motor_opened != last_motor) { + last_motor = motor_opened; + if (motor_opened) { + lv_led_on(led_motor); + } + else { + lv_led_off(led_motor); + } + } + + /* 根据回零状态控制是否可以操作 */ + if (get_gohome_status()) { + if (lv_obj_has_state(btn_start, LV_STATE_DISABLED)) { + lv_obj_clear_state(btn_start, LV_STATE_DISABLED); + dprint("clear button'start' disabled state.\n"); + } + } + + /* 保存数据 */ + if (data_changed) { + single_data_save(); + data_changed = FALSE; + } + + if (time_after(get_current_time(), last_time)) { + last_time = get_current_time() + 1000; + } +} diff --git a/800x480/MK_system.c b/800x480/MK_system.c new file mode 100644 index 0000000..9348c5e --- /dev/null +++ b/800x480/MK_system.c @@ -0,0 +1,734 @@ +/* + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are + * met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * * Redistributions in binary form must reproduce the above + * copyright notice, this list of conditions and the following disclaimer + * in the documentation and/or other materials provided with the + * distribution. + * * Neither the name of the nor the names of its + * contributors may be used to endorse or promote products derived from + * this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT + * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR + * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT + * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT + * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, + * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY + * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE + * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + * + */ +#include +#include +#include +#include +#include +#include +#include "lvgl/lvgl.h" +#include "MK_macro.h" +#include "MK_types.h" +#include "MK_func.h" + +static lv_obj_t *page = NULL; +static lv_obj_t *ta_year = NULL; +static lv_obj_t *ta_month = NULL; +static lv_obj_t *ta_day = NULL; +static lv_obj_t *ta_hour = NULL; +static lv_obj_t *ta_minute = NULL; +static lv_obj_t *ta_second = NULL; +static lv_obj_t *ta_pwd1 = NULL; +static lv_obj_t *ta_pwd2 = NULL; +static lv_obj_t *ta_pwd3 = NULL; +static lv_obj_t *ta_pwd4 = NULL; + +static struct params_data *params; +static struct runtime_data *runtime; +static u32 last_time; +static s32 params_changed; + +static void intf_update(void) +{ + time_t now; + struct tm *tm_now; + char buf[16]; + + time(&now); + tm_now = localtime(&now); + + /* 当前日期 */ + sprintf(buf, "%d", tm_now->tm_year + 1900); + lv_textarea_set_text(ta_year, buf); + sprintf(buf, "%02d", tm_now->tm_mon + 1); + lv_textarea_set_text(ta_month, buf); + sprintf(buf, "%02d", tm_now->tm_mday); + lv_textarea_set_text(ta_day, buf); + + /* 当前时间 */ + sprintf(buf, "%02d", tm_now->tm_hour); + lv_textarea_set_text(ta_hour, buf); + sprintf(buf, "%02d", tm_now->tm_min); + lv_textarea_set_text(ta_minute, buf); + sprintf(buf, "%02d", tm_now->tm_sec); + lv_textarea_set_text(ta_second, buf); + + /* 密码 */ + lv_textarea_set_text(ta_pwd1, params->passwd[0]); + lv_textarea_set_text(ta_pwd2, params->passwd[1]); + lv_textarea_set_text(ta_pwd3, params->passwd[2]); + lv_textarea_set_text(ta_pwd4, params->passwd[3]); +} + +static s32 verify_year(const char *val, void *user_data) +{ + s32 v = strtol(val, NULL, 10); + + UNUSED(user_data); + if (v >= 2000 && v < 3000) { + return 1; + } + + return 0; +} + +static s32 verify_month(const char *val, void *user_data) +{ + s32 v = strtol(val, NULL, 10); + + UNUSED(user_data); + if (v > 0 && v <= 12) { + return 1; + } + + return 0; +} + +static s32 verify_day(const char *val, void *user_data) +{ + s32 v = strtol(val, NULL, 10); + + UNUSED(user_data); + if (v > 0 && v <= 31) { + return 1; + } + + return 0; +} + +static s32 verify_hour(const char *val, void *user_data) +{ + s32 v = strtol(val, NULL, 10); + + UNUSED(user_data); + if (v >= 0 && v < 24) { + return 1; + } + + return 0; +} + +static s32 verify_minute_second(const char *val, void *user_data) +{ + s32 v = strtol(val, NULL, 10); + + UNUSED(user_data); + if (v >= 0 && v < 60) { + return 1; + } + + return 0; +} + +static s32 verify_passwd(const char *val, void *user_data) +{ + UNUSED(user_data); + size_t len = strlen(val); + + if (len > 0) { + len -= 1; /* 最前面有1个符号占位符 */ + } + + if (len >= PWD_MIN && len <= PWD_MAX) { + return 1; + } + + return 0; +} + +static void datetime_value_update(const char *val, void *user_data) +{ + lv_obj_t *ta = (lv_obj_t *)user_data; + s32 ta_id = (s32)lv_obj_get_user_data(ta); + char buf[16]; + s32 v = strtol(val, NULL, 10); + + /* 值设定 */ + switch (ta_id) { + case TA_YEAR: + sprintf(buf, "%d", v); + break; + + case TA_MONTH: + case TA_DAY: + case TA_HOUR: + case TA_MINUTE: + case TA_SECOND: + sprintf(buf, "%02d", v); + break; + + default: + break; + } + + lv_textarea_set_text(ta, buf); +} + +static void passwd_value_update(const char *val, void *user_data) +{ + lv_obj_t *ta = (lv_obj_t *)user_data; + char buf[PWD_MAX * 2] = {0}; + + strncpy(buf, val + 1, PWD_MAX); + lv_textarea_set_text(ta, buf); + + params_changed = 1; +} + +static void ev_back(lv_event_t *e) +{ + UNUSED(e); + + buzz(); + set_current_window(WM_SETUP); +} + +static void ev_datetime_set(lv_event_t *e) +{ + time_t now; + struct tm tm_now; + s32 y,m,d; + s32 h,mm,s; + + UNUSED(e); + buzz(); + + const char *p = lv_textarea_get_text(ta_year); + y = strtol(p, NULL, 10); + p = lv_textarea_get_text(ta_month); + m = strtol(p, NULL, 10); + p = lv_textarea_get_text(ta_day); + d = strtol(p, NULL, 10); + p = lv_textarea_get_text(ta_hour); + h = strtol(p, NULL, 10); + p = lv_textarea_get_text(ta_minute); + mm = strtol(p, NULL, 10); + p = lv_textarea_get_text(ta_second); + s = strtol(p, NULL, 10); + + dprint("y=%d, m=%d, d=%d, h=%d, mm=%d, s=%d\n", y, m, d, h, mm, s); + + tm_now.tm_year = y - 1900; + tm_now.tm_mon = m - 1; + tm_now.tm_mday = d; + tm_now.tm_hour = h; + tm_now.tm_min = mm; + tm_now.tm_sec = s; + + now = mktime(&tm_now); + stime(&now); + + system("hwclock -w"); +} + +static void ev_datetime_input(lv_event_t *e) +{ + static struct ime_cb ime_cb; + lv_obj_t *obj = lv_event_get_target(e); + s32 ta_id = (s32)lv_obj_get_user_data(obj); + + memset(&ime_cb, 0, sizeof(struct ime_cb)); + ime_cb.user_data = obj; + switch (ta_id) { + case TA_YEAR: + ime_cb.verify = verify_year; + break; + + case TA_MONTH: + ime_cb.verify = verify_month; + break; + + case TA_DAY: + ime_cb.verify = verify_day; + break; + + case TA_HOUR: + ime_cb.verify = verify_hour; + break; + + case TA_MINUTE: + case TA_SECOND: + ime_cb.verify = verify_minute_second; + break; + + default: + break; + } + ime_cb.update = datetime_value_update; + + /* 调用输入框 */ + buzz(); + create_ime(0, 0, &ime_cb); +} + +static void ev_passwd_input(lv_event_t *e) +{ + static struct ime_cb ime_cb; + lv_obj_t *obj = lv_event_get_target(e); + + memset(&ime_cb, 0, sizeof(struct ime_cb)); + ime_cb.user_data = obj; + ime_cb.verify = verify_passwd; + ime_cb.update = passwd_value_update; + + /* 调用输入框 */ + buzz(); + create_ime(0, 0, &ime_cb); +} + +static void ev_passwd_set(lv_event_t *e) +{ + UNUSED(e); + + buzz(); + if (params_changed) { + const char *p = lv_textarea_get_text(ta_pwd1); + strncpy(params->passwd[LEVEL1], p, PWD_MAX); + p = lv_textarea_get_text(ta_pwd2); + strncpy(params->passwd[LEVEL2], p, PWD_MAX); + p = lv_textarea_get_text(ta_pwd3); + strncpy(params->passwd[LEVEL3], p, PWD_MAX); + p = lv_textarea_get_text(ta_pwd4); + strncpy(params->passwd[LEVEL4], p, PWD_MAX); + params_data_save(); + params_changed = 0; + } +} + +static void datetime_create(lv_obj_t *parent) +{ + lv_obj_t *frame; + lv_obj_t *label; + lv_obj_t *btn; + lv_obj_t *ta; + const char *text; + lv_style_t *style_meter = get_project_style(STYLE_METER); + lv_style_t *style_input = get_project_style(STYLE_INPUT); + lv_style_t *style_button = get_project_style(STYLE_BUTTON); + lv_style_t *style_label = get_project_style(STYLE_LABEL); + + /* 背景框 */ + frame = lv_obj_create(parent); + lv_obj_set_size(frame, 370, 310); + lv_obj_add_style(frame, style_meter, 0); + lv_obj_set_style_bg_color(frame, lv_color_hex(0x586273), 0); + lv_obj_set_style_border_width(frame, 2, 0); + lv_obj_set_style_border_color(frame, lv_color_hex(0x808a97), 0); + lv_obj_align(frame, LV_ALIGN_LEFT_MID, 20, -5); + + /* '日期'标题 */ + label = lv_label_create(frame); + lv_obj_add_style(label, style_label, 0); + text = get_text_from_pool(TID_date); + lv_label_set_text(label, text); + lv_obj_align(label, LV_ALIGN_TOP_LEFT, 20, 20); + + /* 'å¹´' */ + ta = lv_textarea_create(frame); + lv_obj_set_user_data(ta, (void *)TA_YEAR); + lv_textarea_set_one_line(ta, true); + lv_textarea_set_align(ta, LV_TEXT_ALIGN_CENTER); + lv_obj_add_style(ta, style_input, 0); + lv_textarea_set_text(ta, "0"); + lv_obj_set_size(ta, 100, 48); + lv_textarea_set_accepted_chars(ta, "0123456789.-"); + lv_obj_set_style_opa(ta, LV_OPA_TRANSP, LV_PART_CURSOR); + lv_obj_align_to(ta, label, LV_ALIGN_OUT_BOTTOM_LEFT, 0, 8); + lv_obj_add_event_cb(ta, ev_datetime_input, LV_EVENT_CLICKED, NULL); + ta_year = ta; + + /* '月' */ + ta = lv_textarea_create(frame); + lv_obj_set_user_data(ta, (void *)TA_MONTH); + lv_textarea_set_one_line(ta, true); + lv_textarea_set_align(ta, LV_TEXT_ALIGN_CENTER); + lv_obj_add_style(ta, style_input, 0); + lv_textarea_set_text(ta, "0"); + lv_obj_set_size(ta, 100, 48); + lv_textarea_set_accepted_chars(ta, "0123456789.-"); + lv_obj_set_style_opa(ta, LV_OPA_TRANSP, LV_PART_CURSOR); + lv_obj_align_to(ta, ta_year, LV_ALIGN_OUT_RIGHT_MID, 10, 0); + lv_obj_add_event_cb(ta, ev_datetime_input, LV_EVENT_CLICKED, NULL); + ta_month = ta; + + /* '日' */ + ta = lv_textarea_create(frame); + lv_obj_set_user_data(ta, (void *)TA_DAY); + lv_textarea_set_one_line(ta, true); + lv_textarea_set_align(ta, LV_TEXT_ALIGN_CENTER); + lv_obj_add_style(ta, style_input, 0); + lv_textarea_set_text(ta, "0"); + lv_obj_set_size(ta, 100, 48); + lv_textarea_set_accepted_chars(ta, "0123456789.-"); + lv_obj_set_style_opa(ta, LV_OPA_TRANSP, LV_PART_CURSOR); + lv_obj_align_to(ta, ta_month, LV_ALIGN_OUT_RIGHT_MID, 10, 0); + lv_obj_add_event_cb(ta, ev_datetime_input, LV_EVENT_CLICKED, NULL); + ta_day = ta; + + /* '时间'标题 */ + label = lv_label_create(frame); + lv_obj_add_style(label, style_label, 0); + text = get_text_from_pool(TID_time); + lv_label_set_text(label, text); + lv_obj_align_to(label, ta_year, LV_ALIGN_OUT_BOTTOM_LEFT, 0, 20); + + /* '小时' */ + ta = lv_textarea_create(frame); + lv_obj_set_user_data(ta, (void *)TA_HOUR); + lv_textarea_set_one_line(ta, true); + lv_textarea_set_align(ta, LV_TEXT_ALIGN_CENTER); + lv_obj_add_style(ta, style_input, 0); + lv_textarea_set_text(ta, "0"); + lv_obj_set_size(ta, 100, 48); + lv_textarea_set_accepted_chars(ta, "0123456789.-"); + lv_obj_set_style_opa(ta, LV_OPA_TRANSP, LV_PART_CURSOR); + lv_obj_align_to(ta, label, LV_ALIGN_OUT_BOTTOM_LEFT, 0, 8); + lv_obj_add_event_cb(ta, ev_datetime_input, LV_EVENT_CLICKED, NULL); + ta_hour = ta; + + /* '分' */ + ta = lv_textarea_create(frame); + lv_obj_set_user_data(ta, (void *)TA_MINUTE); + lv_textarea_set_one_line(ta, true); + lv_textarea_set_align(ta, LV_TEXT_ALIGN_CENTER); + lv_obj_add_style(ta, style_input, 0); + lv_textarea_set_text(ta, "0"); + lv_obj_set_size(ta, 100, 48); + lv_textarea_set_accepted_chars(ta, "0123456789.-"); + lv_obj_set_style_opa(ta, LV_OPA_TRANSP, LV_PART_CURSOR); + lv_obj_align_to(ta, ta_hour, LV_ALIGN_OUT_RIGHT_MID, 10, 0); + lv_obj_add_event_cb(ta, ev_datetime_input, LV_EVENT_CLICKED, NULL); + ta_minute = ta; + + /* '秒' */ + ta = lv_textarea_create(frame); + lv_obj_set_user_data(ta, (void *)TA_SECOND); + lv_textarea_set_one_line(ta, true); + lv_textarea_set_align(ta, LV_TEXT_ALIGN_CENTER); + lv_obj_add_style(ta, style_input, 0); + lv_textarea_set_text(ta, "0"); + lv_obj_set_size(ta, 100, 48); + lv_textarea_set_accepted_chars(ta, "0123456789.-"); + lv_obj_set_style_opa(ta, LV_OPA_TRANSP, LV_PART_CURSOR); + lv_obj_align_to(ta, ta_minute, LV_ALIGN_OUT_RIGHT_MID, 10, 0); + lv_obj_add_event_cb(ta, ev_datetime_input, LV_EVENT_CLICKED, NULL); + ta_second = ta; + + /* '保存' */ + btn = lv_btn_create(frame); + lv_obj_set_size(btn, 150, 48); + lv_obj_add_style(btn, style_button, 0); + lv_obj_set_style_bg_color(btn, lv_color_hex(0xa8a8a8), 0); + lv_obj_align(btn, LV_ALIGN_BOTTOM_MID, 0, -25); + label = lv_label_create(btn); + text = get_text_from_pool(TID_date_save); + lv_label_set_text(label, text); + lv_obj_align(label, LV_ALIGN_CENTER, 0, 0); + lv_obj_add_event_cb(btn, ev_datetime_set, LV_EVENT_CLICKED, NULL); +} + +static void passwd_create(lv_obj_t *parent) +{ + lv_obj_t *frame; + lv_obj_t *label; + lv_obj_t *btn; + lv_obj_t *ta; + lv_obj_t *temp; + const char *text; + lv_style_t *style_meter = get_project_style(STYLE_METER); + lv_style_t *style_input = get_project_style(STYLE_INPUT); + lv_style_t *style_button = get_project_style(STYLE_BUTTON); + lv_style_t *style_label = get_project_style(STYLE_LABEL); + + /* 背景框 */ + frame = lv_obj_create(parent); + lv_obj_set_size(frame, 370, 310); + lv_obj_add_style(frame, style_meter, 0); + lv_obj_set_style_bg_color(frame, lv_color_hex(0x586273), 0); + lv_obj_set_style_border_width(frame, 2, 0); + lv_obj_set_style_border_color(frame, lv_color_hex(0x808a97), 0); + lv_obj_align(frame, LV_ALIGN_RIGHT_MID, -20, -5); + + /* '一级密码'标题 */ + label = lv_label_create(frame); + lv_obj_add_style(label, style_label, 0); + text = get_text_from_pool(TID_pwd1); + lv_label_set_text(label, text); + lv_obj_align(label, LV_ALIGN_TOP_LEFT, 20, 25); + temp = label; + + /* '一级密码' */ + ta = lv_textarea_create(frame); + lv_obj_set_user_data(ta, (void *)TA_PWD1); + lv_textarea_set_one_line(ta, true); + lv_textarea_set_align(ta, LV_TEXT_ALIGN_CENTER); + lv_obj_add_style(ta, style_input, 0); + lv_textarea_set_text(ta, "0"); + lv_obj_set_size(ta, 200, 48); + lv_textarea_set_accepted_chars(ta, "0123456789.-"); + lv_obj_set_style_opa(ta, LV_OPA_TRANSP, LV_PART_CURSOR); + lv_obj_align_to(ta, temp, LV_ALIGN_OUT_RIGHT_MID, 20, 0); + lv_obj_add_event_cb(ta, ev_passwd_input, LV_EVENT_CLICKED, NULL); + ta_pwd1 = ta; + + /* '二级密码'标题 */ + label = lv_label_create(frame); + lv_obj_add_style(label, style_label, 0); + text = get_text_from_pool(TID_pwd2); + lv_label_set_text(label, text); + lv_obj_align_to(label, temp, LV_ALIGN_OUT_BOTTOM_LEFT, 0, 28); + temp = label; + + /* '二级密码' */ + ta = lv_textarea_create(frame); + lv_obj_set_user_data(ta, (void *)TA_PWD2); + lv_textarea_set_one_line(ta, true); + lv_textarea_set_align(ta, LV_TEXT_ALIGN_CENTER); + lv_obj_add_style(ta, style_input, 0); + lv_textarea_set_text(ta, "0"); + lv_obj_set_size(ta, 200, 48); + lv_textarea_set_accepted_chars(ta, "0123456789.-"); + lv_obj_set_style_opa(ta, LV_OPA_TRANSP, LV_PART_CURSOR); + lv_obj_align_to(ta, temp, LV_ALIGN_OUT_RIGHT_MID, 20, 0); + lv_obj_add_event_cb(ta, ev_passwd_input, LV_EVENT_CLICKED, NULL); + ta_pwd2 = ta; + + /* '三级密码'标题 */ + label = lv_label_create(frame); + lv_obj_add_style(label, style_label, 0); + text = get_text_from_pool(TID_pwd3); + lv_label_set_text(label, text); + lv_obj_align_to(label, temp, LV_ALIGN_OUT_BOTTOM_LEFT, 0, 28); + temp = label; + + /* '三级密码' */ + ta = lv_textarea_create(frame); + lv_obj_set_user_data(ta, (void *)TA_PWD3); + lv_textarea_set_one_line(ta, true); + lv_textarea_set_align(ta, LV_TEXT_ALIGN_CENTER); + lv_obj_add_style(ta, style_input, 0); + lv_textarea_set_text(ta, "0"); + lv_obj_set_size(ta, 200, 48); + lv_textarea_set_accepted_chars(ta, "0123456789.-"); + lv_obj_set_style_opa(ta, LV_OPA_TRANSP, LV_PART_CURSOR); + lv_obj_align_to(ta, temp, LV_ALIGN_OUT_RIGHT_MID, 20, 0); + lv_obj_add_event_cb(ta, ev_passwd_input, LV_EVENT_CLICKED, NULL); + ta_pwd3 = ta; + + /* '四级密码'标题 */ + label = lv_label_create(frame); + lv_obj_add_style(label, style_label, 0); + text = get_text_from_pool(TID_pwd4); + lv_label_set_text(label, text); + lv_obj_align_to(label, temp, LV_ALIGN_OUT_BOTTOM_LEFT, 0, 28); + temp = label; + + /* '四级密码' */ + ta = lv_textarea_create(frame); + lv_obj_set_user_data(ta, (void *)TA_PWD3); + lv_textarea_set_one_line(ta, true); + lv_textarea_set_align(ta, LV_TEXT_ALIGN_CENTER); + lv_obj_add_style(ta, style_input, 0); + lv_textarea_set_text(ta, "0"); + lv_obj_set_size(ta, 200, 48); + lv_textarea_set_accepted_chars(ta, "0123456789.-"); + lv_obj_set_style_opa(ta, LV_OPA_TRANSP, LV_PART_CURSOR); + lv_obj_align_to(ta, temp, LV_ALIGN_OUT_RIGHT_MID, 20, 0); + lv_obj_add_event_cb(ta, ev_passwd_input, LV_EVENT_CLICKED, NULL); + ta_pwd4 = ta; + + /* 保存密码 */ + btn = lv_btn_create(frame); + lv_obj_set_size(btn, 200, 48); + lv_obj_add_style(btn, style_button, 0); + lv_obj_set_style_bg_color(btn, lv_color_hex(0xa8a8a8), 0); + lv_obj_align_to(btn, ta_pwd4, LV_ALIGN_OUT_BOTTOM_RIGHT, 0, 10); + label = lv_label_create(btn); + text = get_text_from_pool(TID_pwd_save); + lv_label_set_text(label, text); + lv_obj_align(label, LV_ALIGN_CENTER, 0, 0); + lv_obj_add_event_cb(btn, ev_passwd_set, LV_EVENT_CLICKED, NULL); +} + +static void page_init(void) +{ + lv_style_t *style_main = get_project_style(STYLE_PAGE); + + /* 创建页面容器 */ + page = lv_obj_create(lv_scr_act()); + lv_obj_set_size(page, LV_PCT(100), LV_PCT(100)); + lv_obj_add_style(page, style_main, LV_PART_MAIN); + lv_obj_set_style_bg_color(page, lv_color_hex(0x444b5a), 0); +} + +static void page_deinit(void) +{ + if (page != NULL) { + lv_obj_del(page); + page = NULL; + } +} + +static void page_head_init(lv_obj_t *parent) +{ + lv_obj_t *frame; + lv_obj_t *label; + lv_obj_t *btn; + const char *text; + struct tm tm_production; + struct tm tm_purchase; + struct tm *tm_now; + char buf[256]; + lv_style_t *style_main = get_project_style(STYLE_PAGE); + lv_style_t *style_button = get_project_style(STYLE_BUTTON); + + /* 标题栏背景 */ + frame = lv_obj_create(parent); + lv_obj_set_size(frame, LV_PCT(100), 60); + lv_obj_set_style_bg_color(frame, lv_color_hex(0x586273), 0); + lv_obj_add_style(frame, style_main, LV_PART_MAIN); + lv_obj_set_style_shadow_width(frame, 16, 0); + + lv_obj_t *logo = lv_img_create(frame); + lv_img_set_src(logo, "P:assets/lvgl_logo.png"); + lv_obj_align(logo, LV_ALIGN_LEFT_MID, 15, 0); + + /* 标题栏文字 */ + label = lv_label_create(frame); + text = get_text_from_pool(TID_setup_sys); + lv_label_set_text(label, text); + lv_obj_set_style_text_font(label, &sans_r_30, 0); + lv_obj_set_style_text_color(label, lv_color_hex(0xd0d0d0), 0); + lv_obj_align(label, LV_ALIGN_LEFT_MID, 70, 0); + + /* 标题栏返回按钮 */ + btn = lv_btn_create(frame); + lv_obj_set_size(btn, 150, 48); + lv_obj_add_style(btn, style_button, 0); + lv_obj_set_style_bg_color(btn, lv_color_hex(0xa8a8a8), 0); + lv_obj_align(btn, LV_ALIGN_RIGHT_MID, -10, 0); + label = lv_label_create(btn); + text = get_text_from_pool(TID_back); + lv_label_set_text(label, text); + lv_obj_set_style_text_font(label, &sans_m_24, 0); + lv_obj_set_style_text_color(label, lv_color_hex(0x000000), 0); + lv_obj_align(label, LV_ALIGN_CENTER, 0, 0); + lv_obj_add_event_cb(btn, ev_back, LV_EVENT_CLICKED, NULL); + + /* 状态栏背景 */ + frame = lv_obj_create(parent); + lv_obj_set_size(frame, LV_PCT(100), 70); + lv_obj_set_style_bg_color(frame, lv_color_hex(0x586273), 0); + lv_obj_add_style(frame, style_main, LV_PART_MAIN); + lv_obj_align(frame, LV_ALIGN_BOTTOM_MID, 0, 0); + lv_obj_set_style_border_width(frame, 2, 0); + lv_obj_set_style_border_color(frame, lv_color_hex(0xa8a8a8), 0); + lv_obj_set_style_border_side(frame, LV_BORDER_SIDE_TOP, 0); + + /* 状态栏文字 */ + label = lv_label_create(frame); + tm_now = localtime(¶ms->production_date); + memcpy(&tm_production, tm_now, sizeof(struct tm)); + tm_now = localtime(¶ms->purchase_date); + memcpy(&tm_purchase, tm_now, sizeof(struct tm)); + const char *p1 = get_text_from_pool(TID_mfg_date); + const char *p2 = get_text_from_pool(TID_pur_date); + const char *p3 = get_text_from_pool(TID_phone); + sprintf(buf, "%s %04d-%02d-%02d %s %04d-%02d-%02d %s %s", + p1, + tm_production.tm_year + 1900, + tm_production.tm_mon + 1, + tm_production.tm_mday, + p2, + tm_purchase.tm_year + 1900, + tm_purchase.tm_mon + 1, + tm_purchase.tm_mday, + p3, + params->phone); + lv_label_set_text(label, buf); + lv_obj_set_style_text_font(label, &sans_r_18, 0); + lv_obj_set_style_text_color(label, lv_color_hex(0xd0d0d0), 0); + lv_obj_align(label, LV_ALIGN_CENTER, 0, 0); +} + +static void page_body_init(lv_obj_t *parent) +{ + /* 日期设置区 */ + datetime_create(parent); + + /* 时间设置区 */ + passwd_create(parent); +} + +s32 system_open(void *args) +{ + UNUSED(args); + + dprint("[%s]++\n", __func__); + + /* 本地变量初始 */ + params_changed = 0; + + /* 获取参数数据接口 */ + params = get_params_data(); + + /* 获取运行时数据接口 */ + runtime = get_runtime_data(); + + /* 创建页面背景对象 */ + page_init(); + + /* 创建页面head对象 */ + page_head_init(page); + + /* 创建页面body对象 */ + page_body_init(page); + + /* 页数刷新 */ + intf_update(); + + /* success */ + last_time = get_current_time(); + + return 0; +} + +void system_close(void) +{ + dprint("[%s]++\n", __func__); + page_deinit(); +} + +void system_update(void) +{ + if (time_after(get_current_time(), last_time)) { + last_time = get_current_time() + 1000; + } +} + diff --git a/800x480/MK_template2.c b/800x480/MK_template2.c new file mode 100644 index 0000000..804fdfa --- /dev/null +++ b/800x480/MK_template2.c @@ -0,0 +1,108 @@ +/* + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are + * met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * * Redistributions in binary form must reproduce the above + * copyright notice, this list of conditions and the following disclaimer + * in the documentation and/or other materials provided with the + * distribution. + * * Neither the name of the nor the names of its + * contributors may be used to endorse or promote products derived from + * this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT + * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR + * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT + * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT + * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, + * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY + * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE + * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + * + */ +#include +#include +#include +#include +#include +#include "lvgl/lvgl.h" +#include "MK_macro.h" +#include "MK_types.h" +#include "MK_func.h" + +static lv_obj_t *page = NULL; + +static u32 last_time; + +static void page_init(lv_obj_t *parent) +{ + lv_style_t *style_main = get_project_style(STYLE_PAGE); + + /* 创建页面容器 */ + page = lv_obj_create(parent); + lv_obj_set_size(page, LV_PCT(100), LV_PCT(100)); + lv_obj_add_style(page, style_main, LV_PART_MAIN); + lv_obj_set_style_bg_color(page, lv_color_hex(0x444b5a), 0); +} + +static void page_deinit(void) +{ + if (page != NULL) { + lv_obj_del(page); + page = NULL; + } +} + +static void page_head_init(lv_obj_t *parent) +{ + +} + +static void page_body_init(lv_obj_t *parent) +{ + +} + +s32 template_init(void) +{ + dprint("[%s]++\n", __func__); + + /* 获取参数数据接口 */ + //pparams = get_params_data(); + + /* 创建页面背景对象 */ + page_init(); + + /* 创建页面head对象 */ + page_head_init(page); + + /* 创建页面body对象 */ + page_body_init(page); + + /* 设定当前运行页面 */ + set_current_page(WIN_WELCOME); + last_time = get_current_time(); + + return 0; +} + +void template_close(void) +{ + dprint("[%s]++\n", __func__); + page_deinit(); +} + + +void template_update(void) +{ + if (time_after(get_current_time(), last_time)) { + last_time = get_current_time() + 1000; + } +} + diff --git a/800x480/MK_tester.c b/800x480/MK_tester.c new file mode 100644 index 0000000..a13e980 --- /dev/null +++ b/800x480/MK_tester.c @@ -0,0 +1,891 @@ +/* + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are + * met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * * Redistributions in binary form must reproduce the above + * copyright notice, this list of conditions and the following disclaimer + * in the documentation and/or other materials provided with the + * distribution. + * * Neither the name of the nor the names of its + * contributors may be used to endorse or promote products derived from + * this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT + * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR + * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT + * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT + * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, + * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY + * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE + * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + * + */ +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include "lvgl/lvgl.h" +#include "MK_macro.h" +#include "MK_types.h" +#include "MK_func.h" + +/* Serial communicate (9600,8,N,1) */ +#if defined(ZZF_DEBUG) + #define TESTER_PORT "/dev/ttyS2" +#else + #define TESTER_PORT "/dev/ttyS1" +#endif + +static lv_obj_t *page = NULL; +static lv_obj_t *table = NULL; + +static u32 last_time; +static s32 test_changed; +static s32 motor_test_dir; +static s32 thread_exit; +static s32 tester_device = -1; + +static void ev_back(lv_event_t *e) +{ + UNUSED(e); + + buzz(); + ATOMIC_SET(thread_exit); + set_current_window(WM_PREV); +} + +static void ev_move(lv_event_t *e) +{ + lv_obj_t *obj = lv_event_get_target(e); + s32 btn_id = (s32)lv_obj_get_user_data(obj); + + buzz(); + if (btn_id == BTN_INC) { + ATOMIC_SET(motor_test_dir); + } + else { + ATOMIC_CLR(motor_test_dir); + } +} + +static struct test_item { + const char *desc; + const s32 x; + const s32 y; + s32 status; +} tests[] = { + // 输入1 + { + .desc = "X0", + .x = 0, + .y = 1, + .status = 0, + }, + { + .desc = "X1", + .x = 0, + .y = 2, + .status = 0, + }, + { + .desc = "X2", + .x = 0, + .y = 3, + .status = 0, + }, + { + .desc = "X3", + .x = 0, + .y = 4, + .status = 0, + }, + + // 输入2 + { + .desc = "X10", + .x = 3, + .y = 1, + .status = 0, + }, + { + .desc = "X11", + .x = 3, + .y = 2, + .status = 0, + }, + { + .desc = "X12", + .x = 3, + .y = 3, + .status = 0, + }, + { + .desc = "X13", + .x = 3, + .y = 4, + .status = 0, + }, + { + .desc = "X14", + .x = 3, + .y = 5, + .status = 0, + }, + { + .desc = "X15", + .x = 3, + .y = 6, + .status = 0, + }, + + // 输出 + { + .desc = "Y0", + .x = 0, + .y = 5, + .status = 0, + }, + { + .desc = "Y1", + .x = 0, + .y = 6, + .status = 0, + }, + { + .desc = "Y2", + .x = 0, + .y = 7, + .status = 0, + }, + { + .desc = "Y3", + .x = 0, + .y = 8, + .status = 0, + }, + { + .desc = "Y10", + .x = 6, + .y = 1, + .status = 0, + }, + { + .desc = "Y11", + .x = 6, + .y = 2, + .status = 0, + }, + { + .desc = "Y12", + .x = 6, + .y = 3, + .status = 0, + }, + { + .desc = "Y13", + .x = 6, + .y = 4, + .status = 0, + }, + + // 其他测试项 + { + .desc = "打印端口", + .x = 9, + .y = 1, + .status = 0, + }, + { + .desc = "无线尺", + .x = 9, + .y = 2, + .status = 0, + }, + { + .desc = "伺服端口", + .x = 9, + .y = 3, + .status = 0, + }, + { + .desc = "电机驱动", + .x = 9, + .y = 4, + .status = 0, + }, +}; + +static s32 open_comm(const char *port) +{ + struct termios option; + s32 handle; + + /* Open serial port */ + handle = open(port, O_RDWR | O_NOCTTY); + if (handle == -1) { + eprint("Can not open %s!\n", port); + return -1; + } + + /* set serial port parameter (B9600, 8 , N , 1) */ + tcgetattr(handle, &option); + cfmakeraw(&option); + if (cfsetispeed(&option, B9600) != 0) { + eprint("cfsetispeed fail\n"); + } + if (cfsetospeed(&option, B9600) != 0) { + eprint("cfsetospeed fail\n"); + } + tcsetattr(handle, TCSANOW, &option); + + return handle; +} + +static void close_comm(void) +{ + if (tester_device != -1) { + close(tester_device); + tester_device = -1; + } +} + +static u8 calc_cks(const u8 *data, s32 len) +{ + u8 cks = 0x33; + + while (len-- > 0) { + cks += *data++; + } + + return cks; +} + +static s32 transfer(const void *tx, s32 tx_len, void *rx, u32 rx_len) +{ + s32 remain; + s32 s; + u8 *p; + s32 status; + u32 timeout; + + /* flush data */ + tcflush(tester_device, TCIOFLUSH); + + /* send data */ + if (write(tester_device, tx, tx_len) < tx_len) { + eprint("Write to print_port fail.\n"); + return -1; + } + + /* no need receive */ + if (rx == NULL) { + return 0; + } + + /* receive data until enough or timeout */ + p = rx; + remain = rx_len; + timeout = get_current_time() + 500; + do { + usleep(1000); + + /* get serial port data length */ + status = 0; + if (ioctl(tester_device, FIONREAD, &status) < 0) { + continue; + } + + /* read data if has data */ + if (status > 0) { + s = status > remain ? remain : status; + s = read(tester_device, p, s); + p += s; + remain -= s; + } + + } while (remain > 0 && time_after(timeout, get_current_time())); + + /* not enough data */ + if (remain > 0) { + //dprint("receive fail, remain = %d\n", remain); + return -1; + } + + return 0; +} + +static void tester_init(void) +{ + u32 i; + + for (i = 0; i < COUNTOF(tests); ++i) { + tests[i].status = 0; + } +} + +static void tester_refresh(void) +{ + u32 i; + char buf[260]; + + lv_obj_invalidate(table); + for (i = 0; i < COUNTOF(tests); ++i) { + lv_table_set_cell_value(table, tests[i].y, tests[i].x, tests[i].desc); + s32 disp = 0; + switch (ATOMIC_GET(tests[i].status)) { + case STA_NONE: + sprintf(buf, "未测试"); + break; + + case STA_TESTING: + sprintf(buf, "测试中"); + break; + + case STA_SUCCESS: + sprintf(buf, "成功"); + disp = 1; + break; + + case STA_FAIL: + sprintf(buf, "失败"); + disp = 1; + break; + + default: + sprintf(buf, "N/A"); + break; + } + if (disp) { + lv_table_set_cell_value(table, tests[i].y, tests[i].x + 1, buf); + } + } +} + +static s32 get_tests_index(s32 x, s32 y) +{ + u32 i; + + for (i = 0; i < COUNTOF(tests); ++i) { + if (tests[i].x == x && tests[i].y == y) { + return i; + } + } + + return -1; +} + +static void ev_draw_part(lv_event_t *e) +{ + lv_obj_t *obj = lv_event_get_target(e); + lv_obj_draw_part_dsc_t *dsc = lv_event_get_param(e); + + if (dsc->part == LV_PART_ITEMS) { + u32 row = dsc->id / lv_table_get_col_cnt(obj); + u32 col = dsc->id - row * lv_table_get_col_cnt(obj); + + if (row > 0 && (col == 1 || col == 4 || col == 7 || col == 10)) { + s32 index = get_tests_index(col - 1, row); + if (index != -1) { + s32 sta = ATOMIC_GET(tests[index].status); + if (sta == STA_FAIL) { + dsc->label_dsc->color = lv_color_hex(0xffffff); + dsc->rect_dsc->bg_color = lv_color_mix(lv_palette_main(LV_PALETTE_RED), dsc->rect_dsc->bg_color, LV_OPA_100); + dsc->rect_dsc->bg_opa = LV_OPA_COVER; + } + } + } + dsc->label_dsc->align = LV_TEXT_ALIGN_CENTER; + } +} + +static s32 io_test_single(s32 out_id, s32 in_id) +{ + s32 sta; + + /* 测HIGH */ + set_output_state(out_id, STA_ON); + system_delay(100); + sta = get_input_state(in_id); + if (sta != STA_ON) { + goto fail; + } + + /* 测LOW */ + set_output_state(out_id, STA_OFF); + system_delay(100); + sta = get_input_state(in_id); + if (sta != STA_OFF) { + goto fail; + } + + ATOMIC_SET(test_changed); + return STA_SUCCESS; + +fail: + /* 测试失败, 保持长亮 */ + set_output_state(out_id, STA_ON); + + ATOMIC_SET(test_changed); + return STA_FAIL; +} + +static void io_test(void) +{ + /* 测试 Xn */ + tests[TEST_IDX_X0].status = io_test_single(Y0, X0); + tests[TEST_IDX_X1].status = io_test_single(Y1, X1); + tests[TEST_IDX_X2].status = io_test_single(Y2, X2); + tests[TEST_IDX_X3].status = io_test_single(Y3, X3); + tests[TEST_IDX_X10].status = io_test_single(Y10, X10); + tests[TEST_IDX_X11].status = io_test_single(Y11, X11); + tests[TEST_IDX_X12].status = io_test_single(Y12, X12); + tests[TEST_IDX_X13].status = io_test_single(Y13, X13); + tests[TEST_IDX_X14].status = io_test_single(Y10, X14); + tests[TEST_IDX_X15].status = io_test_single(Y11, X15); + + /* 测试 Yn */ + tests[TEST_IDX_Y0].status = tests[TEST_IDX_X0].status; + tests[TEST_IDX_Y1].status = tests[TEST_IDX_X1].status; + tests[TEST_IDX_Y2].status = tests[TEST_IDX_X2].status; + tests[TEST_IDX_Y3].status = tests[TEST_IDX_X3].status; + if (tests[TEST_IDX_X10].status == STA_SUCCESS || + tests[TEST_IDX_X14].status == STA_SUCCESS) { + tests[TEST_IDX_Y10].status = STA_SUCCESS; + } + else { + tests[TEST_IDX_Y10].status = STA_FAIL; + } + if (tests[TEST_IDX_X11].status == STA_SUCCESS || + tests[TEST_IDX_X15].status == STA_SUCCESS) { + tests[TEST_IDX_Y11].status = STA_SUCCESS; + } + else { + tests[TEST_IDX_Y11].status = STA_FAIL; + } + tests[TEST_IDX_Y12].status = tests[TEST_IDX_X12].status; + tests[TEST_IDX_Y13].status = tests[TEST_IDX_X13].status; +} + +static void motor_test(void) +{ + s32 pulse; + + if (ATOMIC_GET(motor_test_dir)) { + pulse = get_current_pulse_count() + 50; + set_target_pulse_count(pulse); + } + else { + pulse = get_current_pulse_count() - 50; + set_target_pulse_count(pulse); + } +} + +static void servo_port_test(void) +{ + s32 i; + + for (i = 0; i < 10; ++i) { + s32 pulse = ABS(get_current_pulse_count()); + if (pulse == 12345678) { + tests[TEST_IDX_SERVO].status = STA_SUCCESS; + goto end; + } + system_delay(100); + } + + tests[TEST_IDX_SERVO].status = STA_FAIL; + +end: + ATOMIC_SET(test_changed); +} + +static void measure_test(void) +{ + s32 i; + + for (i = 0; i < 10; ++i) { + if (get_measure_data_raw() >= 9876) { + tests[TEST_IDX_RULE].status = STA_SUCCESS; + goto end; + } + system_delay(100); + } + + tests[TEST_IDX_RULE].status = STA_FAIL; + +end: + ATOMIC_SET(test_changed); +} + +static void motor_drive_test(void) +{ + u8 tx[8] = {0x5a, 0xa5, 0x01}; + u8 rx[10] = {0}; + s32 prev_pulse_count = -1; + s32 test_step = 0; + s32 pulse_changed = 0; + s32 dir_mask = 0; + s32 ena_mask = 0; + s32 motor_test_ok = 0; + s32 printer_port_test_ok = 0; + u32 start_time = get_current_time() + 10000; + u32 dir_time = get_current_time() + 1000; + + tester_device = open_comm(TESTER_PORT); + if (tester_device == -1) { + goto end; + } + + tx[7] = calc_cks(tx, 7); + do { + /* 切换驱动方向 */ + if (time_after(get_current_time(), dir_time)) { + if (test_step == 0) { + motor_test_enable(STA_ON); + set_wriggle_mode(WRI_FORWARD); + } + else if (test_step == 1) { + motor_test_enable(STA_ON); + set_wriggle_mode(WRI_REVERSE); + } + else { + motor_test_enable(STA_OFF); + } + test_step = (test_step + 1) % 3; + dir_time = get_current_time() + 1000; + } + + if (transfer(tx, 8, rx, 10) == 0) { + printer_port_test_ok = 1; + ATOMIC_SET(test_changed); + + u8 cks = calc_cks(rx, 9); + if (rx[0] == 0x69 && rx[1] == 0x96 && cks == rx[9]) { + s32 curr_pulse_count = (s32)rx[3] << 8 | rx[2]; + if (prev_pulse_count == -1) { + prev_pulse_count = curr_pulse_count; + } + + /* 脉冲计数变化 */ + if (prev_pulse_count != curr_pulse_count) { + pulse_changed = 1; + prev_pulse_count = curr_pulse_count; + } + + /* DIR引脚变化 */ + dir_mask |= 1 << rx[4]; + + /* ENA引脚变化 */ + ena_mask |= 1 << rx[5]; + } + + /* 判断测试结果 */ + if (pulse_changed + && ((dir_mask & 3) == 3) + && ((ena_mask & 3) == 3)) { + motor_test_ok = 1; + break; + } + } + system_delay(50); + } while (time_before(get_current_time(), start_time)); + + close_comm(); + +end: + /* 停止驱动 */ + motor_test_enable(STA_ON); + set_wriggle_mode(WRI_NONE); + + /* 判断测试结果 */ + if (printer_port_test_ok) { + tests[TEST_IDX_PRINT].status = STA_SUCCESS; + } + else { + tests[TEST_IDX_PRINT].status = STA_FAIL; + } + + if (motor_test_ok) { + tests[TEST_IDX_MOTOR].status = STA_SUCCESS; + } + else { + tests[TEST_IDX_MOTOR].status = STA_FAIL; + } + ATOMIC_SET(test_changed); +} + +static void *test_thread(void *args) +{ + UNUSED(args); + + /* 输入输出端口测试 */ + io_test(); + + /* 无线尺测试 */ + measure_test(); + + /* 伺服端口测试 */ + servo_port_test(); + + /* 电机驱动测试 */ + motor_drive_test(); + + /* 无MCU测试板时电机驱动测试 */ + s32 enable = 0; + u32 start_time = get_current_time(); + u32 reserve_time = get_current_time(); + while (!ATOMIC_GET(thread_exit)) { + if (time_after(get_current_time(), start_time)) { + enable = 1 - enable; + if (enable) { + motor_test_enable(STA_ON); + } + else { + motor_test_enable(STA_OFF); + } + start_time = get_current_time() + 8000; + } + + if (enable) { + if (time_after(get_current_time(), reserve_time)) { + motor_test(); + reserve_time = get_current_time() + 50; + } + //system_delay(50); + } + else { + if (time_after(get_current_time(), reserve_time)) { + if (get_motor_test_enable()) { + motor_test_enable(STA_OFF); + } + else { + motor_test_enable(STA_ON); + } + reserve_time = get_current_time() + 250; + } + //system_delay(250); + } + + system_delay(10); + } + + return NULL; +} + +static void create_test_thread(s32 mode) +{ + pthread_t thread_id; + + if (pthread_create(&thread_id, NULL, &test_thread, (void *)mode) != 0) { + eprint("Create 'test' thread fail.\n"); + } + else { + pthread_detach(thread_id); + } +} + +static void page_init(void) +{ + lv_style_t *style_main = get_project_style(STYLE_PAGE); + + /* 创建页面容器 */ + page = lv_obj_create(lv_scr_act()); + lv_obj_set_size(page, LV_PCT(100), LV_PCT(100)); + lv_obj_add_style(page, style_main, LV_PART_MAIN); + lv_obj_set_style_bg_color(page, lv_color_hex(0x444b5a), 0); //0x444b5a +} + +static void page_deinit(void) +{ + if (page != NULL) { + lv_obj_del(page); + page = NULL; + } +} + +static void page_head_init(lv_obj_t *parent) +{ + lv_obj_t *frame; + lv_obj_t *label; + //lv_obj_t *temp; + lv_obj_t *btn; + const char *text; + //char buf[128]; + lv_style_t *style_main = get_project_style(STYLE_PAGE); + lv_style_t *style_button = get_project_style(STYLE_BUTTON); + + /* 标题栏背景 */ + frame = lv_obj_create(parent); + lv_obj_set_size(frame, LV_PCT(100), 60); + lv_obj_set_style_bg_color(frame, lv_color_hex(0x586273), 0); + lv_obj_add_style(frame, style_main, LV_PART_MAIN); + lv_obj_set_style_shadow_width(frame, 16, 0); + + lv_obj_t *logo = lv_img_create(frame); + lv_img_set_src(logo, "P:assets/lvgl_logo.png"); + lv_obj_align(logo, LV_ALIGN_LEFT_MID, 15, 0); + + /* 标题栏文字 */ + label = lv_label_create(frame); + text = get_text_from_pool(TID_setting); + lv_label_set_text(label, "工厂测试"); + lv_obj_set_style_text_font(label, &sans_r_30, 0); + lv_obj_set_style_text_color(label, lv_color_hex(0xd0d0d0), 0); + lv_obj_align(label, LV_ALIGN_LEFT_MID, 70, 0); + + /* 标题栏返回按钮 */ + btn = lv_btn_create(frame); + lv_obj_set_size(btn, 150, 48); + lv_obj_add_style(btn, style_button, 0); + lv_obj_set_style_bg_color(btn, lv_color_hex(0xa8a8a8), 0); + lv_obj_align(btn, LV_ALIGN_RIGHT_MID, -10, 0); + label = lv_label_create(btn); + text = get_text_from_pool(TID_back); + lv_label_set_text(label, text); + lv_obj_set_style_text_font(label, &sans_m_24, 0); + lv_obj_set_style_text_color(label, lv_color_hex(0x000000), 0); + lv_obj_align(label, LV_ALIGN_CENTER, 0, 0); + lv_obj_add_event_cb(btn, ev_back, LV_EVENT_CLICKED, NULL); + + /* "反向驱动"按钮 */ + btn = lv_btn_create(frame); + lv_obj_set_user_data(btn, (void *)BTN_DEC); + lv_obj_set_size(btn, 150, 48); + lv_obj_add_style(btn, style_button, 0); + lv_obj_set_style_bg_color(btn, lv_color_hex(0xa8a8a8), 0); + lv_obj_align(btn, LV_ALIGN_RIGHT_MID, -190, 0); + label = lv_label_create(btn); + lv_label_set_text(label, "反向驱动"); + lv_obj_set_style_text_font(label, &sans_m_24, 0); + lv_obj_set_style_text_color(label, lv_color_hex(0x000000), 0); + lv_obj_align(label, LV_ALIGN_CENTER, 0, 0); + lv_obj_add_event_cb(btn, ev_move, LV_EVENT_CLICKED, NULL); + + /* "正向驱动"按钮 */ + btn = lv_btn_create(frame); + lv_obj_set_user_data(btn, (void *)BTN_INC); + lv_obj_set_size(btn, 150, 48); + lv_obj_add_style(btn, style_button, 0); + lv_obj_set_style_bg_color(btn, lv_color_hex(0xa8a8a8), 0); + lv_obj_align(btn, LV_ALIGN_RIGHT_MID, -350, 0); + label = lv_label_create(btn); + lv_label_set_text(label, "正向驱动"); + lv_obj_set_style_text_font(label, &sans_m_24, 0); + lv_obj_set_style_text_color(label, lv_color_hex(0x000000), 0); + lv_obj_align(label, LV_ALIGN_CENTER, 0, 0); + lv_obj_add_event_cb(btn, ev_move, LV_EVENT_CLICKED, NULL); +} + +static void page_body_init(lv_obj_t *parent) +{ + /* 测试表格 */ + table = lv_table_create(parent); + lv_obj_set_size(table, 780, 400); + lv_obj_set_style_text_font(table, &sans_m_24, 0); + lv_table_set_col_cnt(table, 3); + lv_table_set_cell_value(table, 0, 0, "端口1"); + lv_table_set_cell_value(table, 0, 1, "结果"); + lv_table_set_cell_value(table, 0, 3, "端口2"); + lv_table_set_cell_value(table, 0, 4, "结果"); + lv_table_set_cell_value(table, 0, 6, "端口2"); + lv_table_set_cell_value(table, 0, 7, "结果"); + lv_table_set_cell_value(table, 0, 9, "测试项"); + lv_table_set_cell_value(table, 0, 10, "结果"); + lv_table_set_col_width(table, 0, 80); + lv_table_set_col_width(table, 1, 90); + lv_table_set_col_width(table, 2, 6); + lv_table_set_col_width(table, 3, 80); + lv_table_set_col_width(table, 4, 90); + lv_table_set_col_width(table, 5, 6); + lv_table_set_col_width(table, 6, 80); + lv_table_set_col_width(table, 7, 90); + lv_table_set_col_width(table, 8, 6); + lv_table_set_col_width(table, 9, 145); + lv_table_set_col_width(table, 10, 100); + lv_obj_set_style_pad_top(table, 7, LV_PART_ITEMS); + lv_obj_set_style_pad_bottom(table, 7, LV_PART_ITEMS); + lv_obj_set_style_pad_left(table, 5, LV_PART_ITEMS); + lv_obj_set_style_pad_right(table, 5, LV_PART_ITEMS); + lv_obj_set_style_opa(table, LV_OPA_0, LV_PART_SCROLLBAR); + lv_obj_set_style_outline_width(table, 2, LV_PART_ITEMS); + lv_obj_set_style_outline_opa(table, LV_OPA_10, LV_PART_ITEMS); + lv_obj_add_event_cb(table, ev_draw_part, LV_EVENT_DRAW_PART_BEGIN, NULL); + lv_obj_align(table, LV_ALIGN_TOP_MID, 0, 70); + +} + +s32 tester_open(void *args) +{ + dprint("[%s]++\n", __func__); + + UNUSED(args); + + /* 进入工厂测试模式 */ + set_factory_test_mode(STA_ON); + + /* 关闭打印端口, 此端口用于跟测试单片机通讯 */ + printer_deinit(); + + /* 本地变量初始 */ + test_changed = 0; + thread_exit = 0; + tester_init(); + + /* 创建页面背景对象 */ + page_init(); + + /* 创建页面body对象 */ + page_body_init(page); + + /* 创建页面head对象 */ + page_head_init(page); + + /* 刷新页面 */ + //io_test(); + //factory_refresh(); + + /* success */ + last_time = get_current_time(); + create_test_thread(0); + + return 0; +} + +void tester_close(void) +{ + dprint("[%s]++\n", __func__); + + /* 退出工厂测试模式 */ + set_factory_test_mode(STA_OFF); + + /* 打开打印端口 */ + //printer_init(); + + page_deinit(); +} + +void tester_update(void) +{ + if (ATOMIC_GET(test_changed)) { + ATOMIC_CLR(test_changed); + tester_refresh(); + } + + if (time_after(get_current_time(), last_time)) { + last_time = get_current_time() + 1000; + } +} + diff --git a/800x480/MK_tutorial.c b/800x480/MK_tutorial.c new file mode 100644 index 0000000..0fa645e --- /dev/null +++ b/800x480/MK_tutorial.c @@ -0,0 +1,232 @@ +/* + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are + * met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * * Redistributions in binary form must reproduce the above + * copyright notice, this list of conditions and the following disclaimer + * in the documentation and/or other materials provided with the + * distribution. + * * Neither the name of the nor the names of its + * contributors may be used to endorse or promote products derived from + * this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT + * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR + * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT + * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT + * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, + * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY + * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE + * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + * + */ +#include +#include +#include +#include +#include +#include +#include "lvgl/lvgl.h" +#include "MK_macro.h" +#include "MK_types.h" +#include "MK_func.h" + +static lv_obj_t *page = NULL; +static lv_obj_t *lbl_time = NULL; + +static struct params_data *params; +static struct runtime_data *runtime; +static u32 last_time; + +static void update_datetime(void) +{ + s32 lang; + char buffer[260] = {0}; + + lang = get_language(); + encode_datetime_by_lang(lang, buffer); + lv_label_set_text(lbl_time, buffer); +} + +static void ev_back(lv_event_t *e) +{ + UNUSED(e); + + buzz(); + set_current_window(WM_SINGLE); +} + +static void page_init(void) +{ + lv_style_t *style_main = get_project_style(STYLE_PAGE); + + /* 创建页面容器 */ + page = lv_obj_create(lv_scr_act()); + lv_obj_set_size(page, LV_PCT(100), LV_PCT(100)); + lv_obj_add_style(page, style_main, LV_PART_MAIN); +// lv_obj_set_style_bg_color(page, lv_color_hex(0x444b5a), 0); +} + +static void page_deinit(void) +{ + if (page != NULL) { + lv_obj_del(page); + page = NULL; + } +} + +static void page_head_init(lv_obj_t *parent) +{ + lv_obj_t *frame; + lv_obj_t *label; + lv_obj_t *btn; + const char *text; +#if 0 + struct tm tm_production; + struct tm tm_purchase; + struct tm *tm_now; + char buf[256]; +#endif + lv_style_t *style_main = get_project_style(STYLE_PAGE); + lv_style_t *style_button = get_project_style(STYLE_BUTTON); + + /* 标题栏背景 */ + frame = lv_obj_create(parent); + lv_obj_set_size(frame, LV_PCT(100), 60); + lv_obj_set_style_bg_color(frame, lv_color_hex(0x586273), 0); + lv_obj_add_style(frame, style_main, LV_PART_MAIN); + + lv_obj_t *logo = lv_img_create(frame); + lv_img_set_src(logo, "P:assets/lvgl_logo.png"); + lv_obj_align(logo, LV_ALIGN_LEFT_MID, 10, 0); + + /* 标题栏文字 */ + label = lv_label_create(frame); + text = get_text_from_pool(TID_tutorial); + lv_label_set_text(label, text); + lv_obj_set_style_text_font(label, &sans_r_30, 0); + lv_obj_set_style_text_color(label, lv_color_hex(0xe7e9ec), 0); + lv_obj_align(label, LV_ALIGN_LEFT_MID, 60, 0); + + /* 标题栏日期时间 */ + lbl_time = lv_label_create(frame); + lv_label_set_text(lbl_time, ""); + lv_obj_set_style_text_font(lbl_time, &sans_r_18, 0); + lv_obj_set_style_text_color(lbl_time, lv_color_hex(0xffffff), 0); + lv_obj_align(lbl_time, LV_ALIGN_CENTER, 0, 0); + + /* 标题栏返回按钮 */ + btn = lv_btn_create(frame); + lv_obj_set_size(btn, 150, 48); + lv_obj_add_style(btn, style_button, 0); + lv_obj_set_style_bg_color(btn, lv_color_hex(0xa8a8a8), 0); + lv_obj_align(btn, LV_ALIGN_RIGHT_MID, -10, 0); + label = lv_label_create(btn); + text = get_text_from_pool(TID_back); + lv_label_set_text(label, text); + lv_obj_set_style_text_font(label, &sans_m_24, 0); + lv_obj_set_style_text_color(label, lv_color_hex(0x000000), 0); + lv_obj_align(label, LV_ALIGN_CENTER, 0, 0); + lv_obj_add_event_cb(btn, ev_back, LV_EVENT_CLICKED, NULL); +#if 0 + /* 状态栏背景 */ + frame = lv_obj_create(parent); + lv_obj_set_size(frame, LV_PCT(100), 70); + lv_obj_set_style_bg_color(frame, lv_color_hex(0x586273), 0); + lv_obj_add_style(frame, style_main, LV_PART_MAIN); + lv_obj_align(frame, LV_ALIGN_BOTTOM_MID, 0, 0); + + /* 状态栏文字 */ + label = lv_label_create(frame); + tm_now = localtime(¶ms->production_date); + memcpy(&tm_production, tm_now, sizeof(struct tm)); + tm_now = localtime(¶ms->purchase_date); + memcpy(&tm_purchase, tm_now, sizeof(struct tm)); + const char *p1 = get_text_from_pool(TID_mfg_date); + const char *p2 = get_text_from_pool(TID_pur_date); + const char *p3 = get_text_from_pool(TID_phone); + sprintf(buf, "%s %04d-%02d-%02d %s %04d-%02d-%02d %s %s", + p1, + tm_production.tm_year + 1900, + tm_production.tm_mon + 1, + tm_production.tm_mday, + p2, + tm_purchase.tm_year + 1900, + tm_purchase.tm_mon + 1, + tm_purchase.tm_mday, + p3, + params->phone); + lv_label_set_text(label, buf); + lv_obj_set_style_text_font(label, &sans_r_18, 0); + lv_obj_set_style_text_color(label, lv_color_hex(0xffffff), 0); + lv_obj_align(label, LV_ALIGN_CENTER, 0, 0); +#endif +} + +static void page_body_init(lv_obj_t *parent) +{ + lv_obj_t *frame; + lv_obj_t *qrcode; + + lv_style_t *style_main = get_project_style(STYLE_PAGE); + + /* 显示区域 */ + frame = lv_obj_create(parent); + lv_obj_set_size(frame, LV_PCT(100), 420); + lv_obj_align(frame, LV_ALIGN_TOP_MID, 0, 60); + lv_obj_add_style(frame, style_main, 0); + + /* 二维码图片 */ + qrcode = lv_img_create(frame); + //lv_img_cache_invalidate_src("P:/data/qrcode.png"); + lv_img_set_src(qrcode, "P:/data/qrcode.png"); + lv_obj_align(qrcode, LV_ALIGN_CENTER, 0, 0); +} + +s32 tutorial_open(void *args) +{ + UNUSED(args); + + dprint("[%s]++\n", __func__); + + /* 获取参数数据接口 */ + params = get_params_data(); + + /* 获取运行时数据接口 */ + runtime = get_runtime_data(); + + /* 创建页面背景对象 */ + page_init(); + + /* 创建页面head对象 */ + page_head_init(page); + + /* 创建页面body对象 */ + page_body_init(page); + + /* success */ + last_time = get_current_time(); + + return 0; +} + +void tutorial_close(void) +{ + dprint("[%s]++\n", __func__); + page_deinit(); +} + +void tutorial_update(void) +{ + if (time_after(get_current_time(), last_time)) { + update_datetime(); + last_time = get_current_time() + 1000; + } +} + diff --git a/800x480/MK_wireless.c b/800x480/MK_wireless.c new file mode 100644 index 0000000..c0d2426 --- /dev/null +++ b/800x480/MK_wireless.c @@ -0,0 +1,1569 @@ +/* + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are + * met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * * Redistributions in binary form must reproduce the above + * copyright notice, this list of conditions and the following disclaimer + * in the documentation and/or other materials provided with the + * distribution. + * * Neither the name of the nor the names of its + * contributors may be used to endorse or promote products derived from + * this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT + * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR + * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT + * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT + * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, + * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY + * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE + * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + * + */ +#include +#include +#include +#include +#include +#include +#include "lvgl/lvgl.h" +#include "MK_macro.h" +#include "MK_types.h" +#include "MK_func.h" + +static lv_obj_t *page = NULL; +static lv_obj_t *lbl_time = NULL; +static lv_obj_t *btn_gohome = NULL; +static lv_obj_t *ta_page = NULL; +static lv_obj_t *lbl_no[WIRELESS_MAX / WIRELESS_COLS]; +static lv_obj_t *ta_adjust[2]; +static lv_obj_t *lbl_curpos = NULL; +static lv_obj_t *btn_wireless = NULL; +static lv_obj_t *dialog = NULL; + +static struct params_data *params; +static struct runtime_data *runtime; +static u32 last_time; +static s32 last_position; +static s32 current_page; +static s32 cutting_sync; +static s32 data_changed; +static s32 measure_bookmark; +static u32 random_val; +static u32 passwd_val; + +static struct wireless_info wireless[WIRELESS_MAX]; + +static void create_operating_zone_single(lv_obj_t *parent, + struct wireless_info *info); + +static void gen_random_val(void) +{ + s32 i; + u32 ll = 1; + + random_val = 0; + for (i = 0; i < 5; ++i) { + random_val += ((rand() % 9) + 1) * ll; + ll *= 10; + } +} + +static s32 recalc_page(s32 index) +{ + s32 old_page = current_page; + + current_page = index / WIRELESS_PER_PAGE; + return (old_page != current_page) ? 1 : 0; +} + +static void select_item(s32 index) +{ + u32 i; + + for (i = 0; i < COUNTOF(wireless); ++i) { + if (wireless[i].selected) { + wireless[i].dirty = 1; + } + wireless[i].selected = 0; + } + + if (index != -1) { + wireless[index].selected = 1; + wireless[index].dirty = 1; + } +} + +static s32 get_measure_pos(void) +{ + u32 i; + + for (i = 0; i < COUNTOF(wireless); ++i) { + if (wireless[i].measure) { + return i; + } + } + + return -1; +} + +static void measure_item(s32 index) +{ + u32 i; + + for (i = 0; i < COUNTOF(wireless); ++i) { + if (wireless[i].measure) { + wireless[i].dirty = 1; + } + wireless[i].measure = 0; + } + + if (index != -1) { + wireless[index].measure = 1; + wireless[index].dirty = 1; + } +} + +static void set_measure_start(s32 index) +{ + if (!runtime->measure_dir + || !(index == 0 || index == 2) + || wireless[index].target != 0) { + return; + } + measure_item(index); +} + +static void invalidate_page(s32 page_index) +{ + s32 start, end; + s32 i; + + start = page_index * WIRELESS_PER_PAGE; + end = start + WIRELESS_PER_PAGE; + for (i = start; i < end; ++i) { + wireless[i].dirty = 1; + } +} + +static void measure_set_value(s32 index, s32 val) +{ + buzz_alarm(); + wireless[index].target = val; + wireless[index].used = 0; + wireless[index].dirty = 1; + runtime->wireless_data[index] = val & 0x7ffffffff; + data_changed = TRUE; +} + +static void delete_selected(void) +{ + u32 i; + + for (i = 0; i < COUNTOF(wireless); ++i) { + if (wireless[i].selected) { + wireless[i].target = 0; + wireless[i].used = 0; + wireless[i].dirty = 1; + runtime->wireless_data[i] = 0; + data_changed = TRUE; + if (measure_bookmark == -1) { + measure_bookmark = get_measure_pos(); + } + measure_item(i); + break; + } + } +} + +static void mark_item(s32 index) +{ + if (wireless[index].target > 0) { + wireless[index].used = 1; + wireless[index].dirty = 1; + runtime->wireless_data[index] |= BIT(31); + data_changed = TRUE; + } +} + +static void start_item(s32 index) +{ + if (wireless[index].target > 0) { + if (!get_running_status()) { + buzz(); + runtime->target = wireless[index].target; + set_target_position(runtime->target); + if (runtime->sw_print) { + /* 同步打印 */ + s32 group = (index / WIRELESS_COLS) + 1; + s32 no = index % WIRELESS_COLS; + printer_action_with_group(runtime->target, group, no); + } + } + } +} + +static void show_operating_page(s32 page_index) +{ + s32 i; + s32 start, end; + char buf[16]; + + /* 更新当前页数 */ + sprintf(buf, "%d", current_page + 1); + lv_label_set_text(ta_page, buf); + + /* 更新当前页序号 */ + start = page_index * WIRELESS_ROWS; + end = start + WIRELESS_ROWS - 1; + for (i = 0; i < WIRELESS_MAX / WIRELESS_COLS; ++i) { + if (i < start || i > end) { + if (!lv_obj_has_flag(lbl_no[i], LV_OBJ_FLAG_HIDDEN)) { + lv_obj_add_flag(lbl_no[i], LV_OBJ_FLAG_HIDDEN); + } + } + else { + lv_obj_clear_flag(lbl_no[i], LV_OBJ_FLAG_HIDDEN); + } + } + + /* 更新当前页内容 */ + start = page_index * WIRELESS_PER_PAGE; + end = start + WIRELESS_PER_PAGE - 1; + for (i = 0; i < WIRELESS_MAX; ++i) { + if (i < start || i > end) { + /* 未创建的控件不用处理 */ + if (!wireless[i].created) { + continue; + } + + if (!lv_obj_has_flag(wireless[i].obj[0], LV_OBJ_FLAG_HIDDEN)) { + lv_obj_add_flag(wireless[i].obj[0], LV_OBJ_FLAG_HIDDEN); + } + if (!lv_obj_has_flag(wireless[i].obj[1], LV_OBJ_FLAG_HIDDEN)) { + lv_obj_add_flag(wireless[i].obj[1], LV_OBJ_FLAG_HIDDEN); + } + if (!lv_obj_has_flag(wireless[i].obj[2], LV_OBJ_FLAG_HIDDEN)) { + lv_obj_add_flag(wireless[i].obj[2], LV_OBJ_FLAG_HIDDEN); + } + } + else { + /* 创建控件 */ + if (!wireless[i].created) { + create_operating_zone_single(page, &wireless[i]); + wireless[i].created = 1; + } + + /* 状态无变化的控件不用处理 */ + if (!wireless[i].dirty) { + continue; + } + wireless[i].dirty = 0; + + sprintf(buf, "%.1f", wireless[i].target / STORE_RATE); + lv_label_set_text(wireless[i].obj[0], buf); + + /* 选择项的颜色 */ + if (wireless[i].selected) { + lv_obj_set_style_bg_color(wireless[i].obj[0], + lv_color_hex(0x00e800), 0); + } + else if (wireless[i].measure) { + lv_obj_set_style_bg_color(wireless[i].obj[0], + lv_color_hex(0xd0d0ff), 0); + } + else { + lv_obj_set_style_bg_color(wireless[i].obj[0], + lv_color_hex(0xffffff), 0); + } + + /* 是否已经使用过的标志 */ + if (wireless[i].used) { + lv_obj_clear_flag(wireless[i].obj[1], LV_OBJ_FLAG_HIDDEN); + } + else { + lv_obj_add_flag(wireless[i].obj[1], LV_OBJ_FLAG_HIDDEN); + } + + /* 输入框及按钮可见 */ + lv_obj_clear_flag(wireless[i].obj[0], LV_OBJ_FLAG_HIDDEN); + lv_obj_clear_flag(wireless[i].obj[2], LV_OBJ_FLAG_HIDDEN); + } + } + dprint("start=%d, end=%d\n", start, end); +} + +static void adjust_update(const char *val, void *user_data) +{ + lv_obj_t *ta = (lv_obj_t *)user_data; + s32 ta_id = (s32)lv_obj_get_user_data(ta); + char buf[16]; + + /* 值设定 */ + s32 v = strtof(val, NULL) * STORE_RATE; + switch (ta_id) { + case TA_HORIZONTAL: + runtime->horizontal = v; + break; + + case TA_VERTICAL: + runtime->vertical = v; + break; + + default: + break; + } + + data_changed = TRUE; + sprintf(buf, "%.1f", v / STORE_RATE); + lv_label_set_text(ta, buf); +} + +static s32 is_horizontal(s32 index) +{ + if ((index % WIRELESS_COLS) < 2) { + return 1; + } + + return 0; +} + +static void ev_next(lv_event_t *e) +{ + u32 i; + s32 cur_index = -1; + + UNUSED(e); + + if (get_running_status()) { + dprint("target is running.\n"); + return; + } + + /* 查找当前使用项 */ + for (i = 0; i < COUNTOF(wireless); ++i) { + if (wireless[i].selected) { + cur_index = i; + break; + } + } + dprint("cutting index: %d\n", cur_index); + + /* 选择下一项 */ + if (runtime->cutting_dir) { + cur_index += (cur_index % 2) ? 3 : 1; + } + else { + cur_index += 1; + } + + if (cur_index < WIRELESS_MAX) { + if (wireless[cur_index].target > 0) { + if (recalc_page(cur_index)) { + invalidate_page(current_page); + } + select_item(cur_index); + start_item(cur_index); + mark_item(cur_index); + show_operating_page(current_page); + } + } +} + +#if 0 +static s32 cutting_next(s32 val); +static void ev_test2(lv_event_t *e) +{ + u32 i; + s32 cur_index = 0; + + /* 查找当前使用项 */ + for (i = 0; i < COUNTOF(wireless); ++i) { + if (wireless[i].measure) { + cur_index = i; + break; + } + } + dprint("measure index: %d\n", cur_index); + + /* 如果当前测量位置数值不为0.0,则不覆盖,直接返回 */ + if (wireless[cur_index].target != 0) { + return; + } + + if (cur_index < WIRELESS_MAX) { + // test + f32 val = (rand() % 400) + 100 + (rand() % 10) / 10.0; + val = (s32)(val * 10) * STORE_RATE / 10; + f32 val2 = val; + if (is_horizontal(cur_index)) { + dprint("[horizontal] "); + val += runtime->horizontal * 2; + } + else { + dprint("[vertical] "); + val += runtime->vertical * 2; + } + + if (cutting_sync) { + if (cutting_next(val)) { + measure_set_value(cur_index, val); + } + else { + return; + } + } + else { + measure_set_value(cur_index, val); + } + } + + /* 跳回上一次准备测量的位置,在做单个删除时会记录原来的测量位置 */ + if (measure_bookmark == -1) { + /* 选择下一项,如果有效 */ + if (runtime->measure_dir) { + cur_index += (cur_index % 2) ? 3 : 1; + } + else { + cur_index++; + } + runtime->measure_pos = cur_index; + } + else { + cur_index = measure_bookmark; + measure_bookmark = -1; + } + if (cur_index < WIRELESS_MAX) { + measure_item(cur_index); + } + + show_operating_page(current_page); +} +#endif + +static s32 cutting_next(s32 val) +{ + s32 cur_index = 0; + u32 i; + + if (!get_running_status()) { + buzz(); + + /* 查找当前使用项 */ + for (i = 0; i < COUNTOF(wireless); ++i) { + if (wireless[i].measure) { + cur_index = i; + break; + } + } + dprint("measure index: %d\n", cur_index); + + if (is_horizontal(cur_index)) { + dprint("[horizontal] "); + val += runtime->horizontal * 2; + } + else { + dprint("[vertical] "); + val += runtime->vertical * 2; + } + + runtime->target = val; + set_target_position(runtime->target); + if (runtime->sw_print) { + /* 同步打印 */ + s32 pos = get_measure_pos(); + s32 index = wireless[pos].index; + s32 group = (index / WIRELESS_COLS) + 1; + s32 no = index % WIRELESS_COLS; + printer_action_with_group(runtime->target, group, no); + } + + return TRUE; + } + + return FALSE; +} + +static void measure_next(s32 val) +{ + u32 i; + s32 cur_index = 0; + + /* 查找当前使用项 */ + for (i = 0; i < COUNTOF(wireless); ++i) { + if (wireless[i].measure) { + cur_index = i; + break; + } + } + dprint("[%s]measure index: %d\n", __func__, cur_index); + + /* 如果当前测量位置数值不为0.0,则不覆盖,直接返回 */ + if (wireless[cur_index].target != 0) { + return; + } + + if (cur_index < WIRELESS_MAX) { + if (is_horizontal(cur_index)) { + dprint("[horizontal] "); + val += runtime->horizontal * 2; + } + else { + dprint("[vertical] "); + val += runtime->vertical * 2; + } + measure_set_value(cur_index, val); + } + + /* 跳回上一次准备测量的位置,在做单个删除时会记录原来的测量位置 */ + if (measure_bookmark == -1) { + /* 选择下一项,如果有效 */ + if (runtime->measure_dir) { + cur_index += (cur_index % 2) ? 3 : 1; + } + else { + cur_index++; + } + } + else { + cur_index = measure_bookmark; + measure_bookmark = -1; + } + + if (cur_index < WIRELESS_MAX) { + measure_item(cur_index); + } + + show_operating_page(current_page); +} + +static void ev_back(lv_event_t *e) +{ + UNUSED(e); + + buzz(); + set_current_window(WM_SINGLE); +} + +static void ev_gohome(lv_event_t *e) +{ + lv_obj_t *obj = lv_event_get_target(e); + + buzz(); + motor_reset(); + lv_obj_set_style_bg_color(obj, lv_color_hex(0x00a5ff), 0); + +// ev_test2(NULL); +} + +static void ev_clear(lv_event_t *e) +{ + s32 i; + s32 start = 0; + s32 end = COUNTOF(wireless); + + UNUSED(e); + + buzz(); + for (i = start; i < end; ++i) { + wireless[i].target = 0; + wireless[i].used = 0; + wireless[i].selected = 0; + wireless[i].measure = 0; + runtime->wireless_data[i] = 0; + } + data_changed = TRUE; + current_page = 0; + invalidate_page(current_page); +// measure_item(0); + show_operating_page(current_page); +} + +static void ev_page(lv_event_t *e) +{ + lv_obj_t *obj = lv_event_get_target(e); + s32 btn_id; + + buzz(); + btn_id = (s32)lv_obj_get_user_data(obj); + switch (btn_id) { + case BTN_PREV: + if (current_page > 0) { + current_page--; + invalidate_page(current_page); + } + break; + + case BTN_NEXT: + if (current_page < WIRELESS_PAGE - 1) { + current_page++; + invalidate_page(current_page); + } + break; + + default: + break; + } + + show_operating_page(current_page); +} + +static void ev_adjust(lv_event_t *e) +{ + static struct ime_cb ime_cb; + lv_obj_t *obj = lv_event_get_target(e); + + memset(&ime_cb, 0, sizeof(struct ime_cb)); + ime_cb.user_data = obj; + ime_cb.update = adjust_update; + + /* 调用输入框 */ + buzz(); + create_ime(runtime->min / STORE_RATE, runtime->max / STORE_RATE, &ime_cb); +} + +static void ev_input(lv_event_t *e) +{ + lv_obj_t *obj = lv_event_get_target(e); + s32 ta_id; + + ta_id = (s32)lv_obj_get_user_data(obj); + set_measure_start(ta_id); + select_item(ta_id); + if (wireless[ta_id].target > 0) { + start_item(ta_id); + mark_item(ta_id); + } + else { + buzz(); + } + show_operating_page(current_page); + + dprint("input: %d\n", ta_id); +} + +static void ev_close(lv_event_t *e) +{ + UNUSED(e); + buzz(); + + /* 等按键释放,防止传导到下一层窗口,引起误触发 */ + lv_indev_wait_release(lv_indev_get_act()); + + /* 关闭模式窗口 */ + lv_obj_del(dialog); + dialog = NULL; + + /* 取消屏幕独占模式 */ + lv_obj_clear_flag(lv_layer_top(), LV_OBJ_FLAG_CLICKABLE); +} + +static void passwd_value_update(const char *val, void *user_data) +{ + lv_obj_t *ta = (lv_obj_t *)user_data; + char buf[32]; + + /* 值设定 */ + passwd_val = strtol(val, NULL, 10); + sprintf(buf, "%d", passwd_val); + lv_textarea_set_text(ta, buf); +} + +static void ev_passwd_input(lv_event_t *e) +{ + static struct ime_cb ime_cb; + lv_obj_t *obj = lv_event_get_target(e); + + memset(&ime_cb, 0, sizeof(struct ime_cb)); + ime_cb.user_data = obj; +// ime_cb.verify = verify_target_range; + ime_cb.update = passwd_value_update; + + /* 调用输入框 */ + buzz(); + create_ime(0, 0, &ime_cb); +} + +static void ev_confirm(lv_event_t *e) +{ + UNUSED(e); + buzz(); + + u32 t = (((random_val + 7374) * 3) - 198) * 5; + if (t == passwd_val) { + params->wireless_module = 1; + params_data_save(); + + runtime->sw_wireless = 1; + get_measure_data(); /* 清除旧数据 */ + lv_obj_add_state(btn_wireless, LV_STATE_CHECKED); + + /* 等按键释放,防止传导到下一层窗口,引起误触发 */ + lv_indev_wait_release(lv_indev_get_act()); + + /* 关闭模式窗口 */ + lv_obj_del(dialog); + dialog = NULL; + + /* 取消屏幕独占模式 */ + lv_obj_clear_flag(lv_layer_top(), LV_OBJ_FLAG_CLICKABLE); + } +} + +static void create_permits_dialog(void) +{ + lv_obj_t *btn; + lv_obj_t *label; + lv_obj_t *ta; + char buf[64]; + lv_style_t *style_main = get_project_style(STYLE_METER); + lv_style_t *style_input = get_project_style(STYLE_INPUT); + lv_style_t *style_button = get_project_style(STYLE_BUTTON); + lv_style_t *style_label = get_project_style(STYLE_LABEL); + + /* 模式dialog容器 */ + lv_obj_add_flag(lv_layer_top(), LV_OBJ_FLAG_CLICKABLE); + dialog = lv_obj_create(lv_layer_top()); + lv_obj_set_size(dialog, 600, 330); + lv_obj_align(dialog, LV_ALIGN_CENTER, 0, -5); + lv_obj_add_style(dialog, style_main, LV_PART_MAIN); + lv_obj_set_style_border_width(dialog, 2, 0); + + /* 标题文字 */ + label = lv_label_create(dialog); + lv_obj_add_style(label, style_label, 0); + lv_obj_set_size(label, LV_PCT(100), 40); + lv_label_set_text_static(label, "请联系供货商, 告知无线ID以便获取开启密码"); + lv_obj_set_style_bg_opa(label, LV_OPA_COVER, 0); + lv_obj_set_style_bg_color(label, lv_color_hex(0x586273), 0); + lv_obj_set_style_pad_top(label, 6, 0); + lv_obj_set_style_text_align(label, LV_TEXT_ALIGN_CENTER, 0); + lv_obj_align(label, LV_ALIGN_TOP_MID, 0, 0); + + /* '开启无线ID'值 */ + ta = lv_textarea_create(dialog); + lv_textarea_set_one_line(ta, true); + lv_textarea_set_align(ta, LV_TEXT_ALIGN_CENTER); + lv_obj_add_style(ta, style_input, 0); + lv_obj_set_style_pad_top(ta, 10, 0); + lv_obj_set_style_border_color(ta, lv_color_hex(0), 0); + lv_obj_set_style_bg_color(ta, lv_color_hex(0xe0e0e0), 0); + gen_random_val(); + sprintf(buf, "%d", random_val); + lv_textarea_set_text(ta, buf); + lv_obj_set_size(ta, 200, 48); + lv_textarea_set_accepted_chars(ta, "0123456789.-"); + lv_obj_set_style_opa(ta, LV_OPA_TRANSP, LV_PART_CURSOR); + lv_obj_align(ta, LV_ALIGN_TOP_MID, 0, 60); + + /* '开启无线ID'标题 */ + label = lv_label_create(dialog); + lv_obj_add_style(label, style_label, 0); + lv_label_set_text_static(label, "开启无线ID:"); + lv_obj_set_style_text_color(label, lv_color_hex(0), 0); + lv_obj_align_to(label, ta, LV_ALIGN_OUT_LEFT_MID, -20, 0); + + /* '输入开启密码'值 */ + ta = lv_textarea_create(dialog); + lv_textarea_set_one_line(ta, true); + lv_textarea_set_align(ta, LV_TEXT_ALIGN_CENTER); + lv_obj_add_style(ta, style_input, 0); + lv_obj_set_style_pad_top(ta, 10, 0); + lv_obj_set_style_border_color(ta, lv_color_hex(0), 0); + lv_textarea_set_text(ta, "0"); + lv_obj_set_size(ta, 200, 48); + lv_textarea_set_accepted_chars(ta, "0123456789.-"); + lv_obj_align(ta, LV_ALIGN_TOP_MID, 0, 128); + lv_obj_add_event_cb(ta, ev_passwd_input, LV_EVENT_CLICKED, NULL); + + /* '输入开启密码'标题 */ + label = lv_label_create(dialog); + lv_obj_add_style(label, style_label, 0); + lv_label_set_text_static(label, "输入开启密码:"); + lv_obj_set_style_text_color(label, lv_color_hex(0), 0); + lv_obj_align_to(label, ta, LV_ALIGN_OUT_LEFT_MID, -20, 0); + + /* '开启' */ + btn = lv_btn_create(dialog); + lv_obj_set_user_data(btn, (void *)BTN_INC); + lv_obj_set_size(btn, 150, 48); + lv_obj_add_style(btn, style_button, 0); + lv_obj_set_style_bg_color(btn, lv_color_hex(0xa8a8a8), 0); + lv_obj_align(btn, LV_ALIGN_TOP_RIGHT, -20, 60); + label = lv_label_create(btn); + lv_label_set_text_static(label, "开启"); + lv_obj_align(label, LV_ALIGN_CENTER, 0, 0); + lv_obj_add_event_cb(btn, ev_confirm, LV_EVENT_CLICKED, NULL); + + /* 关闭 */ + btn = lv_btn_create(dialog); + lv_obj_set_size(btn, 150, 48); + lv_obj_add_style(btn, style_button, 0); +// lv_obj_set_style_bg_color(btn, lv_color_hex(0xa8a8a8), 0); + lv_obj_align(btn, LV_ALIGN_BOTTOM_RIGHT, -20, -20); + label = lv_label_create(btn); + lv_label_set_text_static(label, "关闭"); + lv_obj_align(label, LV_ALIGN_CENTER, 0, 0); + lv_obj_add_event_cb(btn, ev_close, LV_EVENT_CLICKED, NULL); +} + +static void wireless_callback(lv_obj_t *obj) +{ + if (params->wireless_module) { /* 已经许可使用无线模块 */ + if (lv_obj_has_state(obj, LV_STATE_CHECKED)) { + runtime->sw_wireless = 1; + get_measure_data(); /* 清除旧数据 */ + } + else { + runtime->sw_wireless = 0; + } + } + else { /* 未许可使用无线模块 */ + lv_obj_clear_state(obj, LV_STATE_CHECKED); + create_permits_dialog(); + } +} + +static void ev_right_bar(lv_event_t *e) +{ + lv_obj_t *obj = lv_event_get_target(e); + s32 btn_id; + + buzz(); + btn_id = (s32)lv_obj_get_user_data(obj); + switch (btn_id) { + case BTN_DEL: + delete_selected(); + show_operating_page(current_page); + break; + + case BTN_WLON: + wireless_callback(obj); + break; + + case BTN_PTON: + if (lv_obj_has_state(obj, LV_STATE_CHECKED)) { + runtime->sw_print = TRUE; + } + else { + runtime->sw_print = FALSE; + } + break; + + case BTN_SYNC: + if (lv_obj_has_state(obj, LV_STATE_CHECKED)) { + cutting_sync = 1; + } + else { + cutting_sync = 0; + } + break; + + case BTN_CUTTING: + if (lv_obj_has_state(obj, LV_STATE_CHECKED)) { + runtime->cutting_dir = 1; + } + else { + runtime->cutting_dir = 0; + } + dprint("cutting direction: %d\n", runtime->cutting_dir); + break; + + case BTN_MEASURE: + if (lv_obj_has_state(obj, LV_STATE_CHECKED)) { + runtime->measure_dir = 1; + } + else { + runtime->measure_dir = 0; + } + dprint("measure direction: %d\n", runtime->measure_dir); + break; + + default: + break; + } +} + +static void ev_terminate(lv_event_t *e) +{ + UNUSED(e); + + buzz(); + motor_terminate(); + lv_obj_set_style_bg_color(btn_gohome, lv_color_hex(0xa8a8a8), 0); +} + +static void create_operating_zone_no(lv_obj_t *parent, s32 index) +{ + lv_obj_t *label; + char buf[16]; + s32 top; + const char *text; + lv_style_t *style_input = get_project_style(STYLE_INPUT2); + + /* 编号 */ + label = lv_label_create(parent); + lv_obj_set_size(label, 65, 65); + text = get_text_from_pool(TID_group); + sprintf(buf, text, index + 1); + lv_label_set_text(label, buf); + lv_obj_add_style(label, style_input, 0); + lv_obj_set_style_bg_color(label, lv_color_hex(0x586273), 0); + lv_obj_set_style_text_color(label, lv_color_hex(0xd0d0d0), 0); + lv_obj_set_style_pad_top(label, 18, 0); + top = (index % WIRELESS_ROWS) * (65 + 10) + 110; + lv_obj_align(label, LV_ALIGN_TOP_LEFT, 10, top); + lv_obj_add_flag(label, LV_OBJ_FLAG_HIDDEN); + lbl_no[index] = label; +} + +static void create_operating_zone_single(lv_obj_t *parent, + struct wireless_info *info) +{ + lv_obj_t *label; + lv_obj_t *obj; + lv_obj_t *ta; + char buf[16]; + lv_style_t *style_main = get_project_style(STYLE_PAGE); + lv_style_t *style_input = get_project_style(STYLE_INPUT2); + lv_style_t *style_label = get_project_style(STYLE_LABEL); + + /* 输入框 */ + ta = lv_label_create(parent); + lv_obj_set_user_data(ta, (void *)info->index); + lv_obj_set_size(ta, 110, 35); + lv_obj_add_flag(ta, LV_OBJ_FLAG_CLICKABLE); + lv_obj_add_style(ta, style_input, 0); + lv_obj_set_style_pad_top(ta, 4, 0); + sprintf(buf, "%.1f", info->target / STORE_RATE); + lv_label_set_text(ta, buf); + lv_obj_align(ta, LV_ALIGN_TOP_LEFT, info->coord.x0, info->coord.y0); + lv_obj_add_event_cb(ta, ev_input, LV_EVENT_CLICKED, NULL); + info->obj[0] = ta; + + /* 已经使用的标识条 */ + obj = lv_bar_create(parent); + lv_obj_set_size(obj, 108, 5); + lv_obj_add_style(obj, style_main, LV_PART_MAIN); + lv_obj_set_style_border_width(obj, 0, 0); + lv_obj_set_style_bg_color(obj, lv_color_hex(0xff0000), 0); + lv_obj_align_to(obj, ta, LV_ALIGN_OUT_BOTTOM_MID, 0, -2); + lv_obj_add_flag(obj, LV_OBJ_FLAG_HIDDEN); + info->obj[1] = obj; + + /* 编号 */ + label = lv_label_create(parent); + lv_obj_set_size(label, 110, 25); + lv_label_set_text(label, info->no); + lv_obj_add_style(label, style_label, 0); + lv_obj_set_style_bg_opa(label, LV_OPA_COVER, 0); + lv_obj_set_style_bg_color(label, lv_color_hex(0x586273), 0); + lv_obj_set_style_text_align(label, LV_TEXT_ALIGN_CENTER, 0); + lv_obj_align_to(label, info->obj[0], LV_ALIGN_OUT_BOTTOM_MID, 0, 5); + lv_obj_add_flag(label, LV_OBJ_FLAG_HIDDEN); + info->obj[2] = label; +} + +static void create_operating_zone(lv_obj_t *parent) +{ + lv_obj_t *frame; + lv_obj_t *label; + lv_obj_t *temp; + const char *text; + lv_style_t *style_main = get_project_style(STYLE_PAGE); + lv_style_t *style_label = get_project_style(STYLE_LABEL); + + /* 序号 */ + frame = lv_obj_create(parent); + lv_obj_set_size(frame, 65, 35); + lv_obj_add_style(frame, style_main, 0); + lv_obj_set_style_bg_color(frame, lv_color_hex(0x586273), 0); + lv_obj_align(frame, LV_ALIGN_TOP_LEFT, 10, 70); + label = lv_label_create(frame); + lv_obj_add_style(label, style_label, 0); + text = get_text_from_pool(TID_no); + lv_label_set_text(label, text); + lv_obj_align(label, LV_ALIGN_CENTER, 0, 0); + temp = frame; + + /* 横压一 */ + frame = lv_obj_create(parent); + lv_obj_set_size(frame, 110, 35); + lv_obj_add_style(frame, style_main, 0); + lv_obj_set_style_bg_color(frame, lv_color_hex(0x586273), 0); + lv_obj_align_to(frame, temp, LV_ALIGN_OUT_RIGHT_MID, 10, 0); + label = lv_label_create(frame); + lv_obj_add_style(label, style_label, 0); + text = get_text_from_pool(TID_row1); + lv_label_set_text(label, text); + lv_obj_align(label, LV_ALIGN_CENTER, 0, 0); + temp = frame; + + /* 横压二 */ + frame = lv_obj_create(parent); + lv_obj_set_size(frame, 110, 35); + lv_obj_add_style(frame, style_main, 0); + lv_obj_set_style_bg_color(frame, lv_color_hex(0x586273), 0); + lv_obj_align_to(frame, temp, LV_ALIGN_OUT_RIGHT_MID, 5, 0); + label = lv_label_create(frame); + lv_obj_add_style(label, style_label, 0); + text = get_text_from_pool(TID_row2); + lv_label_set_text(label, text); + lv_obj_align(label, LV_ALIGN_CENTER, 0, 0); + temp = frame; + + /* 竖压一 */ + frame = lv_obj_create(parent); + lv_obj_set_size(frame, 110, 35); + lv_obj_add_style(frame, style_main, 0); + lv_obj_set_style_bg_color(frame, lv_color_hex(0x586273), 0); + lv_obj_align_to(frame, temp, LV_ALIGN_OUT_RIGHT_MID, 10, 0); + label = lv_label_create(frame); + lv_obj_add_style(label, style_label, 0); + text = get_text_from_pool(TID_col1); + lv_label_set_text(label, text); + lv_obj_align(label, LV_ALIGN_CENTER, 0, 0); + temp = frame; + + /* 竖压二 */ + frame = lv_obj_create(parent); + lv_obj_set_size(frame, 110, 35); + lv_obj_add_style(frame, style_main, 0); + lv_obj_set_style_bg_color(frame, lv_color_hex(0x586273), 0); + lv_obj_align_to(frame, temp, LV_ALIGN_OUT_RIGHT_MID, 5, 0); + label = lv_label_create(frame); + lv_obj_add_style(label, style_label, 0); + text = get_text_from_pool(TID_col2); + lv_label_set_text(label, text); + lv_obj_align(label, LV_ALIGN_CENTER, 0, 0); + temp = frame; + + /* 创建序号表 */ + u32 i; + for (i = 0; i < COUNTOF(lbl_no); ++i) { + create_operating_zone_no(parent, i); + } +} + +static void create_right_bar(lv_obj_t *parent) +{ + lv_obj_t *btn; + lv_obj_t *label; + lv_obj_t *ta; + lv_obj_t *temp; + const char *text; + char buf[16]; + lv_style_t *style_button = get_project_style(STYLE_BUTTON); + lv_style_t *style_input = get_project_style(STYLE_INPUT2); + lv_style_t *style_label = get_project_style(STYLE_LABEL); + + /* 右边栏'横压加减尺'输入框 */ + ta = lv_label_create(parent); + lv_obj_set_size(ta, 100, 35); + lv_obj_set_user_data(ta, (void *)TA_HORIZONTAL); + lv_obj_add_flag(ta, LV_OBJ_FLAG_CLICKABLE); + lv_obj_add_style(ta, style_input, 0); + lv_obj_set_style_pad_top(ta, 4, 0); + sprintf(buf, "%.1f", runtime->horizontal / STORE_RATE);//horizontal_adjust); + lv_label_set_text(ta, buf); + lv_obj_align(ta, LV_ALIGN_TOP_RIGHT, -10, 70); + lv_obj_add_event_cb(ta, ev_adjust, LV_EVENT_CLICKED, NULL); + ta_adjust[0] = ta; + + /* 右边栏'横压加减尺'标题 */ + label = lv_label_create(parent); + lv_obj_add_style(label, style_label, 0); + text = get_text_from_pool(TID_horizontal); + lv_label_set_text(label, text); + lv_obj_align_to(label, ta_adjust[0], LV_ALIGN_OUT_LEFT_MID, -5, 0); + + /* 右边栏'竖压加减尺'输入框 */ + ta = lv_label_create(parent); + lv_obj_set_size(ta, 100, 35); + lv_obj_set_user_data(ta, (void *)TA_VERTICAL); + lv_obj_add_flag(ta, LV_OBJ_FLAG_CLICKABLE); + lv_obj_add_style(ta, style_input, 0); + lv_obj_set_style_pad_top(ta, 4, 0); + sprintf(buf, "%.1f", runtime->vertical / STORE_RATE);//vertical_adjust); + lv_label_set_text(ta, buf); + lv_obj_align_to(ta, ta_adjust[0], LV_ALIGN_OUT_BOTTOM_MID, 0, 10); + lv_obj_add_event_cb(ta, ev_adjust, LV_EVENT_CLICKED, NULL); + ta_adjust[1] = ta; + + /* 右边栏'竖压加减尺'标题 */ + label = lv_label_create(parent); + lv_obj_add_style(label, style_label, 0); + text = get_text_from_pool(TID_vertical); + lv_label_set_text(label, text); + lv_obj_align_to(label, ta_adjust[1], LV_ALIGN_OUT_LEFT_MID, -5, 0); + temp = label; + + /* 右边栏'当前位置'显示框 */ + ta = lv_label_create(parent); + lv_obj_set_size(ta, 120, 35); + lv_obj_add_style(ta, style_label, 0); + lv_obj_set_style_text_align(ta, LV_TEXT_ALIGN_CENTER, 0); + lv_obj_set_style_pad_top(ta, 4, 0); + lv_obj_set_style_border_width(ta, 1, 0); + lv_obj_set_style_border_color(ta, lv_color_hex(0xa8a8a8), 0); + sprintf(buf, "%.1f", 0.0f); + lv_label_set_text(ta, buf); + lv_obj_align_to(ta, ta_adjust[1], LV_ALIGN_OUT_BOTTOM_RIGHT, 0, 10); + lbl_curpos = ta; + + /* 右边栏'当前位置'标题 */ + label = lv_label_create(parent); + lv_obj_add_style(label, style_label, 0); + text = get_text_from_pool(TID_curpos1); + lv_label_set_text(label, text); + lv_obj_align_to(label, lbl_curpos, LV_ALIGN_OUT_LEFT_MID, -8, 0); + + /* 右边栏'开启无线'按钮 */ + btn = lv_btn_create(parent); + lv_obj_set_user_data(btn, (void *)BTN_WLON); + lv_obj_set_size(btn, 110, 42); + lv_obj_add_style(btn, style_button, 0); + lv_obj_set_style_bg_color(btn, lv_color_hex(0xa8a8a8), 0); + lv_obj_set_style_text_color(btn, lv_color_hex(0), LV_STATE_CHECKED); + lv_obj_set_style_bg_color(btn, lv_color_hex(0x00ff00), LV_STATE_CHECKED); + lv_obj_add_flag(btn, LV_OBJ_FLAG_CHECKABLE); + if (runtime->sw_wireless) { + lv_obj_add_state(btn, LV_STATE_CHECKED); + } + else { + lv_obj_clear_state(btn, LV_STATE_CHECKED); + } + lv_obj_align_to(btn, lbl_curpos, LV_ALIGN_OUT_BOTTOM_RIGHT, 0, 10); + label = lv_label_create(btn); + text = get_text_from_pool(TID_wireless_on); + lv_label_set_text(label, text); + lv_obj_align(label, LV_ALIGN_CENTER, 0, 0); + lv_obj_add_event_cb(btn, ev_right_bar, LV_EVENT_CLICKED, NULL); + temp = btn_wireless = btn; + + /* 右边栏'单个删除'按钮 */ + btn = lv_btn_create(parent); + lv_obj_set_user_data(btn, (void *)BTN_DEL); + lv_obj_set_size(btn, 110, 42); + lv_obj_add_style(btn, style_button, 0); + lv_obj_set_style_bg_color(btn, lv_color_hex(0xa8a8a8), 0); + lv_obj_align_to(btn, temp, LV_ALIGN_OUT_LEFT_MID, -10, 0); + label = lv_label_create(btn); + text = get_text_from_pool(TID_del); + lv_label_set_text(label, text); + lv_obj_align(label, LV_ALIGN_CENTER, 0, 0); + lv_obj_add_event_cb(btn, ev_right_bar, LV_EVENT_CLICKED, NULL); + temp = btn; + + /* 右边栏'打印开关'按钮 */ + btn = lv_btn_create(parent); + lv_obj_set_user_data(btn, (void *)BTN_PTON); + lv_obj_set_size(btn, 110, 42); + lv_obj_add_style(btn, style_button, 0); + lv_obj_set_style_bg_color(btn, lv_color_hex(0xa8a8a8), 0); + lv_obj_set_style_text_color(btn, lv_color_hex(0), LV_STATE_CHECKED); + lv_obj_set_style_bg_color(btn, lv_color_hex(0x00ff00), LV_STATE_CHECKED); + lv_obj_add_flag(btn, LV_OBJ_FLAG_CHECKABLE); + if (runtime->sw_print) { + lv_obj_add_state(btn, LV_STATE_CHECKED); + } + else { + lv_obj_clear_state(btn, LV_STATE_CHECKED); + } + lv_obj_align_to(btn, temp, LV_ALIGN_OUT_BOTTOM_LEFT, 0, 10); + label = lv_label_create(btn); + text = get_text_from_pool(TID_print_sw2); + lv_label_set_text(label, text); + lv_obj_align(label, LV_ALIGN_CENTER, 0, 0); + lv_obj_add_event_cb(btn, ev_right_bar, LV_EVENT_CLICKED, NULL); + temp = btn; + + /* 右边栏'无线同步'按钮 */ + btn = lv_btn_create(parent); + lv_obj_set_user_data(btn, (void *)BTN_SYNC); + lv_obj_set_size(btn, 110, 42); + lv_obj_add_style(btn, style_button, 0); + lv_obj_set_style_bg_color(btn, lv_color_hex(0xa8a8a8), 0); + lv_obj_set_style_text_color(btn, lv_color_hex(0), LV_STATE_CHECKED); + lv_obj_set_style_bg_color(btn, lv_color_hex(0x00ff00), LV_STATE_CHECKED); + lv_obj_add_flag(btn, LV_OBJ_FLAG_CHECKABLE); + lv_obj_align_to(btn, temp, LV_ALIGN_OUT_RIGHT_MID, 10, 0); + label = lv_label_create(btn); + text = get_text_from_pool(TID_sync); + lv_label_set_text(label, text); + lv_obj_align(label, LV_ALIGN_CENTER, 0, 0); + lv_obj_add_event_cb(btn, ev_right_bar, LV_EVENT_CLICKED, NULL); + temp = btn; + + /* 右边栏'横/竖优先切割'按钮 */ + btn = lv_btn_create(parent); + lv_obj_set_user_data(btn, (void *)BTN_CUTTING); + lv_obj_set_size(btn, 230, 42); + lv_obj_add_style(btn, style_button, 0); + lv_obj_set_style_bg_color(btn, lv_color_hex(0xa8a8a8), 0); + lv_obj_set_style_text_color(btn, lv_color_hex(0), LV_STATE_CHECKED); + lv_obj_set_style_bg_color(btn, lv_color_hex(0x00ff00), LV_STATE_CHECKED); + lv_obj_add_flag(btn, LV_OBJ_FLAG_CHECKABLE); + if (runtime->cutting_dir) { + lv_obj_add_state(btn, LV_STATE_CHECKED); + } + else { + lv_obj_clear_state(btn, LV_STATE_CHECKED); + } + lv_obj_align_to(btn, temp, LV_ALIGN_OUT_BOTTOM_RIGHT, 0, 10); + label = lv_label_create(btn); + text = get_text_from_pool(TID_cutting); + lv_label_set_text(label, text); + lv_obj_align(label, LV_ALIGN_CENTER, 0, 0); + lv_obj_add_event_cb(btn, ev_right_bar, LV_EVENT_CLICKED, NULL); + temp = btn; + + /* 右边栏'横/竖优先测量'按钮 */ + btn = lv_btn_create(parent); + lv_obj_set_user_data(btn, (void *)BTN_MEASURE); + lv_obj_set_size(btn, 230, 42); + lv_obj_add_style(btn, style_button, 0); + lv_obj_set_style_bg_color(btn, lv_color_hex(0xa8a8a8), 0); + lv_obj_set_style_text_color(btn, lv_color_hex(0), LV_STATE_CHECKED); + lv_obj_set_style_bg_color(btn, lv_color_hex(0x00ff00), LV_STATE_CHECKED); + lv_obj_add_flag(btn, LV_OBJ_FLAG_CHECKABLE); + if (runtime->measure_dir) { + lv_obj_add_state(btn, LV_STATE_CHECKED); + } + else { + lv_obj_clear_state(btn, LV_STATE_CHECKED); + } + lv_obj_align_to(btn, temp, LV_ALIGN_OUT_BOTTOM_RIGHT, 0, 10); + label = lv_label_create(btn); + text = get_text_from_pool(TID_measure); + lv_label_set_text(label, text); + lv_obj_align(label, LV_ALIGN_CENTER, 0, 0); + lv_obj_add_event_cb(btn, ev_right_bar, LV_EVENT_CLICKED, NULL); +} + +static void page_init(void) +{ + lv_style_t *style_main = get_project_style(STYLE_PAGE); + + /* 创建页面容器 */ + page = lv_obj_create(lv_scr_act()); + lv_obj_set_size(page, LV_PCT(100), LV_PCT(100)); + lv_obj_add_style(page, style_main, LV_PART_MAIN); + lv_obj_set_style_bg_color(page, lv_color_hex(0x444b5a), 0); +} + +static void page_deinit(void) +{ + if (page != NULL) { + lv_obj_del(page); + page = NULL; + } +} + +static void page_head_init(lv_obj_t *parent) +{ + lv_obj_t *frame; + lv_obj_t *label; + lv_obj_t *btn; + lv_obj_t *temp; + lv_obj_t *ta; + const char *text; + lv_style_t *style_main = get_project_style(STYLE_PAGE); + lv_style_t *style_input = get_project_style(STYLE_INPUT2); + lv_style_t *style_button = get_project_style(STYLE_BUTTON); + + /* 标题栏背景 */ + frame = lv_obj_create(parent); + lv_obj_set_size(frame, LV_PCT(100), 60); + lv_obj_set_style_bg_color(frame, lv_color_hex(0x586273), 0); + lv_obj_add_style(frame, style_main, LV_PART_MAIN); + lv_obj_set_style_shadow_width(frame, 16, 0); + + lv_obj_t *logo = lv_img_create(frame); + lv_img_set_src(logo, "P:assets/lvgl_logo.png"); + lv_obj_align(logo, LV_ALIGN_LEFT_MID, 15, 0); + + /* 标题栏文字 */ + label = lv_label_create(frame); + text = get_text_from_pool(TID_wireless); + lv_label_set_text(label, text); + lv_obj_set_style_text_font(label, &sans_r_30, 0); + lv_obj_set_style_text_color(label, lv_color_hex(0xd0d0d0), 0); + lv_obj_align(label, LV_ALIGN_LEFT_MID, 70, 0); + + /* 标题栏日期时间 */ + lbl_time = lv_label_create(frame); + lv_label_set_text(lbl_time, ""); + lv_obj_set_style_text_font(lbl_time, &sans_r_18, 0); + lv_obj_set_style_text_color(lbl_time, lv_color_hex(0xffffff), 0); + lv_obj_align(lbl_time, LV_ALIGN_CENTER, 0, 0); + + /* 标题栏返回按钮 */ + btn = lv_btn_create(frame); + lv_obj_set_size(btn, 150, 48); + lv_obj_add_style(btn, style_button, 0); + lv_obj_set_style_bg_color(btn, lv_color_hex(0xa8a8a8), 0); + lv_obj_align(btn, LV_ALIGN_RIGHT_MID, -10, 0); + label = lv_label_create(btn); + text = get_text_from_pool(TID_back); + lv_label_set_text(label, text); + lv_obj_set_style_text_font(label, &sans_m_24, 0); + lv_obj_set_style_text_color(label, lv_color_hex(0x000000), 0); + lv_obj_align(label, LV_ALIGN_CENTER, 0, 0); + lv_obj_add_event_cb(btn, ev_back, LV_EVENT_CLICKED, NULL); + + /* 状态栏背景 */ + frame = lv_obj_create(parent); + lv_obj_set_size(frame, LV_PCT(100), 70); + lv_obj_set_style_bg_color(frame, lv_color_hex(0x586273), 0); + lv_obj_add_style(frame, style_main, LV_PART_MAIN); + lv_obj_align(frame, LV_ALIGN_BOTTOM_MID, 0, 0); + lv_obj_set_style_border_width(frame, 2, 0); + lv_obj_set_style_border_color(frame, lv_color_hex(0xa8a8a8), 0); + lv_obj_set_style_border_side(frame, LV_BORDER_SIDE_TOP, 0); + + /* 状态栏'上一页‘按钮 */ + btn = lv_btn_create(frame); + lv_obj_set_user_data(btn, (void *)BTN_PREV); + lv_obj_set_size(btn, 140, 48); + lv_obj_add_style(btn, style_button, 0); + lv_obj_set_style_bg_color(btn, lv_color_hex(0xa8a8a8), 0); + lv_obj_align(btn, LV_ALIGN_LEFT_MID, 10, 0); + label = lv_label_create(btn); + text = get_text_from_pool(TID_prev); + lv_label_set_text(label, text); + lv_obj_set_style_text_font(label, &sans_r_30, 0); + lv_obj_align(label, LV_ALIGN_CENTER, 0, 0); + lv_obj_add_event_cb(btn, ev_page, LV_EVENT_CLICKED, NULL); + + /* 第几页显示 */ + ta = lv_label_create(frame); + lv_obj_set_size(ta, 40, 42); + lv_obj_add_style(ta, style_input, 0); + lv_obj_set_style_bg_color(ta, lv_color_hex(0xf0f0f0), 0); + lv_obj_set_style_pad_top(ta, 5, 0); + lv_obj_set_style_text_font(ta, &sans_r_30, 0); + lv_obj_align_to(ta, btn, LV_ALIGN_OUT_RIGHT_MID, 5, 0); + ta_page = ta; + + /* 状态栏'下一页‘按钮 */ + btn = lv_btn_create(frame); + lv_obj_set_user_data(btn, (void *)BTN_NEXT); + lv_obj_set_size(btn, 140, 48); + lv_obj_add_style(btn, style_button, 0); + lv_obj_set_style_bg_color(btn, lv_color_hex(0xa8a8a8), 0); + lv_obj_align_to(btn, ta_page, LV_ALIGN_OUT_RIGHT_MID, 5, 0); + label = lv_label_create(btn); + text = get_text_from_pool(TID_next); + lv_label_set_text(label, text); + lv_obj_set_style_text_font(label, &sans_r_30, 0); + lv_obj_align(label, LV_ALIGN_CENTER, 0, 0); + lv_obj_add_event_cb(btn, ev_page, LV_EVENT_CLICKED, NULL); + temp = btn; + + /* 状态栏'清除数据'按钮 */ + btn = lv_btn_create(frame); + lv_obj_set_size(btn, 100, 48); + lv_obj_add_style(btn, style_button, 0); + lv_obj_set_style_bg_color(btn, lv_color_hex(0xa8a8a8), 0); + lv_obj_align_to(btn, temp, LV_ALIGN_OUT_RIGHT_MID, 10, 0); + label = lv_label_create(btn); + text = get_text_from_pool(TID_clear); + lv_label_set_text(label, text); + lv_obj_set_style_text_font(label, &sans_r_30, 0); + lv_obj_align(label, LV_ALIGN_CENTER, 0, 0); + lv_obj_add_event_cb(btn, ev_clear, LV_EVENT_CLICKED, NULL); + temp = btn; + + /* 状态栏'回原点'按钮 */ + btn = lv_btn_create(frame); + lv_obj_set_size(btn, 120, 48); + lv_obj_add_style(btn, style_button, 0); + if (get_gohome_status()) { + lv_obj_set_style_bg_color(btn, lv_color_hex(0x00a5ff), 0); + } + else { + lv_obj_set_style_bg_color(btn, lv_color_hex(0xa8a8a8), 0); + } + lv_obj_align_to(btn, temp, LV_ALIGN_OUT_RIGHT_MID, 10, 0); + label = lv_label_create(btn); + text = get_text_from_pool(TID_gohome); + lv_label_set_text(label, text); + lv_obj_set_style_text_font(label, &sans_r_30, 0); + lv_obj_align(label, LV_ALIGN_CENTER, 0, 0); + lv_obj_add_event_cb(btn, ev_gohome, LV_EVENT_CLICKED, NULL); + btn_gohome = btn; + + /* 状态栏'急停‘按钮 */ + btn = lv_btn_create(frame); + lv_obj_set_size(btn, 180, 54); + lv_obj_add_style(btn, style_button, 0); + lv_obj_set_style_bg_color(btn, lv_color_hex(0xff0000), 0); + lv_obj_align(btn, LV_ALIGN_RIGHT_MID, -10, 0); + label = lv_label_create(btn); + text = get_text_from_pool(TID_stop); + lv_label_set_text(label, text); + lv_obj_set_style_text_font(label, &sans_r_30, 0); + lv_obj_set_style_text_color(label, lv_color_hex(0xffffff), 0); + lv_obj_align(label, LV_ALIGN_CENTER, 0, 0); + lv_obj_add_event_cb(btn, ev_terminate, LV_EVENT_CLICKED, NULL); +} + +static void page_body_init(lv_obj_t *parent) +{ +#if defined(ZZF_DEBUG) + struct timeval tv1, tv2; + __attribute__((unused)) u32 us; + gettimeofday(&tv1, NULL); +#endif + + /* 创建操作区 */ + create_operating_zone(parent); + +#if defined(ZZF_DEBUG) + gettimeofday(&tv2, NULL); + us = 1000000 * (tv2.tv_sec - tv1.tv_sec) + (tv2.tv_usec - tv1.tv_usec); + dprint("create_operating_zone: %d\n", us); +#endif + + /* 创建右边栏功能区 */ + create_right_bar(parent); +} + +static void wireless_info_init(void) +{ + s32 i; + s32 left, top, col, space; + + memset(wireless, 0, sizeof(wireless)); + for (i = 0; i < WIRELESS_MAX; ++i) { + left = (i % WIRELESS_COLS) * (110 + 5) + 85; + top = (i % WIRELESS_PER_PAGE) / WIRELESS_COLS * (60 + 15) + 110; + col = (i % WIRELESS_COLS) % 2; + space = (i % WIRELESS_COLS) / 2; + if (space) { + left += 5; + sprintf(wireless[i].no, "<%d>", /*(row * 2) + */col + 1); + } + else { + sprintf(wireless[i].no, "%d", /*(row * 2) + */col + 1); + } + wireless[i].index = i; + wireless[i].coord.x0 = left; + wireless[i].coord.y0 = top; + wireless[i].target = runtime->wireless_data[i] & 0x7fffffff; + wireless[i].used = BIT_VAL(runtime->wireless_data[i], 31); +// wireless[i].target = (rand() % 1000) * 1.0 + (rand() % 10) / 10.0; +// wireless[i].target *= STORE_RATE; + wireless[i].dirty = 1; + if (wireless[i].target > 0) { + runtime->measure_pos = i + 1; + } + dprint("wireless[%d].target=%d, measure_pos: %d\n", i, + wireless[i].target, runtime->measure_pos); + } +} + +s32 wireless_open(void *args) +{ + UNUSED(args); + + dprint("[%s]++\n", __func__); + + /* 获取参数数据接口 */ + params = get_params_data(); + + /* 获取运行时数据接口 */ + runtime = get_runtime_data(); + + /* 本地参数初始 */ + current_page = 0; + last_position = -1; + cutting_sync = 0; + data_changed = FALSE; + measure_bookmark = -1; + wireless_info_init(); + + /* 创建页面背景对象 */ + page_init(); + + /* 创建页面head对象 */ + page_head_init(page); + + /* 创建页面body对象 */ + page_body_init(page); + + /* success */ + if (runtime->measure_pos < WIRELESS_MAX) { + measure_item(runtime->measure_pos); + } + check_keypress(KEY_X1); /* 上电后会有一次按键按下事件?*/ + show_operating_page(current_page); + last_time = get_current_time(); + + return 0; +} + +void wireless_close(void) +{ + dprint("[%s]++\n", __func__); + page_deinit(); +} + +void wireless_update(void) +{ + s32 pos; + char buf[32]; + + /* 更新挡板位置 */ + pos = get_current_position(); + if (pos != last_position) { + sprintf(buf, "%.1f", pos / STORE_RATE); + lv_label_set_text(lbl_curpos, buf); + last_position = pos; + } + + /* 读取无线测量尺数据 */ + if (runtime->sw_wireless) { + s32 val = get_measure_data(); + //if (val > 0) { + // sprintf(buf, "%.2f", val / STORE_RATE); + // lv_label_set_text(lbl_curpos, buf); + //} + if (val > 0 && val >= runtime->min && val <= runtime->max) { + if (cutting_sync) { + if (cutting_next(val)) { + measure_next(val); + } + } + else { + measure_next(val); + } + } + } + + /* 手动操作 */ + if (!(cutting_sync && runtime->sw_wireless)) { + if (check_keypress(KEY_X1)) { + dprint("KEY_X1 is pressed.\n"); + ev_next(NULL); + } + } + + /* 保存数据 */ + if (data_changed) { + wireless_data_save(); + data_changed = FALSE; + } + + if (time_after(get_current_time(), last_time)) { + last_time = get_current_time() + 1000; + } +} + diff --git a/800x480/evdev.c b/800x480/evdev.c new file mode 100644 index 0000000..fc7e549 --- /dev/null +++ b/800x480/evdev.c @@ -0,0 +1,273 @@ +/** + * @file evdev.c + * + */ + +/********************* + * INCLUDES + *********************/ +#include +#include +#include +#include +#include "lv_drv_conf.h" +#include "lvgl/lvgl.h" +#include "tslib.h" + +/********************* + * DEFINES + *********************/ + +/********************** + * TYPEDEFS + **********************/ + +/********************** + * STATIC PROTOTYPES + **********************/ +static int map(int x, int in_min, int in_max, int out_min, int out_max); + +/********************** + * STATIC VARIABLES + **********************/ +static int evdev_fd; +static int evdev_root_x; +static int evdev_root_y; +static int evdev_button; + +static int evdev_key_val; + +#if defined(ZZF_TSLIB) + static struct tsdev *ts; +#endif + +/********************** + * MACROS + **********************/ + +/********************** + * GLOBAL FUNCTIONS + **********************/ + +/** + * Initialize the evdev interface + */ +void evdev_init(void) +{ +#if !defined(ZZF_TSLIB) + evdev_fd = open(EVDEV_NAME, O_RDWR | O_NOCTTY | O_NDELAY); + if(evdev_fd == -1) { + perror("unable open evdev interface:"); + return; + } + + fcntl(evdev_fd, F_SETFL, O_ASYNC | O_NONBLOCK); +#else + struct ts_sample samp; + + ts = ts_setup(NULL, 1); + if (!ts) { + perror("ts_setup fail.\n"); + } + + if (ts) { + while (ts_read(ts, &samp, 1)); + } +#endif + + evdev_root_x = 0; + evdev_root_y = 0; + evdev_key_val = 0; + evdev_button = LV_INDEV_STATE_REL; +} +/** + * reconfigure the device file for evdev + * @param dev_name set the evdev device filename + * @return true: the device file set complete + * false: the device file doesn't exist current system + */ +bool evdev_set_file(char* dev_name) +{ + if(evdev_fd != -1) { + close(evdev_fd); + } + evdev_fd = open(dev_name, O_RDWR | O_NOCTTY | O_NDELAY); + + if(evdev_fd == -1) { + perror("unable open evdev interface:"); + return false; + } + + fcntl(evdev_fd, F_SETFL, O_ASYNC | O_NONBLOCK); + + evdev_root_x = 0; + evdev_root_y = 0; + evdev_key_val = 0; + evdev_button = LV_INDEV_STATE_REL; + + return true; +} +/** + * Get the current position and state of the evdev + * @param data store the evdev data here + * @return false: because the points are not buffered, so no more data to be read + */ +bool evdev_read(lv_indev_drv_t * drv, lv_indev_data_t * data) +{ +#if !defined(ZZF_TSLIB) + struct input_event in; + + while(read(evdev_fd, &in, sizeof(struct input_event)) > 0) { + if(in.type == EV_REL) { + if(in.code == REL_X) + #if EVDEV_SWAP_AXES + evdev_root_y += in.value; + #else + evdev_root_x += in.value; + #endif + else if(in.code == REL_Y) + #if EVDEV_SWAP_AXES + evdev_root_x += in.value; + #else + evdev_root_y += in.value; + #endif + } else if(in.type == EV_ABS) { + if(in.code == ABS_X) + #if EVDEV_SWAP_AXES + evdev_root_y = in.value; + #else + evdev_root_x = in.value; + #endif + else if(in.code == ABS_Y) + #if EVDEV_SWAP_AXES + evdev_root_x = in.value; + #else + evdev_root_y = in.value; + #endif + else if(in.code == ABS_MT_POSITION_X) + #if EVDEV_SWAP_AXES + evdev_root_y = in.value; + #else + evdev_root_x = in.value; + #endif + else if(in.code == ABS_MT_POSITION_Y) + #if EVDEV_SWAP_AXES + evdev_root_x = in.value; + #else + evdev_root_y = in.value; + #endif + else if(in.code == ABS_MT_TRACKING_ID) { + if(in.value == -1) + evdev_button = LV_INDEV_STATE_REL; + else if(in.value == 0) + evdev_button = LV_INDEV_STATE_PR; + } + } else if(in.type == EV_KEY) { + if(in.code == BTN_MOUSE || in.code == BTN_TOUCH) { + if(in.value == 0) + evdev_button = LV_INDEV_STATE_REL; + else if(in.value == 1) + evdev_button = LV_INDEV_STATE_PR; + } else if(drv->type == LV_INDEV_TYPE_KEYPAD) { + data->state = (in.value) ? LV_INDEV_STATE_PR : LV_INDEV_STATE_REL; + switch(in.code) { + case KEY_BACKSPACE: + data->key = LV_KEY_BACKSPACE; + break; + case KEY_ENTER: + data->key = LV_KEY_ENTER; + break; + case KEY_UP: + data->key = LV_KEY_UP; + break; + case KEY_LEFT: + data->key = LV_KEY_PREV; + break; + case KEY_RIGHT: + data->key = LV_KEY_NEXT; + break; + case KEY_DOWN: + data->key = LV_KEY_DOWN; + break; + default: + data->key = 0; + break; + } + evdev_key_val = data->key; + evdev_button = data->state; + return false; + } + } + } + + if(drv->type == LV_INDEV_TYPE_KEYPAD) { + /* No data retrieved */ + data->key = evdev_key_val; + data->state = evdev_button; + return false; + } + if(drv->type != LV_INDEV_TYPE_POINTER) + return false; +#else + struct ts_sample samp[1]; + + if (!ts) { + return false; + } + + while (ts_read(ts, samp, 1) == 1) { + #if EVDEV_SWAP_AXES + evdev_root_x = samp[0].y; + evdev_root_y = samp[0].x; + #else + evdev_root_x = samp[0].x; + evdev_root_y = samp[0].y; + #endif + + if (samp[0].pressure == 0) { + evdev_button = LV_INDEV_STATE_REL; + } + else if (samp[0].pressure == 255) { + evdev_button = LV_INDEV_STATE_PR; + } + +// printf("samp: x0=%d, x1=%d, x2=%d, y0=%d, y1=%d, y2=%d, p0=%d, p1=%d, p2=%d\n", +// samp[0].x, samp[1].x, samp[2].x, samp[0].y, samp[1].y, samp[2].y, +// samp[0].pressure, samp[1].pressure, samp[2].pressure); + +// printf("samp.x=%d, samp.y=%d, pressure=%d\n", samp[0].x, samp[0].y, samp[0].pressure); + } +#endif + /*Store the collected data*/ + +#if EVDEV_CALIBRATE + data->point.x = map(evdev_root_x, EVDEV_HOR_MIN, EVDEV_HOR_MAX, 0, drv->disp->driver.hor_res); + data->point.y = map(evdev_root_y, EVDEV_VER_MIN, EVDEV_VER_MAX, 0, drv->disp->driver.ver_res); +#else + data->point.x = evdev_root_x; + data->point.y = evdev_root_y; +#endif + + data->state = evdev_button; + + if(data->point.x < 0) + data->point.x = 0; + if(data->point.y < 0) + data->point.y = 0; + if(data->point.x >= drv->disp->driver->hor_res) + data->point.x = drv->disp->driver->hor_res - 1; + if(data->point.y >= drv->disp->driver->ver_res) + data->point.y = drv->disp->driver->ver_res - 1; + + return false; +} + +/********************** + * STATIC FUNCTIONS + **********************/ +__attribute__((unused)) int map(int x, int in_min, int in_max, int out_min, + int out_max) +{ + return (x - in_min) * (out_max - out_min) / (in_max - in_min) + out_min; +} + diff --git a/800x480/fbdev.c b/800x480/fbdev.c new file mode 100644 index 0000000..1547230 --- /dev/null +++ b/800x480/fbdev.c @@ -0,0 +1,210 @@ +/** + * @file fbdev.c + * + */ + +/********************* + * INCLUDES + *********************/ +#include +#include +#include +#include +#include +#include +#include +#include +#include "lvgl/lvgl.h" + +/********************* + * DEFINES + *********************/ +#ifndef FBDEV_PATH +#define FBDEV_PATH "/dev/fb0" +#endif + +/********************** + * TYPEDEFS + **********************/ + +/********************** + * STRUCTURES + **********************/ + +struct bsd_fb_var_info{ + uint32_t xoffset; + uint32_t yoffset; + uint32_t xres; + uint32_t yres; + int bits_per_pixel; + }; + +struct bsd_fb_fix_info{ + long int line_length; + long int smem_len; +}; + +/********************** + * STATIC PROTOTYPES + **********************/ + +/********************** + * STATIC VARIABLES + **********************/ +static struct fb_var_screeninfo vinfo; +static struct fb_fix_screeninfo finfo; +static char *fbp = 0; +static long int screensize = 0; +static int fbfd = 0; + +/********************** + * MACROS + **********************/ + +/********************** + * GLOBAL FUNCTIONS + **********************/ + +void fbdev_init(void) +{ + // Open the file for reading and writing + fbfd = open(FBDEV_PATH, O_RDWR); + if(fbfd == -1) { + perror("Error: cannot open framebuffer device"); + return; + } + printf("The framebuffer device was opened successfully.\n"); + + // Get fixed screen information + if(ioctl(fbfd, FBIOGET_FSCREENINFO, &finfo) == -1) { + perror("Error reading fixed information"); + return; + } + + // Get variable screen information + if(ioctl(fbfd, FBIOGET_VSCREENINFO, &vinfo) == -1) { + perror("Error reading variable information"); + return; + } + + printf("%dx%d, %dbpp\n", vinfo.xres, vinfo.yres, vinfo.bits_per_pixel); + + // Figure out the size of the screen in bytes + screensize = finfo.smem_len; //finfo.line_length * vinfo.yres; + + // Map the device to memory + fbp = (char *)mmap(0, screensize, PROT_READ | PROT_WRITE, MAP_SHARED, fbfd, 0); + if((intptr_t)fbp == -1) { + perror("Error: failed to map framebuffer device to memory"); + return; + } + memset(fbp, 0, screensize); + + printf("The framebuffer device was mapped to memory successfully.\n"); + +} + +void fbdev_exit(void) +{ + close(fbfd); +} + +/** + * Flush a buffer to the marked area + * @param drv pointer to driver where this function belongs + * @param area an area where to copy `color_p` + * @param color_p an array of pixel to copy to the `area` part of the screen + */ +void fbdev_flush(lv_disp_drv_t * drv, const lv_area_t * area, lv_color_t * color_p) +{ + if(fbp == NULL || + area->x2 < 0 || + area->y2 < 0 || + area->x1 > (int32_t)vinfo.xres - 1 || + area->y1 > (int32_t)vinfo.yres - 1) { + lv_disp_flush_ready(drv); + return; + } + + /*Truncate the area to the screen*/ + int32_t act_x1 = area->x1 < 0 ? 0 : area->x1; + int32_t act_y1 = area->y1 < 0 ? 0 : area->y1; + int32_t act_x2 = area->x2 > (int32_t)vinfo.xres - 1 ? (int32_t)vinfo.xres - 1 : area->x2; + int32_t act_y2 = area->y2 > (int32_t)vinfo.yres - 1 ? (int32_t)vinfo.yres - 1 : area->y2; + + + lv_coord_t w = (act_x2 - act_x1 + 1); + long int location = 0; + long int byte_location = 0; + unsigned char bit_location = 0; + + /*32 or 24 bit per pixel*/ + if(vinfo.bits_per_pixel == 32 || vinfo.bits_per_pixel == 24) { + uint32_t * fbp32 = (uint32_t *)fbp; + int32_t y; + for(y = act_y1; y <= act_y2; y++) { + location = (act_x1 + vinfo.xoffset) + (y + vinfo.yoffset) * finfo.line_length / 4; + memcpy(&fbp32[location], (uint32_t *)color_p, (act_x2 - act_x1 + 1) * 4); + color_p += w; + } + } + /*16 bit per pixel*/ + else if(vinfo.bits_per_pixel == 16) { + uint16_t * fbp16 = (uint16_t *)fbp; + int32_t y; + for(y = act_y1; y <= act_y2; y++) { + location = (act_x1 + vinfo.xoffset) + (y + vinfo.yoffset) * finfo.line_length / 2; + memcpy(&fbp16[location], (uint32_t *)color_p, (act_x2 - act_x1 + 1) * 2); + color_p += w; + } + } + /*8 bit per pixel*/ + else if(vinfo.bits_per_pixel == 8) { + uint8_t * fbp8 = (uint8_t *)fbp; + int32_t y; + for(y = act_y1; y <= act_y2; y++) { + location = (act_x1 + vinfo.xoffset) + (y + vinfo.yoffset) * finfo.line_length; + memcpy(&fbp8[location], (uint32_t *)color_p, (act_x2 - act_x1 + 1)); + color_p += w; + } + } + /*1 bit per pixel*/ + else if(vinfo.bits_per_pixel == 1) { + uint8_t * fbp8 = (uint8_t *)fbp; + int32_t x; + int32_t y; + for(y = act_y1; y <= act_y2; y++) { + for(x = act_x1; x <= act_x2; x++) { + location = (x + vinfo.xoffset) + (y + vinfo.yoffset) * vinfo.xres; + byte_location = location / 8; /* find the byte we need to change */ + bit_location = location % 8; /* inside the byte found, find the bit we need to change */ + fbp8[byte_location] &= ~(((uint8_t)(1)) << bit_location); + fbp8[byte_location] |= ((uint8_t)(color_p->full)) << bit_location; + color_p++; + } + + color_p += area->x2 - act_x2; + } + } else { + /*Not supported bit per pixel*/ + } + + //May be some direct update command is required + //ret = ioctl(state->fd, FBIO_UPDATE, (unsigned long)((uintptr_t)rect)); + + lv_disp_flush_ready(drv); +} + +void fbdev_get_sizes(uint32_t *width, uint32_t *height) +{ + if (width) + *width = vinfo.xres; + + if (height) + *height = vinfo.yres; +} + +/********************** + * STATIC FUNCTIONS + **********************/ + diff --git a/800x480/lv_conf.h b/800x480/lv_conf.h new file mode 100644 index 0000000..ef9ccab --- /dev/null +++ b/800x480/lv_conf.h @@ -0,0 +1,514 @@ +/** + * @file lv_conf.h + * Configuration file for v8.0.2 + */ + +/* + * COPY THIS FILE AS `lv_conf.h` NEXT TO the `lvgl` FOLDER + */ + +#if 1 /*Set it to "1" to enable content*/ + +#ifndef LV_CONF_H +#define LV_CONF_H +/*clang-format off*/ + +#include + + +/*==================== + COLOR SETTINGS + *====================*/ +#define LV_HOR_RES_MAX 800 +#define LV_VER_RES_MAX 480 + +/*Color depth: 1 (1 byte per pixel), 8 (RGB332), 16 (RGB565), 32 (ARGB8888)*/ +#define LV_COLOR_DEPTH 32 + +/*Swap the 2 bytes of RGB565 color. Useful if the display has a 8 bit interface (e.g. SPI)*/ +#define LV_COLOR_16_SWAP 0 + +/*Enable more complex drawing routines to manage screens transparency. + *Can be used if the UI is above another layer, e.g. an OSD menu or video player. + *Requires `LV_COLOR_DEPTH = 32` colors and the screen's `bg_opa` should be set to non LV_OPA_COVER value*/ +#define LV_COLOR_SCREEN_TRANSP 0 + +/*Images pixels with this color will not be drawn if they are chroma keyed)*/ +#define LV_COLOR_CHROMA_KEY lv_color_hex(0x00ff00) /*pure green*/ + +/*========================= + MEMORY SETTINGS + *=========================*/ + +/*1: use custom malloc/free, 0: use the built-in `lv_mem_alloc()` and `lv_mem_free()`*/ +#define LV_MEM_CUSTOM 1 +#if LV_MEM_CUSTOM == 0 +/*Size of the memory available for `lv_mem_alloc()` in bytes (>= 2kB)*/ +# define LV_MEM_SIZE (32U * 1024U) /*[bytes]*/ + +/*Set an address for the memory pool instead of allocating it as a normal array. Can be in external SRAM too.*/ +# define LV_MEM_ADR 0 /*0: unused*/ +#else /*LV_MEM_CUSTOM*/ +# define LV_MEM_CUSTOM_INCLUDE /*Header for the dynamic memory function*/ +# define LV_MEM_CUSTOM_ALLOC malloc +# define LV_MEM_CUSTOM_FREE free +# define LV_MEM_CUSTOM_REALLOC realloc +#endif /*LV_MEM_CUSTOM*/ + +/*Use the standard `memcpy` and `memset` instead of LVGL's own functions. (Might or might not be faster).*/ +#define LV_MEMCPY_MEMSET_STD 0 + +/*==================== + HAL SETTINGS + *====================*/ + +/*Default display refresh period. LVG will redraw changed ares with this period time*/ +#define LV_DISP_DEF_REFR_PERIOD 30 /*[ms]*/ + +/*Input device read period in milliseconds*/ +#define LV_INDEV_DEF_READ_PERIOD 30 /*[ms]*/ + +/*Use a custom tick source that tells the elapsed time in milliseconds. + *It removes the need to manually update the tick with `lv_tick_inc()`)*/ +#define LV_TICK_CUSTOM 0 +#if LV_TICK_CUSTOM +#define LV_TICK_CUSTOM_INCLUDE "Arduino.h" /*Header for the system time function*/ +#define LV_TICK_CUSTOM_SYS_TIME_EXPR (millis()) /*Expression evaluating to current system time in ms*/ +#endif /*LV_TICK_CUSTOM*/ + +/*Default Dot Per Inch. Used to initialize default sizes such as widgets sized, style paddings. + *(Not so important, you can adjust it to modify default sizes and spaces)*/ +#define LV_DPI_DEF 130 /*[px/inch]*/ + +/*======================= + * FEATURE CONFIGURATION + *=======================*/ + +/*------------- + * Drawing + *-----------*/ + +/*Enable complex draw engine. + *Required to draw shadow, gradient, rounded corners, circles, arc, skew lines, image transformations or any masks*/ +#define LV_DRAW_COMPLEX 1 +#if LV_DRAW_COMPLEX != 0 + +/*Allow buffering some shadow calculation. + *LV_SHADOW_CACHE_SIZE is the max. shadow size to buffer, where shadow size is `shadow_width + radius` + *Caching has LV_SHADOW_CACHE_SIZE^2 RAM cost*/ +#define LV_SHADOW_CACHE_SIZE 0 +#endif /*LV_DRAW_COMPLEX*/ + +/*Default image cache size. Image caching keeps the images opened. + *If only the built-in image formats are used there is no real advantage of caching. (I.e. if no new image decoder is added) + *With complex image decoders (e.g. PNG or JPG) caching can save the continuous open/decode of images. + *However the opened images might consume additional RAM. + *0: to disable caching*/ +#define LV_IMG_CACHE_DEF_SIZE 16 + +/*Maximum buffer size to allocate for rotation. Only used if software rotation is enabled in the display driver.*/ +#define LV_DISP_ROT_MAX_BUF (10*1024) +/*------------- + * GPU + *-----------*/ + +/*Use STM32's DMA2D (aka Chrom Art) GPU*/ +#define LV_USE_GPU_STM32_DMA2D 0 +#if LV_USE_GPU_STM32_DMA2D +/*Must be defined to include path of CMSIS header of target processor +e.g. "stm32f769xx.h" or "stm32f429xx.h"*/ +#define LV_GPU_DMA2D_CMSIS_INCLUDE +#endif + +/*Use NXP's PXP GPU iMX RTxxx platforms*/ +#define LV_USE_GPU_NXP_PXP 0 +#if LV_USE_GPU_NXP_PXP +/*1: Add default bare metal and FreeRTOS interrupt handling routines for PXP (lv_gpu_nxp_pxp_osa.c) + * and call lv_gpu_nxp_pxp_init() automatically during lv_init(). Note that symbol SDK_OS_FREE_RTOS + * has to be defined in order to use FreeRTOS OSA, otherwise bare-metal implementation is selected. + *0: lv_gpu_nxp_pxp_init() has to be called manually before lv_init() + */ +#define LV_USE_GPU_NXP_PXP_AUTO_INIT 0 +#endif + +/*Use NXP's VG-Lite GPU iMX RTxxx platforms*/ +#define LV_USE_GPU_NXP_VG_LITE 0 + +/*------------- + * Logging + *-----------*/ + +/*Enable the log module*/ +#define LV_USE_LOG 0 +#if LV_USE_LOG + +/*How important log should be added: + *LV_LOG_LEVEL_TRACE A lot of logs to give detailed information + *LV_LOG_LEVEL_INFO Log important events + *LV_LOG_LEVEL_WARN Log if something unwanted happened but didn't cause a problem + *LV_LOG_LEVEL_ERROR Only critical issue, when the system may fail + *LV_LOG_LEVEL_USER Only logs added by the user + *LV_LOG_LEVEL_NONE Do not log anything*/ +# define LV_LOG_LEVEL LV_LOG_LEVEL_WARN + +/*1: Print the log with 'printf'; + *0: User need to register a callback with `lv_log_register_print_cb()`*/ +# define LV_LOG_PRINTF 0 + +/*Enable/disable LV_LOG_TRACE in modules that produces a huge number of logs*/ +# define LV_LOG_TRACE_MEM 1 +# define LV_LOG_TRACE_TIMER 1 +# define LV_LOG_TRACE_INDEV 1 +# define LV_LOG_TRACE_DISP_REFR 1 +# define LV_LOG_TRACE_EVENT 1 +# define LV_LOG_TRACE_OBJ_CREATE 1 +# define LV_LOG_TRACE_LAYOUT 1 +# define LV_LOG_TRACE_ANIM 1 + +#endif /*LV_USE_LOG*/ + +/*------------- + * Asserts + *-----------*/ + +/*Enable asserts if an operation is failed or an invalid data is found. + *If LV_USE_LOG is enabled an error message will be printed on failure*/ +#define LV_USE_ASSERT_NULL 1 /*Check if the parameter is NULL. (Very fast, recommended)*/ +#define LV_USE_ASSERT_MALLOC 1 /*Checks is the memory is successfully allocated or no. (Very fast, recommended)*/ +#define LV_USE_ASSERT_STYLE 0 /*Check if the styles are properly initialized. (Very fast, recommended)*/ +#define LV_USE_ASSERT_MEM_INTEGRITY 0 /*Check the integrity of `lv_mem` after critical operations. (Slow)*/ +#define LV_USE_ASSERT_OBJ 0 /*Check the object's type and existence (e.g. not deleted). (Slow)*/ + +/*Add a custom handler when assert happens e.g. to restart the MCU*/ +#define LV_ASSERT_HANDLER_INCLUDE +#define LV_ASSERT_HANDLER while(1); /*Halt by default*/ + +/*------------- + * Others + *-----------*/ + +/*1: Show CPU usage and FPS count in the right bottom corner*/ +#define LV_USE_PERF_MONITOR 0 + +/*1: Show the used memory and the memory fragmentation in the left bottom corner + * Requires LV_MEM_CUSTOM = 0*/ +#define LV_USE_MEM_MONITOR 0 + +/*1: Draw random colored rectangles over the redrawn areas*/ +#define LV_USE_REFR_DEBUG 0 + +/*Change the built in (v)snprintf functions*/ +#define LV_SPRINTF_CUSTOM 0 +#if LV_SPRINTF_CUSTOM +# define LV_SPRINTF_INCLUDE +# define lv_snprintf snprintf +# define lv_vsnprintf vsnprintf +#else /*LV_SPRINTF_CUSTOM*/ +# define LV_SPRINTF_USE_FLOAT 0 +#endif /*LV_SPRINTF_CUSTOM*/ + +#define LV_USE_USER_DATA 1 + +/*Garbage Collector settings + *Used if lvgl is binded to higher level language and the memory is managed by that language*/ +#define LV_ENABLE_GC 0 +#if LV_ENABLE_GC != 0 +# define LV_GC_INCLUDE "gc.h" /*Include Garbage Collector related things*/ +#endif /*LV_ENABLE_GC*/ + +/*===================== + * COMPILER SETTINGS + *====================*/ + +/*For big endian systems set to 1*/ +#define LV_BIG_ENDIAN_SYSTEM 0 + +/*Define a custom attribute to `lv_tick_inc` function*/ +#define LV_ATTRIBUTE_TICK_INC + +/*Define a custom attribute to `lv_timer_handler` function*/ +#define LV_ATTRIBUTE_TIMER_HANDLER + +/*Define a custom attribute to `lv_disp_flush_ready` function*/ +#define LV_ATTRIBUTE_FLUSH_READY + +/*Required alignment size for buffers*/ +#define LV_ATTRIBUTE_MEM_ALIGN_SIZE + +/*Will be added where memories needs to be aligned (with -Os data might not be aligned to boundary by default). + * E.g. __attribute__((aligned(4)))*/ +#define LV_ATTRIBUTE_MEM_ALIGN + +/*Attribute to mark large constant arrays for example font's bitmaps*/ +#define LV_ATTRIBUTE_LARGE_CONST + +/*Complier prefix for a big array declaration in RAM*/ +#define LV_ATTRIBUTE_LARGE_RAM_ARRAY + +/*Place performance critical functions into a faster memory (e.g RAM)*/ +#define LV_ATTRIBUTE_FAST_MEM + +/*Prefix variables that are used in GPU accelerated operations, often these need to be placed in RAM sections that are DMA accessible*/ +#define LV_ATTRIBUTE_DMA + +/*Export integer constant to binding. This macro is used with constants in the form of LV_ that + *should also appear on LVGL binding API such as Micropython.*/ +#define LV_EXPORT_CONST_INT(int_value) struct _silence_gcc_warning /*The default value just prevents GCC warning*/ + +/*Extend the default -32k..32k coordinate range to -4M..4M by using int32_t for coordinates instead of int16_t*/ +#define LV_USE_LARGE_COORD 1 + +/*================== + * FONT USAGE + *===================*/ + +/*Montserrat fonts with ASCII range and some symbols using bpp = 4 + *https://fonts.google.com/specimen/Montserrat*/ +#define LV_FONT_MONTSERRAT_8 0 +#define LV_FONT_MONTSERRAT_10 0 +#define LV_FONT_MONTSERRAT_12 0 +#define LV_FONT_MONTSERRAT_14 1 +#define LV_FONT_MONTSERRAT_16 0 +#define LV_FONT_MONTSERRAT_18 0 +#define LV_FONT_MONTSERRAT_20 0 +#define LV_FONT_MONTSERRAT_22 0 +#define LV_FONT_MONTSERRAT_24 0 +#define LV_FONT_MONTSERRAT_26 0 +#define LV_FONT_MONTSERRAT_28 0 +#define LV_FONT_MONTSERRAT_30 0 +#define LV_FONT_MONTSERRAT_32 0 +#define LV_FONT_MONTSERRAT_34 0 +#define LV_FONT_MONTSERRAT_36 0 +#define LV_FONT_MONTSERRAT_38 0 +#define LV_FONT_MONTSERRAT_40 0 +#define LV_FONT_MONTSERRAT_42 0 +#define LV_FONT_MONTSERRAT_44 0 +#define LV_FONT_MONTSERRAT_46 0 +#define LV_FONT_MONTSERRAT_48 0 + +/*Demonstrate special features*/ +#define LV_FONT_MONTSERRAT_12_SUBPX 0 +#define LV_FONT_MONTSERRAT_28_COMPRESSED 0 /*bpp = 3*/ +#define LV_FONT_DEJAVU_16_PERSIAN_HEBREW 0 /*Hebrew, Arabic, Perisan letters and all their forms*/ +#define LV_FONT_SIMSUN_16_CJK 0 /*1000 most common CJK radicals*/ + +/*Pixel perfect monospace fonts*/ +#define LV_FONT_UNSCII_8 0 +#define LV_FONT_UNSCII_16 0 + +/*Optionally declare custom fonts here. + *You can use these fonts as default font too and they will be available globally. + *E.g. #define LV_FONT_CUSTOM_DECLARE LV_FONT_DECLARE(my_font_1) LV_FONT_DECLARE(my_font_2)*/ +#define LV_FONT_CUSTOM_DECLARE + +/*Always set a default font*/ +#define LV_FONT_DEFAULT &lv_font_montserrat_14 + +/*Enable handling large font and/or fonts with a lot of characters. + *The limit depends on the font size, font face and bpp. + *Compiler error will be triggered if a font needs it.*/ +#define LV_FONT_FMT_TXT_LARGE 0 + +/*Enables/disables support for compressed fonts.*/ +#define LV_USE_FONT_COMPRESSED 1 + +/*Enable subpixel rendering*/ +#define LV_USE_FONT_SUBPX 1 +#if LV_USE_FONT_SUBPX +/*Set the pixel order of the display. Physical order of RGB channels. Doesn't matter with "normal" fonts.*/ +#define LV_FONT_SUBPX_BGR 0 /*0: RGB; 1:BGR order*/ +#endif + +/*================= + * TEXT SETTINGS + *=================*/ + +/** + * Select a character encoding for strings. + * Your IDE or editor should have the same character encoding + * - LV_TXT_ENC_UTF8 + * - LV_TXT_ENC_ASCII + */ +#define LV_TXT_ENC LV_TXT_ENC_UTF8 + + /*Can break (wrap) texts on these chars*/ +#define LV_TXT_BREAK_CHARS " ,.;:-_" + +/*If a word is at least this long, will break wherever "prettiest" + *To disable, set to a value <= 0*/ +#define LV_TXT_LINE_BREAK_LONG_LEN 0 + +/*Minimum number of characters in a long word to put on a line before a break. + *Depends on LV_TXT_LINE_BREAK_LONG_LEN.*/ +#define LV_TXT_LINE_BREAK_LONG_PRE_MIN_LEN 3 + +/*Minimum number of characters in a long word to put on a line after a break. + *Depends on LV_TXT_LINE_BREAK_LONG_LEN.*/ +#define LV_TXT_LINE_BREAK_LONG_POST_MIN_LEN 3 + +/*The control character to use for signalling text recoloring.*/ +#define LV_TXT_COLOR_CMD "#" + +/*Support bidirectional texts. Allows mixing Left-to-Right and Right-to-Left texts. + *The direction will be processed according to the Unicode Bidirectioanl Algorithm: + *https://www.w3.org/International/articles/inline-bidi-markup/uba-basics*/ +#define LV_USE_BIDI 0 +#if LV_USE_BIDI +/*Set the default direction. Supported values: + *`LV_BASE_DIR_LTR` Left-to-Right + *`LV_BASE_DIR_RTL` Right-to-Left + *`LV_BASE_DIR_AUTO` detect texts base direction*/ +#define LV_BIDI_BASE_DIR_DEF LV_BASE_DIR_AUTO +#endif + +/*Enable Arabic/Persian processing + *In these languages characters should be replaced with an other form based on their position in the text*/ +#define LV_USE_ARABIC_PERSIAN_CHARS 0 + +/*================== + * WIDGET USAGE + *================*/ + +/*Documentation of the widgets: https://docs.lvgl.io/latest/en/html/widgets/index.html*/ + +#define LV_USE_ARC 1 + +#define LV_USE_ANIMIMG 1 + +#define LV_USE_BAR 1 + +#define LV_USE_BTN 1 + +#define LV_USE_BTNMATRIX 1 + +#define LV_USE_CANVAS 1 + +#define LV_USE_CHECKBOX 1 + + +#define LV_USE_DROPDOWN 1 /*Requires: lv_label*/ + +#define LV_USE_IMG 1 /*Requires: lv_label*/ + +#define LV_USE_LABEL 1 +#if LV_USE_LABEL +# define LV_LABEL_TEXT_SELECTION 1 /*Enable selecting text of the label*/ +# define LV_LABEL_LONG_TXT_HINT 1 /*Store some extra info in labels to speed up drawing of very long texts*/ +#endif + +#define LV_USE_LINE 1 + +#define LV_USE_ROLLER 1 /*Requires: lv_label*/ +#if LV_USE_ROLLER +# define LV_ROLLER_INF_PAGES 7 /*Number of extra "pages" when the roller is infinite*/ +#endif + +#define LV_USE_SLIDER 1 /*Requires: lv_bar*/ + +#define LV_USE_SWITCH 1 + +#define LV_USE_TEXTAREA 1 /*Requires: lv_label*/ +#if LV_USE_TEXTAREA != 0 +# define LV_TEXTAREA_DEF_PWD_SHOW_TIME 1500 /*ms*/ +#endif + +#define LV_USE_TABLE 1 + +/*================== + * EXTRA COMPONENTS + *==================*/ + +/*----------- + * Widgets + *----------*/ +#define LV_USE_CALENDAR 1 +#if LV_USE_CALENDAR +# define LV_CALENDAR_WEEK_STARTS_MONDAY 0 +# if LV_CALENDAR_WEEK_STARTS_MONDAY +# define LV_CALENDAR_DEFAULT_DAY_NAMES {"Mo", "Tu", "We", "Th", "Fr", "Sa", "Su"} +# else +# define LV_CALENDAR_DEFAULT_DAY_NAMES {"Su", "Mo", "Tu", "We", "Th", "Fr", "Sa"} +# endif + +# define LV_CALENDAR_DEFAULT_MONTH_NAMES {"January", "February", "March", "April", "May", "June", "July", "August", "September", "October", "November", "December"} +# define LV_USE_CALENDAR_HEADER_ARROW 1 +# define LV_USE_CALENDAR_HEADER_DROPDOWN 1 +#endif /*LV_USE_CALENDAR*/ + +#define LV_USE_CHART 1 + +#define LV_USE_COLORWHEEL 1 + +#define LV_USE_IMGBTN 1 + +#define LV_USE_KEYBOARD 1 + +#define LV_USE_LED 1 + +#define LV_USE_LIST 1 + +#define LV_USE_METER 1 + +#define LV_USE_MSGBOX 1 + +#define LV_USE_SPINBOX 1 + +#define LV_USE_SPINNER 1 + +#define LV_USE_TABVIEW 1 + +#define LV_USE_TILEVIEW 1 + +#define LV_USE_WIN 1 + +#define LV_USE_SPAN 1 +#if LV_USE_SPAN +/*A line text can contain maximum num of span descriptor */ +# define LV_SPAN_SNIPPET_STACK_SIZE 64 +#endif + +/*----------- + * Themes + *----------*/ +/*A simple, impressive and very complete theme*/ +#define LV_USE_THEME_DEFAULT 1 +#if LV_USE_THEME_DEFAULT + +/*0: Light mode; 1: Dark mode*/ +# define LV_THEME_DEFAULT_DARK 0 + +/*1: Enable grow on press*/ +# define LV_THEME_DEFAULT_GROW 1 + +/*Default transition time in [ms]*/ +# define LV_THEME_DEFAULT_TRANSITON_TIME 80 +#endif /*LV_USE_THEME_DEFAULT*/ + +/*An very simple them that is a good starting point for a custom theme*/ + #define LV_USE_THEME_BASIC 1 + +/*A theme designed for monochrome displays*/ +#define LV_USE_THEME_MONO 1 + +/*----------- + * Layouts + *----------*/ + +/*A layout similar to Flexbox in CSS.*/ +#define LV_USE_FLEX 1 + +/*A layout similar to Grid in CSS.*/ +#define LV_USE_GRID 1 + +/*================== +* EXAMPLES +*==================*/ + +/*Enable the examples to be built with the library*/ +#define LV_BUILD_EXAMPLES 0 + +/*--END OF LV_CONF_H--*/ + +#endif /*LV_CONF_H*/ + +#endif /*End of "Content enable"*/ diff --git a/800x480/lv_drv_conf.h b/800x480/lv_drv_conf.h new file mode 100644 index 0000000..b280d50 --- /dev/null +++ b/800x480/lv_drv_conf.h @@ -0,0 +1,427 @@ +/** + * @file lv_drv_conf.h + * Configuration file for v8.0.1 + */ + +/* + * COPY THIS FILE AS lv_drv_conf.h + */ + +#if 1 /*Set it to "1" to enable the content*/ + +#ifndef LV_DRV_CONF_H +#define LV_DRV_CONF_H + +#include "lv_conf.h" + +#define USE_FBDEV 1 +#define USE_EVDEV 1 +#define USE_MOUSE 1 + +/********************* + * DELAY INTERFACE + *********************/ +#define LV_DRV_DELAY_INCLUDE /*Dummy include by default*/ +#define LV_DRV_DELAY_US(us) /*delay_us(us)*/ /*Delay the given number of microseconds*/ +#define LV_DRV_DELAY_MS(ms) /*delay_ms(ms)*/ /*Delay the given number of milliseconds*/ + +/********************* + * DISPLAY INTERFACE + *********************/ + +/*------------ + * Common + *------------*/ +#define LV_DRV_DISP_INCLUDE /*Dummy include by default*/ +#define LV_DRV_DISP_CMD_DATA(val) /*pin_x_set(val)*/ /*Set the command/data pin to 'val'*/ +#define LV_DRV_DISP_RST(val) /*pin_x_set(val)*/ /*Set the reset pin to 'val'*/ + +/*--------- + * SPI + *---------*/ +#define LV_DRV_DISP_SPI_CS(val) /*spi_cs_set(val)*/ /*Set the SPI's Chip select to 'val'*/ +#define LV_DRV_DISP_SPI_WR_BYTE(data) /*spi_wr(data)*/ /*Write a byte the SPI bus*/ +#define LV_DRV_DISP_SPI_WR_ARRAY(adr, n) /*spi_wr_mem(adr, n)*/ /*Write 'n' bytes to SPI bus from 'adr'*/ + +/*------------------ + * Parallel port + *-----------------*/ +#define LV_DRV_DISP_PAR_CS(val) /*par_cs_set(val)*/ /*Set the Parallel port's Chip select to 'val'*/ +#define LV_DRV_DISP_PAR_SLOW /*par_slow()*/ /*Set low speed on the parallel port*/ +#define LV_DRV_DISP_PAR_FAST /*par_fast()*/ /*Set high speed on the parallel port*/ +#define LV_DRV_DISP_PAR_WR_WORD(data) /*par_wr(data)*/ /*Write a word to the parallel port*/ +#define LV_DRV_DISP_PAR_WR_ARRAY(adr, n) /*par_wr_mem(adr,n)*/ /*Write 'n' bytes to Parallel ports from 'adr'*/ + +/*************************** + * INPUT DEVICE INTERFACE + ***************************/ + +/*---------- + * Common + *----------*/ +#define LV_DRV_INDEV_INCLUDE /*Dummy include by default*/ +#define LV_DRV_INDEV_RST(val) /*pin_x_set(val)*/ /*Set the reset pin to 'val'*/ +#define LV_DRV_INDEV_IRQ_READ 0 /*pn_x_read()*/ /*Read the IRQ pin*/ + +/*--------- + * SPI + *---------*/ +#define LV_DRV_INDEV_SPI_CS(val) /*spi_cs_set(val)*/ /*Set the SPI's Chip select to 'val'*/ +#define LV_DRV_INDEV_SPI_XCHG_BYTE(data) 0 /*spi_xchg(val)*/ /*Write 'val' to SPI and give the read value*/ + +/*--------- + * I2C + *---------*/ +#define LV_DRV_INDEV_I2C_START /*i2c_start()*/ /*Make an I2C start*/ +#define LV_DRV_INDEV_I2C_STOP /*i2c_stop()*/ /*Make an I2C stop*/ +#define LV_DRV_INDEV_I2C_RESTART /*i2c_restart()*/ /*Make an I2C restart*/ +#define LV_DRV_INDEV_I2C_WR(data) /*i2c_wr(data)*/ /*Write a byte to the I1C bus*/ +#define LV_DRV_INDEV_I2C_READ(last_read) 0 /*i2c_rd()*/ /*Read a byte from the I2C bud*/ + + +/********************* + * DISPLAY DRIVERS + *********************/ + +/*------------------- + * Monitor of PC + *-------------------*/ +#ifndef USE_MONITOR +# define USE_MONITOR 0 +#endif + +#if USE_MONITOR +# define MONITOR_HOR_RES 480 +# define MONITOR_VER_RES 320 + +/* Scale window by this factor (useful when simulating small screens) */ +# define MONITOR_ZOOM 1 + +/* Used to test true double buffering with only address changing. + * Use 2 draw buffers, bith with MONITOR_HOR_RES x MONITOR_VER_RES size*/ +# define MONITOR_DOUBLE_BUFFERED 0 + +/*Eclipse: Visual Studio: */ +# define MONITOR_SDL_INCLUDE_PATH + +/*Open two windows to test multi display support*/ +# define MONITOR_DUAL 0 +#endif + +/*----------------------------------- + * Native Windows (including mouse) + *----------------------------------*/ +#ifndef USE_WINDOWS +# define USE_WINDOWS 0 +#endif + +#if USE_WINDOWS +# define WINDOW_HOR_RES 480 +# define WINDOW_VER_RES 320 +#endif + +/*---------------------------- + * Native Windows (win32drv) + *---------------------------*/ +#ifndef USE_WIN32DRV +# define USE_WIN32DRV 0 +#endif + +#if USE_WIN32DRV +/* Scale window by this factor (useful when simulating small screens) */ +# define WIN32DRV_MONITOR_ZOOM 1 +#endif + +/*---------------------------------------- + * GTK drivers (monitor, mouse, keyboard + *---------------------------------------*/ +#ifndef USE_GTK +# define USE_GTK 0 +#endif + +/*---------------------------------------- + * Wayland drivers (monitor, mouse, keyboard, touchscreen) + *---------------------------------------*/ +#ifndef USE_WAYLAND +# define USE_WAYLAND 0 +#endif + +#if USE_WAYLAND +# define WAYLAND_HOR_RES 480 +# define WAYLAND_VER_RES 320 +# define WAYLAND_SURF_TITLE "LVGL" +#endif + +/*---------------- + * SSD1963 + *--------------*/ +#ifndef USE_SSD1963 +# define USE_SSD1963 0 +#endif + +#if USE_SSD1963 +# define SSD1963_HOR_RES LV_HOR_RES +# define SSD1963_VER_RES LV_VER_RES +# define SSD1963_HT 531 +# define SSD1963_HPS 43 +# define SSD1963_LPS 8 +# define SSD1963_HPW 10 +# define SSD1963_VT 288 +# define SSD1963_VPS 12 +# define SSD1963_FPS 4 +# define SSD1963_VPW 10 +# define SSD1963_HS_NEG 0 /*Negative hsync*/ +# define SSD1963_VS_NEG 0 /*Negative vsync*/ +# define SSD1963_ORI 0 /*0, 90, 180, 270*/ +# define SSD1963_COLOR_DEPTH 16 +#endif + +/*---------------- + * R61581 + *--------------*/ +#ifndef USE_R61581 +# define USE_R61581 0 +#endif + +#if USE_R61581 +# define R61581_HOR_RES LV_HOR_RES +# define R61581_VER_RES LV_VER_RES +# define R61581_HSPL 0 /*HSYNC signal polarity*/ +# define R61581_HSL 10 /*HSYNC length (Not Implemented)*/ +# define R61581_HFP 10 /*Horitontal Front poarch (Not Implemented)*/ +# define R61581_HBP 10 /*Horitontal Back poarch (Not Implemented */ +# define R61581_VSPL 0 /*VSYNC signal polarity*/ +# define R61581_VSL 10 /*VSYNC length (Not Implemented)*/ +# define R61581_VFP 8 /*Vertical Front poarch*/ +# define R61581_VBP 8 /*Vertical Back poarch */ +# define R61581_DPL 0 /*DCLK signal polarity*/ +# define R61581_EPL 1 /*ENABLE signal polarity*/ +# define R61581_ORI 0 /*0, 180*/ +# define R61581_LV_COLOR_DEPTH 16 /*Fix 16 bit*/ +#endif + +/*------------------------------ + * ST7565 (Monochrome, low res.) + *-----------------------------*/ +#ifndef USE_ST7565 +# define USE_ST7565 0 +#endif + +#if USE_ST7565 +/*No settings*/ +#endif /*USE_ST7565*/ + +/*------------------------------ + * GC9A01 (color, low res.) + *-----------------------------*/ +#ifndef USE_GC9A01 +# define USE_GC9A01 0 +#endif + +#if USE_GC9A01 +/*No settings*/ +#endif /*USE_GC9A01*/ + +/*------------------------------------------ + * UC1610 (4 gray 160*[104|128]) + * (EA DOGXL160 160x104 tested) + *-----------------------------------------*/ +#ifndef USE_UC1610 +# define USE_UC1610 0 +#endif + +#if USE_UC1610 +# define UC1610_HOR_RES LV_HOR_RES +# define UC1610_VER_RES LV_VER_RES +# define UC1610_INIT_CONTRAST 33 /* init contrast, values in [%] */ +# define UC1610_INIT_HARD_RST 0 /* 1 : hardware reset at init, 0 : software reset */ +# define UC1610_TOP_VIEW 0 /* 0 : Bottom View, 1 : Top View */ +#endif /*USE_UC1610*/ + +/*------------------------------------------------- + * SHARP memory in pixel monochrome display series + * LS012B7DD01 (184x38 pixels.) + * LS013B7DH03 (128x128 pixels.) + * LS013B7DH05 (144x168 pixels.) + * LS027B7DH01 (400x240 pixels.) (tested) + * LS032B7DD02 (336x536 pixels.) + * LS044Q7DH01 (320x240 pixels.) + *------------------------------------------------*/ +#ifndef USE_SHARP_MIP +# define USE_SHARP_MIP 0 +#endif + +#if USE_SHARP_MIP +# define SHARP_MIP_HOR_RES LV_HOR_RES +# define SHARP_MIP_VER_RES LV_VER_RES +# define SHARP_MIP_SOFT_COM_INVERSION 0 +# define SHARP_MIP_REV_BYTE(b) /*((uint8_t) __REV(__RBIT(b)))*/ /*Architecture / compiler dependent byte bits order reverse*/ +#endif /*USE_SHARP_MIP*/ + +/*------------------------------------------------- + * ILI9341 240X320 TFT LCD + *------------------------------------------------*/ +#ifndef USE_ILI9341 +# define USE_ILI9341 0 +#endif + +#if USE_ILI9341 +# define ILI9341_HOR_RES LV_HOR_RES +# define ILI9341_VER_RES LV_VER_RES +# define ILI9341_GAMMA 1 +# define ILI9341_TEARING 0 +#endif /*USE_ILI9341*/ + +/*----------------------------------------- + * Linux frame buffer device (/dev/fbx) + *-----------------------------------------*/ +#ifndef USE_FBDEV +# define USE_FBDEV 0 +#endif + +#if USE_FBDEV +# define FBDEV_PATH "/dev/fb0" +#endif + +/*----------------------------------------- + * FreeBSD frame buffer device (/dev/fbx) + *.........................................*/ +#ifndef USE_BSD_FBDEV +# define USE_BSD_FBDEV 0 +#endif + +#if USE_BSD_FBDEV +# define FBDEV_PATH "/dev/fb0" +#endif + +/*----------------------------------------- + * DRM/KMS device (/dev/dri/cardX) + *-----------------------------------------*/ +#ifndef USE_DRM +# define USE_DRM 0 +#endif + +#if USE_DRM +# define DRM_CARD "/dev/dri/card0" +# define DRM_CONNECTOR_ID -1 /* -1 for the first connected one */ +#endif + +/********************* + * INPUT DEVICES + *********************/ + +/*-------------- + * XPT2046 + *--------------*/ +#ifndef USE_XPT2046 +# define USE_XPT2046 0 +#endif + +#if USE_XPT2046 +# define XPT2046_HOR_RES 480 +# define XPT2046_VER_RES 320 +# define XPT2046_X_MIN 200 +# define XPT2046_Y_MIN 200 +# define XPT2046_X_MAX 3800 +# define XPT2046_Y_MAX 3800 +# define XPT2046_AVG 4 +# define XPT2046_X_INV 0 +# define XPT2046_Y_INV 0 +# define XPT2046_XY_SWAP 0 +#endif + +/*----------------- + * FT5406EE8 + *-----------------*/ +#ifndef USE_FT5406EE8 +# define USE_FT5406EE8 0 +#endif + +#if USE_FT5406EE8 +# define FT5406EE8_I2C_ADR 0x38 /*7 bit address*/ +#endif + +/*--------------- + * AD TOUCH + *--------------*/ +#ifndef USE_AD_TOUCH +# define USE_AD_TOUCH 0 +#endif + +#if USE_AD_TOUCH +/*No settings*/ +#endif + + +/*--------------------------------------- + * Mouse or touchpad on PC (using SDL) + *-------------------------------------*/ +#ifndef USE_MOUSE +# define USE_MOUSE 0 +#endif + +#if USE_MOUSE +/*No settings*/ +#endif + +/*------------------------------------------- + * Mousewheel as encoder on PC (using SDL) + *------------------------------------------*/ +#ifndef USE_MOUSEWHEEL +# define USE_MOUSEWHEEL 0 +#endif + +#if USE_MOUSEWHEEL +/*No settings*/ +#endif + +/*------------------------------------------------- + * Touchscreen as libinput interface (for Linux based systems) + *------------------------------------------------*/ +#ifndef USE_LIBINPUT +# define USE_LIBINPUT 0 +#endif + +#if USE_LIBINPUT +# define LIBINPUT_NAME "/dev/input/event0" /*You can use the "evtest" Linux tool to get the list of devices and test them*/ +#endif /*USE_LIBINPUT*/ + +/*------------------------------------------------- + * Mouse or touchpad as evdev interface (for Linux based systems) + *------------------------------------------------*/ +#ifndef USE_EVDEV +# define USE_EVDEV 0 +#endif + +#ifndef USE_BSD_EVDEV +# define USE_BSD_EVDEV 0 +#endif + +#if USE_EVDEV || USE_BSD_EVDEV +# define EVDEV_NAME "/dev/input/event0" /*You can use the "evtest" Linux tool to get the list of devices and test them*/ +# define EVDEV_SWAP_AXES 0 /*Swap the x and y axes of the touchscreen*/ + +# define EVDEV_CALIBRATE 0 /*Scale and offset the touchscreen coordinates by using maximum and minimum values for each axis*/ + +# if EVDEV_CALIBRATE +# define EVDEV_HOR_MIN 0 /*to invert axis swap EVDEV_XXX_MIN by EVDEV_XXX_MAX*/ +# define EVDEV_HOR_MAX 4096 /*"evtest" Linux tool can help to get the correct calibraion values>*/ +# define EVDEV_VER_MIN 0 +# define EVDEV_VER_MAX 4096 +# endif /*EVDEV_CALIBRATE*/ +#endif /*USE_EVDEV*/ + +/*------------------------------- + * Keyboard of a PC (using SDL) + *------------------------------*/ +#ifndef USE_KEYBOARD +# define USE_KEYBOARD 0 +#endif + +#if USE_KEYBOARD +/*No settings*/ +#endif + +#endif /*LV_DRV_CONF_H*/ + +#endif /*End of "Content enable"*/ diff --git a/800x480/main.c b/800x480/main.c new file mode 100644 index 0000000..a159bf9 --- /dev/null +++ b/800x480/main.c @@ -0,0 +1,90 @@ +#include +#include +#include +#include "lv_drv_conf.h" +#include "lvgl/lvgl.h" +#include "lvgl/src/drivers/lv_stdc_fs_v8.h" +#include "lvgl/src/drivers/lv_png.h" +#include "MK_macro.h" +#include "MK_types.h" +#include "MK_func.h" + +static lv_disp_draw_buf_t draw_buf_dsc; +static lv_color_t draw_buf[LV_HOR_RES_MAX * LV_VER_RES_MAX]; + +static void lvgl_init(void) +{ + lv_init(); + fbdev_init(); + evdev_init(); + lv_stdc_fs_init(); + lv_png_init(); + + /* Initialize the display buffer */ + lv_disp_draw_buf_init(&draw_buf_dsc, draw_buf, NULL, + LV_HOR_RES_MAX * LV_VER_RES_MAX); + + static lv_disp_drv_t disp_drv; /* Descriptor of a display driver */ + lv_disp_drv_init(&disp_drv); /* Basic initialization */ + + /* Set the resolution of the display */ + disp_drv.hor_res = LV_HOR_RES_MAX; + disp_drv.ver_res = LV_VER_RES_MAX; + + printf("LV_HOR_RES_MAX=%d, LV_VER_RES_MAX=%d\n", LV_HOR_RES_MAX, LV_VER_RES_MAX); + + /* Used to copy the buffer's content to the display */ + disp_drv.flush_cb = fbdev_flush; + + /* Set a display buffer */ + disp_drv.draw_buf = &draw_buf_dsc; + + /* Finally register the driver */ + lv_disp_drv_register(&disp_drv); + + lv_indev_drv_t indev_dev; + lv_indev_drv_init(&indev_dev); + indev_dev.type = LV_INDEV_TYPE_POINTER; + indev_dev.read_cb = evdev_read; + lv_indev_drv_register(&indev_dev); +} + +static void lvgl_deinit(void) +{ + fbdev_exit(); + //lv_deinit(); /* #if LV_ENABLE_GC || !LV_MEM_CUSTOM */ +} + +int main(int argc, char **argv) +{ + UNUSED(argc); + UNUSED(argv); + srand(time(NULL)); + + elib_wrap_init(); + + lvgl_init(); + data_init(); + project_style_init(); + + board_init(); + printer_init(); + main_init(); + + for (;;) { + main_update(); + + lv_tick_inc(5); + lv_task_handler(); + usleep(5000); + } + + board_deinit(); + printer_deinit(); + main_deinit(); + data_deinit(); + lvgl_deinit(); + elib_wrap_deinit(); + + return 0; +} diff --git a/assets/3672639n.png b/assets/3672639n.png new file mode 100644 index 0000000000000000000000000000000000000000..0a8411c5d5bbb0fe7435685ac7717d1efcefbf4f GIT binary patch literal 1237 zcmV;`1Sm0i{x*mt5d+ zp-?z!;@znM&;ec0nGo()3d8Ue30$JKNsDk^XN2pz0rCA*8Gt^|^L#yccRtePEkSo` z;0eI8Frrv2<^_-AI46AHc}VZ)SaF><#(-tfPrS3Vut&(?oal#40bb%wZbZ|}Pv!IZ zqa^qp|3ByZewm)1QCpXQf2P0VVd(U4m*@1Ok9pV-Z;je$BrBQ#=zuQhOl(9mczTtM zX3;;~Fv6>G{|5c7l53o6RX*{aCpi=J6@JOGAR9WEEt|-Q-riy<4!j`A2vX`!mP(~! ztH7IyKsk`XIYI_6Xp0fRW)w<{PlO-hQ!3c9J6>QCv8-%dAG@wt6Hko7nikVc%&hDg z@zT=~YgcVHf?jp+4%ArcmLp!vGv7=cDiI-SNKz*L zN~Lm;6y6~IX=)1`V%Pb38hzj~$>D@pix#(EP6R$Oz{x z!IxT<9ft0pFoNo+D=I#k`3wA2KU#q&_X$P#Qt@Ch3ZKWUS}Dk2cAYy6?rUFP-vJdL z2Y^jw6&tsQr2(t_iO1D~>(Qp}^BF}JHBgpxeS!@7de=1uR2j=^>>gXSho$%5gTNWk z2!74V?y%~M7GE?c-s~|xzF8H5}A6SJBxux=PDjlm5oxu9c)#$TuP9OTvqXwO72CT z$oE#@LD5-Heei^i4^^cw0_8zQ?@n3FyhSnhf@MFjHUK3oLM2Mt7Ru>SsosZQ4B^d;+%?%^;rLDfHTgM<0!BY`S9dKA=3<)hnhrBTScks2BsoB_I4=H9qxA zK0zIQ&1y?+dC_e{|Ahf@d+eZ7e(bT=Kezb{+w#V-eLTx600000NkvXXu0mjfu~I>4 literal 0 HcmV?d00001 diff --git a/build.sh b/build.sh new file mode 100755 index 0000000..20c4720 --- /dev/null +++ b/build.sh @@ -0,0 +1,152 @@ +#!/bin/bash + +TARGET=cutter +TARGET_DIR= +CC=arm-none-linux-gnueabi-gcc +STRIP=arm-none-linux-gnueabi-strip + +MAJOR='2' +MINOR='1' +RELEASE='4r' +DEFINE='-DZZF_TSLIB -DZZF_TEST_MODE -DREVERSION="DX2-'$MAJOR'.'$MINOR'.'$RELEASE'"' +#DEFINE="$DEFINE -DZZF_SPEC_2_1_4" + +# 修订历史 +# 1.1.0 修订,修改通讯接收长度为18字节以适应新的通讯协议,但硬件还是基于旧板,没有 +# 扩充的输入和输出。 +# 2.0.0 修订,修改功能为最新, 硬件基于新板, 之后1.x版本不再升级, 此版本为内部版本 +# 2.0.0a 修订, 功能同2.0.0, 为正式版本。 +# 2.0.1 修订, 将用户多段补偿按键移到右边, 在原位置增加用户教程功能; 修改logo写入时 +#    由写入/dev/mtdblock7改为/dev/block/by-name/logo, 避免受系统分区调整影响。 +# 2.0.2 修订, 屏蔽45度切割功能。 +# 2.0.3 修订, 增加U盘导入logo和二维码图片时文件名的区分, 1-xxxx为logo, 2-xxxx为二 +#    维码。 +# 2.0.3a 修订, 增加在设定生产日期时将此日期设定为购机日期, 同时将维护电话清空。 +# 2.0.3b 修订, 修改打印机通讯波特率由9600改为115200。 +# 2.0.4 修订, 增加MY-E8M打印机驱动, 修改printer模块为支持多打印机结构。 +# 2.0.5 修订, 增加英文版本资源。 +# 2.0.5r 修订, 临时版本, 微调方向相反, 此版本不并入主版本。 +# 2.0.5a 修订, 修正无线模式页面储存的数据在重新开机加载时没有同步更新最后测量位置, +# 导致无线尺新过来数据始终在第0个测量位输入,又因为第0位已经有之前保存的测量 +# 数据,所以造成无线尺无法输入数据的现象。增加导入教程图片后再次检查导入是否 +# 成功的步骤。 +# 2.0.5b 修订, 增加导入教程图片后的写入确认动作(再写入一个dump文件)来保证导入图片已 +# 写入磁盘。 +# 2.0.5c 修订, 修改通讯协议, 增加获取MCU版本号及测试MCU对磁栅尺的写操作, 修改机器 +# 运行速度可以设置到250, 修改回原动作时回行距离默认值(由50调整为2)。 +# 2.0.5d 修订, 调整与单片机通讯线程启动时间在打印模块初始之前, 保证在第一显示页面能 +# 正确获取到单片机版本。 +# 2.0.6 修订, 增加与单片机通讯失败提示。 +# 2.0.6a 修订, 修改默认值。 +# 2.1.0 修订, 增加绝对值伺服电机支持。 +# 2.1.1 修订, 增加电机方向控制, 用户自设原点功能, 增加输入值自动启动运行功能。 +# 2.1.2 修订, 增加伺服控制型号。 +# 2.1.3 2025-8-20修订, 增加工厂测试功能。 +# 2.1.4 2025-8-28修订, 调整出厂补偿设置中'移向起点'和'移向终点'的按键位置。 +# 2.1.4s 2025-11-28修订, 调整单动页的的微詷功能为选择值, 在启动时根据选择的方向进行 +#    加减的调整, 此版本是一个临时版本。 +# 2.1.5 2026-1-5修订, 修正在多段补偿中进入蠕动模式后导到回原速度变慢。<错误的修正, +# 问题不在上位机程序, 在进入过WRI_xxx模式后, 下位机在已经原点状态下回原会在 +# 当前点开始以爬行速度开始回原(正常逻辑是先以正常速度回到原点, 再以爬行速度 +# 移向原点开关), 因为为了防止抖动, 这个速度一般都设得比较慢。临时解决方法, 将 +# 爬行速度调为和回原速度调成一样>。可能带来的后果, 在原点开关处可能会抖动。这 +# 个版本号弃用。 + +INCLUDE="-I. -Icommon -I/home/franki/cross/lvgl-v8/include -I/home/franki/cross/tslib-1.22/include" +LIB="-L/home/franki/cross/lvgl-v8/lib/ -llvgl.8 -L/home/franki/cross/tslib-1.22/lib -lts -lpthread -lm" + +C_SRC=" \ + common/MK_sys.c \ + common/MK_style.c \ + common/MK_data.c \ + common/MK_ime.c \ + common/MK_e2prom.c \ + common/MK_printer.c \ + common/board.c \ + common/elib_wrap.c \ + common/MK_image.c \ + common/MK_mye8m.c \ + common/MK_ep201t.c \ + \ + fonts/sans_m_24.c \ + fonts/sans_m_30.c \ + fonts/sans_r_30.c \ + fonts/sans_r_18.c \ + fonts/ime_num_32.c \ + fonts/sans_b_36.c \ + " + +debug=disable +while getopts ":v:b:CD" opt +do case $opt in + b) + brach=$OPTARG + ;; + v) + ver=$OPTARG + ;; + C) + clean=enable + ;; + D) + debug=enable + ;; + ?) + ;; + esac +done + +if [ -z ${ver} ]; then + echo "Usage: $0 -v [-C /*clean*/] [-D /*debug*/]" + exit 1 +fi + +TARGET=${TARGET}-${ver} + +if [ "$debug"x = "enable"x ]; then + TARGET=${TARGET}-debug +fi + +echo -e Target: "\e[32m${brach}/${TARGET}\e[0m" +echo -e Debug: "\e[32m${debug}\e[0m" + +C_SRC=${C_SRC}" \ + ${ver}/main.c \ + ${ver}/MK_main.c \ + ${ver}/MK_single.c \ + ${ver}/MK_tutorial.c \ + ${ver}/MK_wireless.c \ + ${ver}/MK_batch.c \ + ${ver}/MK_origin.c \ + ${ver}/MK_setting.c \ + ${ver}/MK_compensation.c \ + ${ver}/MK_setup.c \ + ${ver}/MK_system.c \ + ${ver}/MK_info.c \ + ${ver}/MK_dealer.c \ + ${ver}/MK_custom.c \ + ${ver}/MK_factory.c \ + ${ver}/MK_tester.c \ + " + +if [ "${ver}"x = "800x480"x ]; then + C_SRC=${C_SRC}" \ + ${ver}/fbdev.c \ + ${ver}/evdev.c \ + " + INCLUDE=${INCLUDE}" \ + -I${ver} \ + " +fi + +rm -f $TARGET +if [ "$debug"x = "disable"x ]; then + $CC -pipe -Wall -W -std=gnu99 -O2 -o $TARGET ${C_SRC} ${DEFINE} ${INCLUDE} ${LIB} +else + $CC -pipe -Wall -W -std=gnu99 -O2 -o ${TARGET} ${C_SRC} ${DEFINE} ${INCLUDE} ${LIB} -DZZF_DEBUG +fi +$STRIP -s $TARGET + +echo -e "\e[32mBuild done.\e[0m" + + diff --git a/common/MK_data.c b/common/MK_data.c new file mode 100644 index 0000000..c401310 --- /dev/null +++ b/common/MK_data.c @@ -0,0 +1,1620 @@ +#include +#include +#include +#include +#include "lvgl/lvgl.h" +#include "MK_macro.h" +#include "MK_types.h" +#include "MK_func.h" + +static struct runtime_data global_runtime_data; +static struct params_data global_params_data; +static struct comp_data global_comp_data; +static struct custom_data global_custom_data; + +static const char **global_text; +static s32 global_text_nums; + +static const char *global_text_cn[] = { + "单动模式", // TID_inching + "提示", // TID_tip + "最小", // TID_min + "最大", // TID_max + "原点设置", // TID_origin + "使用教程", // TID_tutorial + "无线模式", // TID_wireless + "联动模式", // TID_batch + "打印开关", // TID_print_sw + "打印", // TID_print + "回原点", // TID_gohome + "启动运行", // TID_start + "急停", // TID_stop + "左右微调", // TID_adjust + "挡板当前位置", // TID_curpos + "目标尺寸(mm)", // TID_target_size + "有效最小尺寸:", // TID_valid_min + "有效最大尺寸:", // TID_valid_max + "原点位置:", // TID_origin_set + "无线模块选择:", // TID_wireless_sel + "无线ID:", // TID_wireless_id + "确认修改", // TID_confirm + "返回", // TID_back + "上一页", // TID_prev + "下一页", // TID_next + "清除当页尺寸", // TID_clear_cur + "清除全部尺寸", // TID_clear_all + "清除", // TID_clear + "开启无线", // TID_wireless_on + "单个删除", // TID_del + "无线同步", // TID_sync + "横 / 竖优先切割", // TID_cutting + "横 / 竖优先测量", // TID_measure + "当前位置:", // TID_curpos1 + "横压加减尺:", // TID_horizontal + "竖压加减尺:", // TID_vertical + "测试最大终点:", // TID_test_max + "测试最小终点:", // TID_test_min + "运行速度", // TID_run_speed + "回原速度", // TID_gohome_speed + "爬行速度", // TID_crawl_speed + "加减速时间", // TID_time_speed + "参数设置", // TID_setting + "序号", // TID_no + "横压一", // TID_row1 + "横压二", // TID_row2 + "竖压一", // TID_col1 + "竖压二", // TID_col2 + "脉冲长度:", // TID_granularity + "移向起点", // TID_begin + "移向终点", // TID_end + "脉冲计算", // TID_recalc + "多段补偿设置", // TID_comp + "段号", // TID_comp_no + "位置", // TID_comp_pos + "长度", // TID_comp_len + "脉冲数", // TID_comp_pulse + "新增补偿点", // TID_comp_add, + "删除补偿点", // TID_comp_del, + "启用多段补偿", // TID_comp_enabled, + "清除全部数据", // TID_comp_clear + "保存补偿点", // TID_comp_save + "不保存退出", // TID_exit + "第 %d 段", // TID_no_var + "运行参数设置", // TID_setup_run + "多段补偿设置", // TID_setup_comp + "时间和密码设置", // TID_setup_sys + "生产日期设置", // TID_setup_info + "日期(å¹´/月/日):", // TID_date + "时间(时/分/秒):", // TID_time + "一级密码:", // TID_pwd1 + "二级密码:", // TID_pwd2 + "三级密码:", // TID_pwd3 + "保存设置", // TID_date_save + "保存密码", // TID_pwd_save + ">> >> 急停按钮被按下 << <<", // TID_emergency + "电机异常, 请在排除故障后关机, \n然后重新启动系统!", // TID_motor + "生产日期(å¹´/月/日):", // TID_production_date + "购机日期(å¹´/月/日):", // TID_purchase_date + "维护电话:", // TID_phone + "写入客户LOGO", // TID_logo + "购机日期和维护电话", // TID_date_phone + "电机参数设置", // TID_motor_params + "四级密码:", // TID_pwd4 + "测试模式:", // TID_test + "自动测试", // TID_auto_test + "分段补偿设置", // TID_custom + "保存补偿数据", // TID_custom_save + "测试运行", // TID_test_run + "原点异常, 请在关机后检查行程开关, \n然后重新启动系统", // TID_mcu + "无线开关:", // TID_wireless_sw + "宽度(mm)", // TID_target_comp + "45度切割:", // TID_diagonal + "导入二维码", // TID_qrcode + "开始值\n(mm)", // TID_comp_start + "终止值\n(mm)", // TID_comp_end + "补偿值\n(mm)", // TID_comp_val + "启用:", // TID_enable + "出厂日期:", // TID_mfg_date + "购机日期:", // TID_pur_date + "语言选择:", // TID_lang + "%d组", // TID_group + "打印开关", // TID_print_sw2 +}; + +static const char *global_text_en[] = { + "Single Mode", // TID_inching + "Hint", // TID_tip + "Min", // TID_min + "Max", // TID_max + "Origin Config", // TID_origin + "User Guide", // TID_tutorial + "Wireless Mode", // TID_wireless + "Batch Mode", // TID_batch + "Print Toggle", // TID_print_sw + "Print", // TID_print + "Home", // TID_gohome + "Start", // TID_start + "E-Stop", // TID_stop + "Adjustment", // TID_adjust + "Current Flap Position", // TID_curpos + "Target Length(mm)", // TID_target_size + "有效最小尺寸:", // TID_valid_min + "有效最大尺寸:", // TID_valid_max + "Origin Position:", // TID_origin_set + "无线模块选择:", // TID_wireless_sel + "Wireless ID:", // TID_wireless_id + "Confirm", // TID_confirm + "Back", // TID_back + "Previous", // TID_prev + "Next", // TID_next + "Clear", // TID_clear_cur + "Clear All", // TID_clear_all + "Clear", // TID_clear + "Wless ON", // TID_wireless_on + "Delete", // TID_del + "W-Sync", // TID_sync + "H/V Cutting First", // TID_cutting + "H/V Meas. First", // TID_measure + "Position:", // TID_curpos1 + "Hor. Offset:", // TID_horizontal + "Ver. Offset:", // TID_vertical + "测试最大终点:", // TID_test_max + "测试最小终点:", // TID_test_min + "Run Speed", // TID_run_speed + "Home Speed", // TID_gohome_speed + "Crawl Speed", // TID_crawl_speed + "Accel/Decel Time", // TID_time_speed + "Param Config", // TID_setting + "No.", // TID_no + "H.Bar 1", // TID_row1 + "H.Bar 2", // TID_row2 + "V.Bar 1", // TID_col1 + "V.Bar 2", // TID_col2 + "脉冲长度:", // TID_granularity + "Move Origin", // TID_begin + "Move End", // TID_end + "脉冲计算", // TID_recalc + "Comp Config", // TID_comp + "No.", // TID_comp_no + "Position", // TID_comp_pos + "Length", // TID_comp_len + "Pulse Count", // TID_comp_pulse + "Add", // TID_comp_add, + "Delete", // TID_comp_del, + "Enable", // TID_comp_enabled, + "Clear All", // TID_comp_clear + "Save", // TID_comp_save + "Exit", // TID_exit + "No.: %d", // TID_no_var + "运行参数设置", // TID_setup_run + "Comp Config", // TID_setup_comp + "Time & Password", // TID_setup_sys + "Production Date", // TID_setup_info + "Date(y/m/d):", // TID_date + "Time(h/m/s):", // TID_time + "L1 Pass:", // TID_pwd1 + "L2 Pass:", // TID_pwd2 + "L3 Pass:", // TID_pwd3 + "Save", // TID_date_save + "Save", // TID_pwd_save + ">> >> Emergency Stop Activated << <<", // TID_emergency + "Motor Fault Detected, After resolving th issue, \nPower off and restart the system!", // TID_motor + "Production Date(y/m/d):", // TID_production_date + "Purchase Date(y/m/d):", // TID_purchase_date + "Phone:", // TID_phone("Support Phone:") + "Import Logo", // TID_logo + "Purchase Date & Phone", // TID_date_phone + "Motor Config", // TID_motor_params + "L4 Pass:", // TID_pwd4 + "Test Mode:", // TID_test + "Auto Test", // TID_auto_test + "Comp Config", // TID_custom + "Save", // TID_custom_save + "Test", // TID_test_run + "Origin Error, Power off, check limit switch, \nand restart system!", // TID_mcu + "Wireless:", // TID_wireless_sw + "Width", // TID_target_comp + "45-Degree Cut:", // TID_diagonal + "QRcode", // TID_qrcode + "Start\n(mm)", // TID_comp_start + "End\n(mm)", // TID_comp_end + "Comp\n(mm)", // TID_comp_val + "Enable:", // TID_enable + "Production Date:", // TID_mfg_date("Prod Date:") + "Purchase Date:", // TID_pur_date + "Lauguage:", // TID_lang + "%d", // TID_group + "Print ON", // TID_print_sw2 +}; + +static const char *global_text_vn[] = { + "Chế Độ Đơn", // TID_inching + "Nhắc nhở", // TID_tip + "Tối thiểu", // TID_min + "Tối đa", // TID_max + "Cấu Hình Gốc", // TID_origin + "Giáo trình hướng dẫn", // TID_tutorial + "Không Dây", // TID_wireless + "Chế Độ Lô", // TID_batch + "Công tắc in", // TID_print_sw + "In", // TID_print + "Trở về gốc", // TID_gohome + "Bắt đầu chạy", // TID_start + "Dừng gấp", // TID_stop + "Tinh chỉnh trái/phải", // TID_adjust + "Vị trí tấm chắn hiện tại", // TID_curpos + "Kích thước mục tiêu (mm)", // TID_target_size + "有效最小尺寸:", // TID_valid_min + "有效最大尺寸:", // TID_valid_max + "Vị trí điểm gốc:", // TID_origin_set + "无线模块选择:", // TID_wireless_sel + "ID không dây:", // TID_wireless_id + "Xác nhận thay đổi", // TID_confirm + "Quay lại", // TID_back + "Trước đó", // TID_prev + "Tiếp theo", // TID_next + "Xóa kích thước trang hiện tại", // TID_clear_cur + "Xóa tất cả các kích thước", // TID_clear_all + "Xoá hết", // TID_clear + "Bật không dây", // TID_wireless_on + "Xóa", // TID_del + "Đồng bộ W", // TID_sync + "Cắt H/V trước", // TID_cutting + "Đo H/V trước", // TID_measure + "Vị trí:", // TID_curpos1 + "Độ lệch ngang:", // TID_horizontal + "Độ lệch dọc:", // TID_vertical + "测试最大终点:", // TID_test_max + "测试最小终点:", // TID_test_min + "Tốc độ chạy", // TID_run_speed + "Tốc độ về điểm gốc", // TID_gohome_speed + "Tốc độ bò", // TID_crawl_speed + "Thời gian tăng/giảm tốc độ", // TID_time_speed + "Cài đặt thông số", // TID_setting + "No.", // TID_no + "Thanh H.1", // TID_row1 + "Thanh H.2", // TID_row2 + "Thanh V.1", // TID_col1 + "Thanh V.2", // TID_col2 + "脉冲长度:", // TID_granularity + "Dịch về điểm bắt đầu", // TID_begin + "Dịch về điểm kết thúc", // TID_end + "脉冲计算", // TID_recalc + "Cài đặt bù nhiều đoạn", // TID_comp + "Số đoạn", // TID_comp_no + "Vị trí", // TID_comp_pos + "Chiều dài", // TID_comp_len + "Số xung", // TID_comp_pulse + "Thêm điểm bù", // TID_comp_add, + "Xoá điểm bù", // TID_comp_del, + "Bật bù nhiều đoạn", // TID_comp_enabled, + "Xóa tất cả", // TID_comp_clear + "Lưu điểm bù", // TID_comp_save + "Không lưu và thoát", // TID_exit + "Đoạn thứ %d", // TID_no_var + "运行参数设置", // TID_setup_run + "Cài đặt bù nhiều giai đoạn", // TID_setup_comp + "Cài đặt thời gian và mật khẩu", // TID_setup_sys + "Cài đặt ngày sản xuất", // TID_setup_info + "Ngày (năm/tháng/ngày):", // TID_date + "Thời gian (giờ/phút/giây):", // TID_time + "Mật khẩu cấp 1:", // TID_pwd1 + "Mật khẩu cấp 2:", // TID_pwd2 + "Mật khẩu cấp 3:", // TID_pwd3 + "Lưu cài đặt", // TID_date_save + "Lưu mật khẩu", // TID_pwd_save + ">> >> Nút dừng khẩn cấp đã được nhấn << <<", // TID_emergency + "Lỗi động cÆ¡, vui lòng tắt máy sau khi khắc phục sá»± cố, \n rồi khởi động lại hệ thống!", // TID_motor + "Ngày sản xuất (năm/tháng/ngày):", // TID_production_date + "Ngày mua (năm/tháng/ngày):", // TID_purchase_date + "Số điện thoại bảo trì:", // TID_phone + "Viết LOGO khách hàng", // TID_logo + "Ngày mua và số điện thoại bảo trì", // TID_date_phone + "Cài đặt thông số động cÆ¡", // TID_motor_params + "Mật khẩu cấp 4:", // TID_pwd4 + "Chế độ kiểm tra:", // TID_test + "Kiểm tra tá»± động", // TID_auto_test + "Cấu hình bù", // TID_custom + "Lưu", // TID_custom_save + "Kiểm tra", // TID_test_run + "Lỗi điểm gốc, vui lòng kiểm tra công tắc hành trình sau khi tắt, \n rồi khởi động lại hệ thống", // TID_mcu + "Công tắc không dây:", // TID_wireless_sw + "Chiều rộng", // TID_target_comp + "Cắt 45 độ:", // TID_diagonal + "QRcode", // TID_qrcode + "Bắt đầu\n(mm)", // TID_comp_start + "Kết thúc\n(mm)", // TID_comp_end + "Bù\n(mm)", // TID_comp_val + "Kích hoạt:", // TID_enable + "Ngày xuất xưởng:", // TID_mfg_date + "Ngày mua:", // TID_pur_date + "Ngôn ngữ:", // TID_lang + "%d", // TID_group + "In bật", // TID_print_sw2 +}; + +static const char *wdays[LANG_MAX][7] = { + { + "星期日", "星期一", "星期二", "星期三", "星期四", "星期五", + "星期六", + }, + { + "Sun.", "Mon.", "Tues.", "Wed.", "Thur.", "Fri.", "Sat.", + }, + { + "Sun.", "Mon.", "Tues.", "Wed.", "Thur.", "Fri.", "Sat.", + }, +}; + +static const char *months[12] = { + "Jan.", "Feb.", "Mar.", "Apr.", "May", "June", "July", "Aug.", "Sept.", + "Oct.", "Nov.", "Dec.", +}; + +static const u32 sc_crc32_table[256] = { + 0x00000000, 0x77073096, 0xEE0E612C, 0x990951BA, 0x076DC419, 0x706AF48F, 0xE963A535, 0x9E6495A3, + 0x0EDB8832, 0x79DCB8A4, 0xE0D5E91E, 0x97D2D988, 0x09B64C2B, 0x7EB17CBD, 0xE7B82D07, 0x90BF1D91, + 0x1DB71064, 0x6AB020F2, 0xF3B97148, 0x84BE41DE, 0x1ADAD47D, 0x6DDDE4EB, 0xF4D4B551, 0x83D385C7, + 0x136C9856, 0x646BA8C0, 0xFD62F97A, 0x8A65C9EC, 0x14015C4F, 0x63066CD9, 0xFA0F3D63, 0x8D080DF5, + 0x3B6E20C8, 0x4C69105E, 0xD56041E4, 0xA2677172, 0x3C03E4D1, 0x4B04D447, 0xD20D85FD, 0xA50AB56B, + 0x35B5A8FA, 0x42B2986C, 0xDBBBC9D6, 0xACBCF940, 0x32D86CE3, 0x45DF5C75, 0xDCD60DCF, 0xABD13D59, + 0x26D930AC, 0x51DE003A, 0xC8D75180, 0xBFD06116, 0x21B4F4B5, 0x56B3C423, 0xCFBA9599, 0xB8BDA50F, + 0x2802B89E, 0x5F058808, 0xC60CD9B2, 0xB10BE924, 0x2F6F7C87, 0x58684C11, 0xC1611DAB, 0xB6662D3D, + 0x76DC4190, 0x01DB7106, 0x98D220BC, 0xEFD5102A, 0x71B18589, 0x06B6B51F, 0x9FBFE4A5, 0xE8B8D433, + 0x7807C9A2, 0x0F00F934, 0x9609A88E, 0xE10E9818, 0x7F6A0DBB, 0x086D3D2D, 0x91646C97, 0xE6635C01, + 0x6B6B51F4, 0x1C6C6162, 0x856530D8, 0xF262004E, 0x6C0695ED, 0x1B01A57B, 0x8208F4C1, 0xF50FC457, + 0x65B0D9C6, 0x12B7E950, 0x8BBEB8EA, 0xFCB9887C, 0x62DD1DDF, 0x15DA2D49, 0x8CD37CF3, 0xFBD44C65, + 0x4DB26158, 0x3AB551CE, 0xA3BC0074, 0xD4BB30E2, 0x4ADFA541, 0x3DD895D7, 0xA4D1C46D, 0xD3D6F4FB, + 0x4369E96A, 0x346ED9FC, 0xAD678846, 0xDA60B8D0, 0x44042D73, 0x33031DE5, 0xAA0A4C5F, 0xDD0D7CC9, + 0x5005713C, 0x270241AA, 0xBE0B1010, 0xC90C2086, 0x5768B525, 0x206F85B3, 0xB966D409, 0xCE61E49F, + 0x5EDEF90E, 0x29D9C998, 0xB0D09822, 0xC7D7A8B4, 0x59B33D17, 0x2EB40D81, 0xB7BD5C3B, 0xC0BA6CAD, + 0xEDB88320, 0x9ABFB3B6, 0x03B6E20C, 0x74B1D29A, 0xEAD54739, 0x9DD277AF, 0x04DB2615, 0x73DC1683, + 0xE3630B12, 0x94643B84, 0x0D6D6A3E, 0x7A6A5AA8, 0xE40ECF0B, 0x9309FF9D, 0x0A00AE27, 0x7D079EB1, + 0xF00F9344, 0x8708A3D2, 0x1E01F268, 0x6906C2FE, 0xF762575D, 0x806567CB, 0x196C3671, 0x6E6B06E7, + 0xFED41B76, 0x89D32BE0, 0x10DA7A5A, 0x67DD4ACC, 0xF9B9DF6F, 0x8EBEEFF9, 0x17B7BE43, 0x60B08ED5, + 0xD6D6A3E8, 0xA1D1937E, 0x38D8C2C4, 0x4FDFF252, 0xD1BB67F1, 0xA6BC5767, 0x3FB506DD, 0x48B2364B, + 0xD80D2BDA, 0xAF0A1B4C, 0x36034AF6, 0x41047A60, 0xDF60EFC3, 0xA867DF55, 0x316E8EEF, 0x4669BE79, + 0xCB61B38C, 0xBC66831A, 0x256FD2A0, 0x5268E236, 0xCC0C7795, 0xBB0B4703, 0x220216B9, 0x5505262F, + 0xC5BA3BBE, 0xB2BD0B28, 0x2BB45A92, 0x5CB36A04, 0xC2D7FFA7, 0xB5D0CF31, 0x2CD99E8B, 0x5BDEAE1D, + 0x9B64C2B0, 0xEC63F226, 0x756AA39C, 0x026D930A, 0x9C0906A9, 0xEB0E363F, 0x72076785, 0x05005713, + 0x95BF4A82, 0xE2B87A14, 0x7BB12BAE, 0x0CB61B38, 0x92D28E9B, 0xE5D5BE0D, 0x7CDCEFB7, 0x0BDBDF21, + 0x86D3D2D4, 0xF1D4E242, 0x68DDB3F8, 0x1FDA836E, 0x81BE16CD, 0xF6B9265B, 0x6FB077E1, 0x18B74777, + 0x88085AE6, 0xFF0F6A70, 0x66063BCA, 0x11010B5C, 0x8F659EFF, 0xF862AE69, 0x616BFFD3, 0x166CCF45, + 0xA00AE278, 0xD70DD2EE, 0x4E048354, 0x3903B3C2, 0xA7672661, 0xD06016F7, 0x4969474D, 0x3E6E77DB, + 0xAED16A4A, 0xD9D65ADC, 0x40DF0B66, 0x37D83BF0, 0xA9BCAE53, 0xDEBB9EC5, 0x47B2CF7F, 0x30B5FFE9, + 0xBDBDF21C, 0xCABAC28A, 0x53B39330, 0x24B4A3A6, 0xBAD03605, 0xCDD70693, 0x54DE5729, 0x23D967BF, + 0xB3667A2E, 0xC4614AB8, 0x5D681B02, 0x2A6F2B94, 0xB40BBE37, 0xC30C8EA1, 0x5A05DF1B, 0x2D02EF8D, +}; + +static u32 crc32_calc(const u8 *src, s32 bytes) +{ + u32 crc32 = 0xffffffff; + + while (bytes-- > 0) { + crc32 = (crc32 >> 8) ^ sc_crc32_table[(crc32 & 0xff) ^ *src++]; + } + + return (~crc32); +} + +static s32 params_data_read(void) +{ + struct params_storage_data params; + u32 crc; + + if (e2prom_read((u8 *)¶ms, PARAMS_ADDR, sizeof(params), 0) != 0) { + eprint("[%s]: e2prom_read fail.\n", __func__); + goto err1; + } + + if (params.magic != PARAMS_MAGIC) { + eprint("[%s]: Invalid magic=0x%08x\n", __func__, params.magic); + goto err1; + } + + crc = crc32_calc((u8 *)¶ms, sizeof(params) - 4); + if (crc != params.crc) { + eprint("[%s]: crc error, expect=0x%08x, actual=0x%08x\n", + __func__, params.crc, crc); + goto err1; + } + + /* Applay 'params' data */ + memcpy(&global_params_data, ¶ms.data, sizeof(struct params_data)); + + return 0; + +err1: + return -1; +} + +static s32 comp_data_read(void) +{ + struct comp_storage_data comp; + u32 crc; + + if (e2prom_read((u8 *)&comp, COMP_ADDR, sizeof(comp), 0) != 0) { + eprint("[%s]: e2prom_read fail.\n", __func__); + goto err1; + } + + if (comp.magic != COMP_MAGIC) { + eprint("[%s]: Invalid magic=0x%08x\n", __func__, comp.magic); + goto err1; + } + + crc = crc32_calc((u8 *)&comp, sizeof(comp) - 4); + if (crc != comp.crc) { + eprint("[%s]: crc error, expect=0x%08x, actual=0x%08x\n", + __func__, comp.crc, crc); + goto err1; + } + + /* Applay 'params' data */ + memcpy(&global_comp_data, &comp.data, sizeof(struct comp_data)); + + return 0; + +err1: + return -1; +} + +static s32 custom_data_read(void) +{ + struct custom_storage_data custom; + u32 crc; + + if (e2prom_read((u8 *)&custom, CUSTOM_ADDR, sizeof(custom), 0) != 0) { + eprint("[%s]: e2prom_read fail.\n", __func__); + goto err1; + } + + if (custom.magic != CUSTOM_MAGIC) { + eprint("[%s]: Invalid magic=0x%08x\n", __func__, custom.magic); + goto err1; + } + + crc = crc32_calc((u8 *)&custom, sizeof(custom) - 4); + if (crc != custom.crc) { + eprint("[%s]: crc error, expect=0x%08x, actual=0x%08x\n", + __func__, custom.crc, crc); + goto err1; + } + + /* Applay 'params' data */ + memcpy(&global_custom_data, &custom.data, sizeof(struct custom_data)); + + return 0; + +err1: + return -1; +} + +static s32 wireless_data_read(void) +{ + struct wireless_storage_data wldata; + u32 crc; + + if (e2prom_read((u8 *)&wldata, WIRELESS_ADDR, sizeof(wldata), 0) != 0) { + eprint("[%s]: e2prom_read fail.\n", __func__); + goto err1; + } + + if (wldata.magic != WIRELESS_MAGIC) { + eprint("[%s]: Invalid magic=0x%08x\n", __func__, wldata.magic); + goto err1; + } + + crc = crc32_calc((u8 *)&wldata, sizeof(wldata) - 4); + if (crc != wldata.crc) { + eprint("[%s]: crc error, expect=0x%08x, actual=0x%08x\n", + __func__, wldata.crc, crc); + goto err1; + } + + /* Applay 'wireless mode' data */ + global_runtime_data.horizontal = wldata.horizontal; + global_runtime_data.vertical = wldata.vertical; + memcpy(global_runtime_data.wireless_data, wldata.data, sizeof(wldata.data)); + + return 0; + +err1: + return -1; +} + +static s32 batch_data_read(void) +{ + struct batch_storage_data data; + u32 crc; + + if (e2prom_read((u8 *)&data, BATCH_ADDR, sizeof(data), 0) != 0) { + eprint("[%s]: e2prom_read fail.\n", __func__); + goto err1; + } + + if (data.magic != BATCH_MAGIC) { + eprint("[%s]: Invalid magic=0x%08x\n", __func__, data.magic); + goto err1; + } + + crc = crc32_calc((u8 *)&data, sizeof(data) - 4); + if (crc != data.crc) { + eprint("[%s]: crc error, expect=0x%08x, actual=0x%08x\n", + __func__, data.crc, crc); + goto err1; + } + + /* Applay 'batch mode' data */ + memcpy(global_runtime_data.batch_data, data.data, sizeof(data.data)); + + return 0; + +err1: + return -1; +} + +static s32 single_data_read(void) +{ + struct single_storage_data data; + u32 crc; + + if (e2prom_read((u8 *)&data, SINGLE_ADDR, sizeof(data), 0) != 0) { + eprint("[%s]: e2prom_read fail.\n", __func__); + goto err1; + } + + if (data.magic != SINGLE_MAGIC) { + eprint("[%s]: Invalid magic=0x%08x\n", __func__, data.magic); + goto err1; + } + + crc = crc32_calc((u8 *)&data, sizeof(data) - 4); + if (crc != data.crc) { + eprint("[%s]: crc error, expect=0x%08x, actual=0x%08x\n", + __func__, data.crc, crc); + goto err1; + } + + /* Applay 'single mode' data */ + global_runtime_data.fixed = data.data[0]; + global_runtime_data.inching = data.data[1]; + global_runtime_data.target_comp = data.data[2]; + global_runtime_data.inching2 = data.data[3]; + + return 0; + +err1: + return -1; +} + +static s32 find_comp_start(s32 pulse) +{ + s32 i; + + if (pulse >= global_comp_data.origin[global_comp_data.count - 1].pulse) { + /* 超过最大行程 */ + return -1; + } + + if (pulse > global_comp_data.origin[0].pulse) { + /* 往正方向移动原点, 行程减少 */ + for (i = global_comp_data.count; i > 0; i--) { + if (pulse >= global_comp_data.origin[i - 1].pulse) { + return i; + } + } + } + else { + /* 往负方向移动原点或不移动原点, 行程增加 */ + return 1; + } + + return -1; +} + +static s32 rebuild_stepper_comp_data(void) +{ + /* 无出厂补偿数据 */ + if (global_comp_data.count < 1) { + return -1; + } + + /* 将补偿数据拷贝到运行时参数 */ + global_runtime_data.comp = global_comp_data; + global_runtime_data.pulse_rate.num = 0; + global_runtime_data.pulse_rate.den = 1; + + return 0; +} + +#if defined(ZZF_ALG_PLUS) +static s32 build_servo_comp_less(s32 pulse_abs) +{ + s32 offset_pos; + s32 count = 0; + + /* 在前面插入一段补偿段 */ + global_runtime_data.comp.origin[0].pos = 0; + global_runtime_data.comp.origin[0].pulse = pulse_abs; + count++; + + /* 根据第一段和第二段的原始补偿数据计算每脉冲步长 */ + global_runtime_data.pulse_rate.num = global_comp_data.origin[1].pos + - global_comp_data.origin[0].pos; + global_runtime_data.pulse_rate.den = global_comp_data.origin[1].pulse + - global_comp_data.origin[0].pulse; + if (global_runtime_data.pulse_rate.den == 0) { + global_runtime_data.pulse_rate.num = 0; + global_runtime_data.pulse_rate.den = 1; + } + + /* 其余段补偿数据 */ + offset_pos = 1.0 * global_comp_data.offset * global_runtime_data.pulse_rate.num + / global_runtime_data.pulse_rate.den; + for (i = 0; i < global_comp_data.count; ++i) { + s32 new_index = i - 1; + s32 pos = global_comp_data.origin[i].pos - global_comp_data.origin[0].pos; + global_runtime_data.comp.origin[new_index].pos = pos - offset_pos; + global_runtime_data.comp.origin[new_index].pulse = global_comp_data.origin[i].pulse; + count++; + } + + return count; +} + +static s32 build_servo_comp_more(s32 pulse_abs) +{ + s32 start_index; + s32 count = 0; + + /* 重围第一段补偿数据, 即原点位数据 */ + global_runtime_data.comp.origin[0].pos = 0; + global_runtime_data.comp.origin[0].pulse = pulse_abs; + start_index = find_comp_start(pulse_abs); + if (start_index == -1) { + return -1; + } + + /* 根据第一段和第二段的原始补偿数据计算每脉冲步长 */ + if (global_comp_data.count > 1) { + global_runtime_data.pulse_rate.num = global_comp_data.origin[1].pos + - global_comp_data.origin[0].pos; + global_runtime_data.pulse_rate.den = global_comp_data.origin[1].pulse + - global_comp_data.origin[0].pulse; + if (global_runtime_data.pulse_rate.den == 0) { + global_runtime_data.pulse_rate.num = 0; + global_runtime_data.pulse_rate.den = 1; + } + } + + /* 第二段补偿数据 */ + start_pos = global_comp_data.origin[start_index].pos - global_comp_data.origin[0].pos; + offset_pos = 1.0 * global_comp_data.offset * global_runtime_data.pulse_rate.num + / global_runtime_data.pulse_rate.den; + global_runtime_data.comp.origin[1].pos = start_pos - offset_pos; + global_runtime_data.comp.origin[1].pulse = global_comp_data.origin[start_index].pulse; + + /* 其余段补偿数据 */ + for (i = start_index + 1; i < global_comp_data.count; ++i) { + s32 new_index = i - start_index + 1; + s32 pos = global_comp_data.origin[i].pos - global_comp_data.origin[0].pos; + global_runtime_data.comp.origin[new_index].pos = pos - offset_pos; + global_runtime_data.comp.origin[new_index].pulse = global_comp_data.origin[i].pulse; + count++; + } +} +#endif + +static s32 rebuild_servo_comp_data(void) +{ + s32 start_index; + s32 start_pos; + s32 offset_pos; + s32 count = 2; + s32 i; + + /* 清零运行时补偿数据 */ + memset(&global_runtime_data.comp, 0, sizeof(struct comp_data)); + + /* 无出厂补偿数据 */ + if (global_comp_data.count < 1) { + goto failed; + } + + /* 根据第一段和第二段的原始补偿数据计算每脉冲步长 */ + if (global_comp_data.count > 1) { + global_runtime_data.pulse_rate.num = global_comp_data.origin[1].pos + - global_comp_data.origin[0].pos; + global_runtime_data.pulse_rate.den = global_comp_data.origin[1].pulse + - global_comp_data.origin[0].pulse; + if (global_runtime_data.pulse_rate.den == 0) { + global_runtime_data.pulse_rate.num = 0; + global_runtime_data.pulse_rate.den = 1; + } + } + + /* 第一段补偿数据, 即原点位数据 */ + global_runtime_data.comp.origin[0].pos = 0; + global_runtime_data.comp.origin[0].pulse = global_comp_data.origin[0].pulse + + global_comp_data.offset; + start_index = find_comp_start(global_runtime_data.comp.origin[0].pulse); + dprint("[%s]: start index: %d\n", __func__, start_index); + if (start_index == -1) { + goto failed; + } + + /* 第二段补偿数据 */ + start_pos = global_comp_data.origin[start_index].pos - global_comp_data.origin[0].pos; + offset_pos = 1.0 * global_comp_data.offset * global_runtime_data.pulse_rate.num + / global_runtime_data.pulse_rate.den; + global_runtime_data.comp.origin[1].pos = start_pos - offset_pos; + global_runtime_data.comp.origin[1].pulse = global_comp_data.origin[start_index].pulse; + + /* 其余段补偿数据 */ + for (i = start_index + 1; i < global_comp_data.count; ++i) { + s32 new_index = i - start_index + 1; + s32 pos = global_comp_data.origin[i].pos - global_comp_data.origin[0].pos; + global_runtime_data.comp.origin[new_index].pos = pos - offset_pos; + global_runtime_data.comp.origin[new_index].pulse = global_comp_data.origin[i].pulse; + count++; + } + + /* 运行时补偿数据重建完成 */ + global_runtime_data.comp.count = count; + global_runtime_data.comp.enabled = global_comp_data.enabled; + + return 0; + +failed: + return -1; +} + +void comp_data_recalc(void) +{ + s32 motor_type = get_motor_type(); + s32 ret = -1; + s32 i; + + /* 启用多段补偿 */ + global_comp_data.enabled = 1; + + if (motor_type == MOTOR_SERVO) { + ret = rebuild_servo_comp_data(); + } + else { + ret = rebuild_stepper_comp_data(); + } + + if (ret == 0) { + s32 count = global_runtime_data.comp.count; + + /* 第一段的位置恒定为最小测试长度 */ + global_params_data.test_min = global_runtime_data.comp.origin[0].pos; + + /* 最后一段的位置恒定为最大测试长度 */ + global_params_data.test_max = global_runtime_data.comp.origin[count - 1].pos; + + /* 计算每段的长度与脉冲数比值 */ + global_runtime_data.comp.trans[0].num = 0; + global_runtime_data.comp.trans[0].den = 1; + for (i = 1; i < count; ++i) { + global_runtime_data.comp.trans[i].num = global_runtime_data.comp.origin[i].pos + - global_runtime_data.comp.origin[i - 1].pos; + global_runtime_data.comp.trans[i].den = global_runtime_data.comp.origin[i].pulse + - global_runtime_data.comp.origin[i - 1].pulse; + if (global_runtime_data.comp.trans[i].den == 0) { + global_runtime_data.comp.trans[i].den = 1; + } + } + + /* 同步更新运行控制参数 */ + global_params_data.max = global_params_data.test_max - global_params_data.test_min; + global_runtime_data.min = global_runtime_data.origin; + global_runtime_data.max = global_params_data.max + global_runtime_data.min; + /* 防止因为计算中间的小数位的丢失而造成最大行程值无法输入, 加上1个脉冲的长度 */ + global_runtime_data.max += 1.0 * global_runtime_data.pulse_rate.num + / global_runtime_data.pulse_rate.den; + global_runtime_data.origin_abs = global_runtime_data.comp.origin[0].pulse; + global_runtime_data.origin_valid = 1; + } + else { + global_runtime_data.origin = 0; + global_runtime_data.min = 0; + global_runtime_data.max = 0; + global_runtime_data.origin_abs = 0; + global_runtime_data.origin_valid = 0; + } + + /* debug by franki */ + dprint("runtime compensation data:\n"); + for (i = 0; i < global_runtime_data.comp.count; ++i) { + dprint("[%2d]: pos=%d, len=%d, pulse_abs=(%d)%d, den=%d, min=%d, max=%d\n", + i, global_runtime_data.comp.origin[i].pos, + global_runtime_data.comp.trans[i].num, + global_comp_data.origin[i].pulse, + global_runtime_data.comp.origin[i].pulse, + global_runtime_data.comp.trans[i].den, + global_params_data.test_min, + global_params_data.test_max); + } + dprint("runtime: min = %d, max = %d, params: max = %d\n", + global_runtime_data.min, global_runtime_data.max, + global_params_data.max); +#if 0 + s32 i; + + if (global_comp_data.count <= 0) { + global_runtime_data.origin = 0; + global_runtime_data.min = 0; + global_runtime_data.max = 0; + global_runtime_data.origin_abs = 0; + global_runtime_data.origin_valid = 0; + return; + } + + /* 第一段 */ + global_comp_data.trans[0].num = global_comp_data.origin[0].pos; + if (global_comp_data.origin[0].pulse != 0) { + global_comp_data.trans[0].den = global_comp_data.origin[0].pulse; + } + else { + global_comp_data.trans[0].den = 1; + } + + /* 第一段的位置恒定为最小测试长度 */ + global_params_data.test_min = global_comp_data.origin[0].pos; + + /* 其他段 */ + for (i = 1; i < global_comp_data.count; ++i) { + global_comp_data.trans[i].num = global_comp_data.origin[i].pos + - global_comp_data.origin[i - 1].pos; + global_comp_data.trans[i].den = global_comp_data.origin[i].pulse + - global_comp_data.origin[i - 1].pulse; + if (global_comp_data.trans[i].den == 0) { + global_comp_data.trans[i].den = 1; + } + } + + /* 最后一段的位置恒定为最大测试长度 */ + global_params_data.test_max = global_comp_data.origin[global_comp_data.count - 1].pos; + + /* 启用多段补偿 */ + global_comp_data.enabled = 1; + + /* 计算每脉冲步长 */ + if (global_comp_data.count > 1) { + global_runtime_data.pulse_rate.num = global_comp_data.origin[1].pos + - global_comp_data.origin[0].pos; + global_runtime_data.pulse_rate.den = global_comp_data.origin[1].pulse + - global_comp_data.origin[0].pulse; + if (global_runtime_data.pulse_rate.den == 0) { + global_runtime_data.pulse_rate.num = 0; + global_runtime_data.pulse_rate.den = 1; + } + + } + dprint("comp count: %d, pos1: %d, pos0: %d, pulse1: %d, pulse0: %d\n", + global_comp_data.count, global_comp_data.origin[1].pos, + global_comp_data.origin[0].pos, global_comp_data.origin[1].pulse, + global_comp_data.origin[0].pulse); + + /* 同步更新运行参数 */ + global_params_data.max = global_params_data.test_max - global_params_data.test_min; + //if (global_params_data.test_min > global_runtime_data.origin) { + // global_runtime_data.origin = global_params_data.test_min; + //} + global_runtime_data.min = global_runtime_data.origin; + global_runtime_data.max = global_params_data.max + global_runtime_data.min; + global_runtime_data.origin_abs = global_comp_data.origin[0].pulse; + global_runtime_data.origin_valid = 1; + + /* debug */ + dprint("global compensation data:\n"); + for (i = 0; i < global_comp_data.count; ++i) { + dprint("[%2d]: pos=%d, len=%d, pulse_abs=%d, pulse=%d, min=%d, max=%d\n", + i, global_comp_data.origin[i].pos, + global_comp_data.trans[i].num, + global_comp_data.origin[i].pulse, + global_comp_data.trans[i].den, + global_params_data.test_min, + global_params_data.test_max); + } +#endif +} + +#if 0 +static s32 trans_pulse_to_pos(s32 pulse_count) +{ + s32 pos = 0; + s32 i; + + if (global_comp_data.enabled) { + /* 补偿表第一项为标记最小测试长度的数据,不参与补偿计算 */ + for (i = global_comp_data.count; i > 0; i--) { + if (pulse_count >= global_comp_data.origin[i - 1].pulse) { + s32 index = (i == global_comp_data.count) ? (i - 1) : i; + s32 remain = pulse_count - global_comp_data.origin[i - 1].pulse; + pos = global_comp_data.origin[i - 1].pos - global_comp_data.origin[0].pos; + + pos -= global_comp_data.offset * 1.0 * global_runtime_data.pulse_rate.num / global_runtime_data.pulse_rate.den; + + pos += 1.0f * global_comp_data.trans[index].num + / global_comp_data.trans[index].den * remain; + break; + } + } + + /* 脉冲数小于最小的补偿点数据 */ + //if (pos == 0) { + // pos = 1.0f * global_comp_data.trans[0].num + // / global_comp_data.trans[0].den * pulse_count; + //} + } + else { + pos = 1.0f * global_params_data.pulse_rate.num + / global_params_data.pulse_rate.den * pulse_count; + } + + return pos; +} + +static s32 trans_pos_to_pulse(s32 pos) +{ + s32 pulse = 0; + s32 i; + + if (global_comp_data.enabled) { + /* 补偿表第一项为标记最小测试长度的数据,不参与补偿计算 + 传进来的目标净长度要加上最小测试长度,才能匹配补偿表进行计算 */ + pos += global_comp_data.origin[0].pos; + for (i = global_comp_data.count; i > 0; i--) { + dprint("comp pos: %d(%d)\n", pos, global_comp_data.origin[i - 1].pos); + if (pos >= global_comp_data.origin[i - 1].pos) { + s32 index = (i == global_comp_data.count) ? (i - 1) : i; + s32 remain = pos - global_comp_data.origin[i - 1].pos; + pulse = global_comp_data.origin[i - 1].pulse; + + pulse -= global_comp_data.offset; + + pulse += 1.0f * global_comp_data.trans[index].den + / global_comp_data.trans[index].num * remain; + dprint("remain=%d, den=%d, num=%d\n", remain, + global_comp_data.trans[index].den, + global_comp_data.trans[index].num); + break; + } + } + + /* 位置小于最小的补偿点数据 ?? */ + //if (pulse == 0) { + // pulse = 1.0f * global_comp_data.trans[0].den + // / global_comp_data.trans[0].num * pos; + //} + } + else { + pulse = 1.0f * global_params_data.pulse_rate.den + / global_params_data.pulse_rate.num * pos; + } + + return pulse; +} +#else +static s32 trans_pulse_to_pos(s32 pulse_count) +{ + s32 pos = 0; + s32 i; + + if (global_runtime_data.comp.enabled) { + /* 补偿表第一项为标记最小测试长度的数据,不参与补偿计算 */ + for (i = global_runtime_data.comp.count; i > 0; i--) { + if (pulse_count >= global_runtime_data.comp.origin[i - 1].pulse) { + s32 index = (i == global_runtime_data.comp.count) ? (i - 1) : i; + s32 remain = pulse_count - global_runtime_data.comp.origin[i - 1].pulse; + pos = global_runtime_data.comp.origin[i - 1].pos + - global_runtime_data.comp.origin[0].pos; + pos += 1.0f * global_runtime_data.comp.trans[index].num + / global_runtime_data.comp.trans[index].den * remain; + //dprint("remain: %d, num: %d, den: %d\n", remain, + // global_runtime_data.comp.trans[index].num, + // global_runtime_data.comp.trans[index].den); + break; + } + } + } + else { + pos = 1.0f * global_params_data.pulse_rate.num + / global_params_data.pulse_rate.den * pulse_count; + } + + return pos; +} + +static s32 trans_pos_to_pulse(s32 pos) +{ + s32 pulse = 0; + s32 i; + + if (global_runtime_data.comp.enabled) { + /* 补偿表第一项为标记最小测试长度的数据,不参与补偿计算 + 传进来的目标净长度要加上最小测试长度,才能匹配补偿表进行计算 */ + pos += global_runtime_data.comp.origin[0].pos; + for (i = global_runtime_data.comp.count; i > 0; i--) { + dprint("comp pos: %d(%d)\n", pos, global_runtime_data.comp.origin[i - 1].pos); + if (pos >= global_runtime_data.comp.origin[i - 1].pos) { + s32 index = (i == global_runtime_data.comp.count) ? (i - 1) : i; + s32 remain = pos - global_runtime_data.comp.origin[i - 1].pos; + pulse = global_runtime_data.comp.origin[i - 1].pulse; + pulse += 1.0f * global_runtime_data.comp.trans[index].den + / global_runtime_data.comp.trans[index].num * remain; + dprint("remain=%d, den=%d, num=%d\n", remain, + global_runtime_data.comp.trans[index].den, + global_runtime_data.comp.trans[index].num); + break; + } + } + } + else { + pulse = 1.0f * global_params_data.pulse_rate.den + / global_params_data.pulse_rate.num * pos; + } + + return pulse; +} +#endif + +static s32 custom_map_pos(s32 pos) +{ + s32 i; + s32 newpos = 0; + + for (i = 0; i < CUSTOM_MAX; ++i) { + if (pos > global_custom_data.range[i].lower + && pos <= global_custom_data.range[i].upper) { + s32 num = pos - global_custom_data.range[i].lower; + s32 den = global_custom_data.range[i].upper - global_custom_data.range[i].lower; + if (den == 0) { + den = 1; + } + newpos = 1.0f * num / den * global_custom_data.range[i].value; + break; + } + } + + return newpos; +} + +static void load_default_params(void) +{ + /* 默认语言(中文) */ + global_params_data.language = LANG_CN; + + /* 默认密码 */ + strcpy(global_params_data.passwd[LEVEL1], "8888"); + strcpy(global_params_data.passwd[LEVEL2], "68001"); + strcpy(global_params_data.passwd[LEVEL3], "90909"); + strcpy(global_params_data.passwd[LEVEL4], "46910"); + + /* 出厂日期 */ + struct tm tm_now; + tm_now.tm_year = 2025 - 1900; + tm_now.tm_mon = 2 - 1; + tm_now.tm_mday = 18; + tm_now.tm_hour = 0; + tm_now.tm_min = 0; + tm_now.tm_sec = 0; + global_params_data.production_date = mktime(&tm_now); + + /* 购买日期 */ + tm_now.tm_year = 2023 - 1900; + tm_now.tm_mon = 8 - 1; + tm_now.tm_mday = 22; + tm_now.tm_hour = 0; + tm_now.tm_min = 0; + tm_now.tm_sec = 0; + global_params_data.purchase_date = mktime(&tm_now); + + /* 维护电话 */ + strcpy(global_params_data.phone, "00000000000"); + global_params_data.wireless_id = 1; + global_params_data.max = 3000; // 3m + + /* 电机参数 */ + global_params_data.speed_run = DEFAULT_SPEED_RUN; + global_params_data.speed_time = DEFAULT_SPEED_TIME; + global_params_data.speed_gohome = DEFAULT_SPEED_GOHOME; + global_params_data.speed_crawl = DEFAULT_SPEED_CRAWL; + global_params_data.crawl_s1 = DEFAULT_CRAWL_S1; + global_params_data.crawl_s2 = DEFAULT_CRAWL_S2; + global_params_data.pulse_rate.num = DEFAULT_NUM; /* 单位um */ + global_params_data.pulse_rate.den = DEFAULT_DEN; /* 脉冲数 */ + + /* 远端磁栅尺参数 */ + global_params_data.wireless_id = 1; /* 站号 */ + global_params_data.wireless_params = 1; /* B9600, 485 */ + + /* 默认伺服控制器型号 */ + global_params_data.motor_model = MOTOR_MODEL_LS100; + + /* 45度切割功能, 默认关闭 */ + global_params_data.diagonal = 0; +} + +s32 data_init(void) +{ + /* 使能储存器 */ + e2prom_init(); + + /* 加载参数 */ + memset(&global_params_data, 0, sizeof(global_params_data)); + if (params_data_read() != 0) { + load_default_params(); + } + + /* 运行参数初始 */ + memset(&global_runtime_data, 0, sizeof(global_runtime_data)); + global_runtime_data.origin = global_params_data.origin; + /* global_runtime_data.max = global_params_data.max + global_runtime_data.origin; + global_runtime_data.min = global_runtime_data.origin; + global_runtime_data.measure_pos = -1;*/ + + /* 加载多段补偿数据 */ + memset(&global_comp_data, 0, sizeof(global_comp_data)); + if (comp_data_read() == 0) { + comp_data_recalc(); + } + + /* 加载用户自定义分段补偿数据 */ + memset(&global_custom_data, 0, sizeof(global_custom_data)); + custom_data_read(); + + /* 根据语言选择文字池 */ + language_update(); + +#if 0 + /* 绝对值伺服电机模式下, 回原是指运行至厂家多段补偿第一段的绝对位置, + * 而不是用原点开关来定位 */ + if (global_comp_data.count > 0) { + global_runtime_data.origin_valid = 1; + global_runtime_data.origin_abs = global_comp_data.origin[0].pulse; + } +#endif + + /* 加载'wireless mode'数据 */ + wireless_data_read(); + + /* 加载'batch mode'数据 */ + batch_data_read(); + + /* 加载'single mode'数据 */ + single_data_read(); + + /* 根据是否45度切割调整运行时原点位置,将正常的原点位置加上一个材料宽度 + * 的偏移,同时更新最大最小值 */ + if (global_params_data.diagonal) { + global_runtime_data.origin += global_runtime_data.target_comp; + global_runtime_data.max = global_params_data.max + global_runtime_data.origin; + global_runtime_data.min = global_runtime_data.origin; + } + + return 0; +} + +void data_deinit(void) +{ + e2prom_deinit(); +} + +void params_data_save(void) +{ + struct params_storage_data params; + + params.magic = PARAMS_MAGIC; + memcpy(¶ms.data, &global_params_data, sizeof(struct params_data)); + params.crc = crc32_calc((u8 *)¶ms, sizeof(params) - 4); + e2prom_write((u8 *)¶ms, PARAMS_ADDR, sizeof(params), 1000); +} + +void comp_data_save(void) +{ + struct comp_storage_data comp; + + comp.magic = COMP_MAGIC; + memcpy(&comp.data, &global_comp_data, sizeof(struct comp_data)); + comp.crc = crc32_calc((u8 *)&comp, sizeof(comp) - 4); + e2prom_write((u8 *)&comp, COMP_ADDR, sizeof(comp), 1000); +} + +void custom_data_save(void) +{ + struct custom_storage_data custom; + + custom.magic = CUSTOM_MAGIC; + memcpy(&custom.data, &global_custom_data, sizeof(struct custom_data)); + custom.crc = crc32_calc((u8 *)&custom, sizeof(custom) - 4); + e2prom_write((u8 *)&custom, CUSTOM_ADDR, sizeof(custom), 1000); +} + +void wireless_data_save(void) +{ + struct wireless_storage_data wldata; + + wldata.magic = WIRELESS_MAGIC; + wldata.horizontal = global_runtime_data.horizontal; + wldata.vertical = global_runtime_data.vertical; + memcpy(wldata.data, global_runtime_data.wireless_data, sizeof(wldata.data)); + wldata.crc = crc32_calc((u8 *)&wldata, sizeof(wldata) - 4); + e2prom_write((u8 *)&wldata, WIRELESS_ADDR, sizeof(wldata), 1000); +} + +void batch_data_save(void) +{ + struct batch_storage_data data; + + data.magic = BATCH_MAGIC; + memcpy(data.data, global_runtime_data.batch_data, sizeof(data.data)); + data.crc = crc32_calc((u8 *)&data, sizeof(data) - 4); + e2prom_write((u8 *)&data, BATCH_ADDR, sizeof(data), 1000); +} + +void single_data_save(void) +{ + struct single_storage_data data; + + data.magic = SINGLE_MAGIC; + data.data[0] = global_runtime_data.fixed; + data.data[1] = global_runtime_data.inching; + data.data[2] = global_runtime_data.target_comp; + data.data[3] = global_runtime_data.inching2; + data.crc = crc32_calc((u8 *)&data, sizeof(data) - 4); + e2prom_write((u8 *)&data, SINGLE_ADDR, sizeof(data), 1000); +} + +void runtime_data_update(void) +{ + global_runtime_data.max = global_params_data.max + global_runtime_data.origin; + global_runtime_data.min = global_runtime_data.origin; +} + +s32 get_language(void) +{ + return global_params_data.language; +} + +void language_update(void) +{ + switch (global_params_data.language) { + case LANG_CN: + global_text = global_text_cn; + global_text_nums = COUNTOF(global_text_cn); + break; + + case LANG_EN: + global_text = global_text_en; + global_text_nums = COUNTOF(global_text_en); + break; + + case LANG_VN: + global_text = global_text_vn; + global_text_nums = COUNTOF(global_text_vn); + break; + + default: + global_text = global_text_cn; + global_text_nums = COUNTOF(global_text_cn); + break; + } +} + +const char *get_text_from_pool(s32 id) +{ + if (id < global_text_nums) { + return global_text[id]; + } + + return ""; +} + +char *encode_datetime_by_lang(s32 lang, char *buffer) +{ + time_t now; + struct tm *tm_now; + + time(&now); + tm_now = localtime(&now); + + /* 范围检查 */ + if (tm_now->tm_wday < 0 || tm_now->tm_wday > 6) { + tm_now->tm_wday = 0; + } + + if (tm_now->tm_mon < 0 || tm_now->tm_mon > 11) { + tm_now->tm_mon = 0; + } + + switch (lang) { + case LANG_CN: + sprintf(buffer, "%då¹´%02d月%02d日 %s %02d:%02d:%02d", + tm_now->tm_year + 1900, + tm_now->tm_mon + 1, + tm_now->tm_mday, + wdays[lang][tm_now->tm_wday], + tm_now->tm_hour, + tm_now->tm_min, + tm_now->tm_sec); + break; + + case LANG_EN: + case LANG_VN: + sprintf(buffer, "%s %02d, %d %s %02d:%02d:%02d", + months[tm_now->tm_mon], + tm_now->tm_mday, + tm_now->tm_year + 1900, + wdays[lang][tm_now->tm_wday], + tm_now->tm_hour, + tm_now->tm_min, + tm_now->tm_sec); + break; + + default: + break; + } + + return buffer; +} + +struct params_data *get_params_data(void) +{ + return &global_params_data; +} + +struct runtime_data *get_runtime_data(void) +{ + return &global_runtime_data; +} + +struct comp_data *get_comp_data(void) +{ + return &global_comp_data; +} + +struct custom_data *get_custom_data(void) +{ + return &global_custom_data; +} + +s32 verify_range_common(const char *val, void *user_data) +{ + s32 v = strtof(val, NULL) * STORE_RATE; + + UNUSED(user_data); + if (v < global_runtime_data.min || v > global_runtime_data.max) { + return 0; + } + + return 1; +} + +s32 get_remote_limit_switch(void) +{ + return 0; +} + +s32 get_wireless_id(void) +{ + return ATOMIC_GET(global_params_data.wireless_id); +} + +s32 get_wireless_changed(void) +{ + return ATOMIC_GET_AND_CLR(global_runtime_data.wireless_changed); +} + +s32 get_wireless_params(void) +{ + return ATOMIC_GET(global_params_data.wireless_params); +} + +s32 get_running_speed(void) +{ + s32 v = ATOMIC_GET(global_params_data.speed_run) - 1; + if (v < 0) { + v = 0; + } + + return v; +} + +s32 get_rise_fall_time(void) +{ + s32 v = (ATOMIC_GET(global_params_data.speed_time) & 0xf) - 1; + if (v < 0) { + v = 0; + } + + return v; +} + +s32 get_gohome_speed(void) +{ + s32 v = (ATOMIC_GET(global_params_data.speed_gohome) & 0xf) - 1; + if (v < 0) { + v = 0; + } + + return v; +} + +s32 get_crawl_speed(void) +{ + s32 v = ATOMIC_GET(global_params_data.speed_crawl) - 1; + if (v < 0) { + v = 0; + } + + return v; +} + +s32 get_crawl_distance_s1(void) +{ + s32 v = ATOMIC_GET(global_params_data.crawl_s1) - 1; + if (v < 0) { + v = 0; + } + + return v; +} + +s32 get_crawl_distance_s2(void) +{ + s32 v = ATOMIC_GET(global_params_data.crawl_s2) - 1; + if (v < 0) { + v = 0; + } + + return v; +} + +s32 get_current_position(void) +{ + s32 pos = trans_pulse_to_pos(get_current_pulse_count()); + s32 addi_pos = 0; + + /* 调整为实际位置 */ + pos += global_runtime_data.origin; + + /* 用户自定义分段补偿 */ + if (global_custom_data.enabled) { + addi_pos = custom_map_pos(global_runtime_data.last_target); + pos -= addi_pos; + } + +#if defined(ZZF_DEBUG) + /* debug by franki */ + static s32 pulse = 0; + if (pulse != get_current_pulse_count()) { + dprint("[%s]: pos=%d, addi_pos=%d, pulse: %d\n", __func__, + pos, addi_pos, get_current_pulse_count()); + pulse = get_current_pulse_count(); + + s32 ddpulse = pulse - global_runtime_data.origin_abs; + float ratio = 1.0 * global_runtime_data.pulse_rate.num / global_runtime_data.pulse_rate.den; + float ddpos = ddpulse * ratio; + dprint("ddpos: %.f, ddpulse: %d, num: %d, den: %d, ratio: %f\n", ddpos, ddpulse, + global_runtime_data.pulse_rate.num, + global_runtime_data.pulse_rate.den, ratio); + } +#endif + + return pos; +} + +void clear_last_target_position(void) +{ + global_runtime_data.last_target = global_runtime_data.min; +} + +void set_target_position(s32 position) +{ + s32 pulse_count; + s32 addi_pos = 0; + + /* 保存位置副本,在分段补偿计算位置时使用 */ + global_runtime_data.last_target = position; + + /* 用户自定义分段补偿 */ + if (global_custom_data.enabled) { + addi_pos = custom_map_pos(position); + position += addi_pos; + } + + /* 减去原点预留长度 */ + position -= global_runtime_data.origin; + if (position < 0) { + position = 0; + } + + /* 转换位置到脉冲数 */ + pulse_count = trans_pos_to_pulse(position); + + dprint("target_pos: %d, addi_pos: %d, %d\n", position, addi_pos, pulse_count); + if (pulse_count & 1) { + pulse_count += 1; + } + set_target_pulse_count(pulse_count); +} + +u32 calc_super_passwd(void) +{ + time_t now; + struct tm *tm_now; + s32 y,m,d,w,h; + + time(&now); + tm_now = localtime(&now); + + /* function (year * week[1-7] * month * day + hour[0-23] */ + y = tm_now->tm_year + 1900; + m = tm_now->tm_mon + 1; + d = tm_now->tm_mday; + w = tm_now->tm_wday + 1; + h = tm_now->tm_hour; + + return (y * w * m * d + h) * 1234; +} + +__attribute__((unused)) void print_hex(const char *label, + const u8 *data, s32 size) +{ + s32 i; + + UNUSED(label); + UNUSED(data); + + dprint("%s\n", label); + for (i = 0; i < size; ++i) { + if (i > 0 && (i % 16) == 0) { + dprint("\n"); + } + + dprint("0x%02x ", data[i]); + } + dprint("\n"); +} + +s32 get_motor_type(void) +{ + return global_params_data.motor_type; +} + +s32 get_motor_model(void) +{ + return global_params_data.motor_model & MOTOR_MODEL_MASK; +} + +s32 get_motor_dir(void) +{ + return global_params_data.motor_dir & MOTOR_DIR_MASK; +} + +s32 get_motor_servo_origin(s32 *pulse) +{ + *pulse = global_runtime_data.origin_abs; + return global_runtime_data.origin_valid; +} + +void set_factory_test_mode(s32 enable) +{ + if (enable) { + ATOMIC_SET(global_runtime_data.factory_test); + } + else { + ATOMIC_CLR(global_runtime_data.factory_test); + } +} + +s32 get_factory_test_mode(void) +{ + return ATOMIC_GET(global_runtime_data.factory_test); +} + diff --git a/common/MK_e2prom.c b/common/MK_e2prom.c new file mode 100644 index 0000000..7baf557 --- /dev/null +++ b/common/MK_e2prom.c @@ -0,0 +1,164 @@ +/* + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are + * met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * * Redistributions in binary form must reproduce the above + * copyright notice, this list of conditions and the following disclaimer + * in the documentation and/or other materials provided with the + * distribution. + * * Neither the name of the nor the names of its + * contributors may be used to endorse or promote products derived from + * this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT + * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR + * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT + * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT + * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, + * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY + * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE + * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + * + */ +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include "MK_macro.h" +#include "MK_types.h" +#include "MK_func.h" + +static s32 e2prom_driver = -1; + +s32 e2prom_init(void) +{ + e2prom_driver = open("/dev/i2c-0", O_RDWR); + if (e2prom_driver < 0) { + return -ENXIO; + } + + ioctl(e2prom_driver, I2C_TIMEOUT, 50); /*超时时间*/ + ioctl(e2prom_driver, I2C_RETRIES, 2); /*重复次数*/ + + return 0; +} + +void e2prom_deinit(void) +{ + if (e2prom_driver >= 0) { + close(e2prom_driver); + e2prom_driver = -1; + } +} + +s32 e2prom_write(u8 *buf, u16 addr, s32 len, u32 timeout) +{ + u8 temp[36]; + struct i2c_msg msg[1]; + struct i2c_rdwr_ioctl_data e2prom_data; + + (void)timeout; + + e2prom_data.nmsgs = 1; + e2prom_data.msgs = msg; + + while (len > 0) { + s32 chunk = MIN(32, len); + temp[0] = addr >> 8; + temp[1] = addr & 0xff; + memcpy(&temp[2], buf, chunk); + + e2prom_data.msgs[0].len = chunk + 2; + e2prom_data.msgs[0].flags = 0; + e2prom_data.msgs[0].addr = 0xa0 >> 1; + e2prom_data.msgs[0].buf = temp; + + if (ioctl(e2prom_driver, I2C_RDWR, (u32)&e2prom_data) < 0) { + return -1; + } + + system_delay(10); + + buf += chunk; + addr += chunk; + len -= chunk; + } + + return 0; +} + +s32 e2prom_write_4(u8 *buf, u16 addr, s32 len, u32 timeout) +{ + u8 temp[8]; + struct i2c_msg msg[1]; + struct i2c_rdwr_ioctl_data e2prom_data; + + (void)timeout; + + e2prom_data.nmsgs = 1; + e2prom_data.msgs = msg; + + while (len > 0) { + s32 chunk = MIN(4, len); + temp[0] = addr >> 8; + temp[1] = addr & 0xff; + memcpy(&temp[2], buf, chunk); + + e2prom_data.msgs[0].len = chunk + 2; + e2prom_data.msgs[0].flags = 0; + e2prom_data.msgs[0].addr = 0xa0 >> 1; + e2prom_data.msgs[0].buf = temp; + + if (ioctl(e2prom_driver, I2C_RDWR, (u32)&e2prom_data) < 0) { + return -1; + } + + system_delay(10); + + buf += chunk; + addr += chunk; + len -= chunk; + } + + return 0; +} + +s32 e2prom_read(u8 *buf, u16 addr, s32 len, u32 timeout) +{ + u8 maddr[2]; + struct i2c_msg msg[2]; + struct i2c_rdwr_ioctl_data e2prom_data; + + (void)timeout; + + e2prom_data.nmsgs = 2; + e2prom_data.msgs = msg; + + maddr[0] = addr >> 8; + maddr[1] = addr & 0xff; + e2prom_data.msgs[0].len = 2; + e2prom_data.msgs[0].flags = 0; + e2prom_data.msgs[0].addr = 0xa0 >> 1; + e2prom_data.msgs[0].buf = maddr; + e2prom_data.msgs[1].len = len; + e2prom_data.msgs[1].flags = I2C_M_RD; + e2prom_data.msgs[1].addr = 0xa0 >> 1; + e2prom_data.msgs[1].buf = buf; + + if (ioctl(e2prom_driver, I2C_RDWR, (u32)&e2prom_data) < 0) { + return -1; + } + + return 0; +} diff --git a/common/MK_ep201t.c b/common/MK_ep201t.c new file mode 100644 index 0000000..7bc5fef --- /dev/null +++ b/common/MK_ep201t.c @@ -0,0 +1,332 @@ +/* + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are + * met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * * Redistributions in binary form must reproduce the above + * copyright notice, this list of conditions and the following disclaimer + * in the documentation and/or other materials provided with the + * distribution. + * * Neither the name of the nor the names of its + * contributors may be used to endorse or promote products derived from + * this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT + * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR + * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT + * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT + * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, + * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY + * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE + * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + * + */ + +#include +#include +#include +#include +#include +#include +#include +#include +#include "lvgl/lvgl.h" +#include "MK_macro.h" +#include "MK_types.h" +#include "MK_func.h" + +/* Serial communicate (9600,8,N,1) */ +#if defined(ZZF_DEBUG) + #define PRINTER_PORT "/dev/ttyS2" +#else + #define PRINTER_PORT "/dev/ttyS1" +#endif + +static s32 print_device = -1; +static const u8 string_single[] = { + 0x1b, 0x40, // 清缓存 + 0x1b, 0x7b, 0x01, // 开启颠倒打印模式 + 0x1c, 0x26, // 设定中文模式 + 0x1b, 0x4a, 0x20, // 上边距32点 + 0x1b, 0x42, 0x02, // 左边距2个字符 + 0x1f, 0x53, 0x03, // 设置中文大小(48x48) + 0x1f, 0x52, 0x05, // 设置英文大小(24x48) +}; + +static const u8 string_blank_line_20px[] = { + 0x1b, 0x4a, 0x14, // 进纸20点 +}; + +static const u8 string_single_title[] = { + 0xd0, 0xcd, 0xb2, 0xc4, 0xb3, 0xa4, 0xb6, 0xc8, 0x28, 0x6d, 0x6d, 0x29, // 型材长度(mm) + 0x0a, // 打印 +}; + +static const u8 print_head[] = { + 0x1b, 0x40, // 清缓存 + 0x1b, 0x7b, 0x01, // 开启颠倒打印模式 + 0x1c, 0x26, // 设定中文模式 + 0x1b, 0x4a, 0x0d, // 上边距13点 + 0x1b, 0x42, 0x01, // 左边距1个字符 + 0x1f, 0x53, 0x03, // 设置中文大小(48x48) + 0x1f, 0x52, 0x05, // 设置英文大小(24x48) +}; + +static const u8 string_title[][7] = { + {0xba, 0xe1, 0xd1, 0xb9, 0xd2, 0xbb, 0x0a}, // 横压一 + {0xba, 0xe1, 0xd1, 0xb9, 0xb6, 0xfe, 0x0a}, // 横压二 + {0xca, 0xfa, 0xd1, 0xb9, 0xd2, 0xbb, 0x0a}, // 竖压一 + {0xca, 0xfa, 0xd1, 0xb9, 0xb6, 0xfe, 0x0a}, // 竖压二 +}; + +static const u8 string_no[] = { + 0xd0, 0xf2, 0xba, 0xc5, 0x3a, 0x20, // 序号: +}; + +static const u8 string_len[] = { + 0xb3, 0xa4, 0xb6, 0xc8, 0x3a, 0x20, // 长度: +}; + +static s32 open_comm(const char *port) +{ + struct termios option; + s32 handle; + + /* Open serial port */ + handle = open(PRINTER_PORT, O_RDWR | O_NOCTTY); + if (handle == -1) { + eprint("Can not open %s!\n", port); + return -1; + } + + /* set serial port parameter (B9600, 8 , N , 1) */ + tcgetattr(handle, &option); + cfmakeraw(&option); + if (cfsetispeed(&option, B9600) != 0) { + eprint("cfsetispeed fail\n"); + } + if (cfsetospeed(&option, B9600) != 0) { + eprint("cfsetospeed fail\n"); + } + tcsetattr(handle, TCSANOW, &option); + + return handle; +} + +static void close_comm(void) +{ + if (print_device != -1) { + close(print_device); + print_device = -1; + } +} + +static s32 transfer(const void *tx, s32 tx_len, void *rx, u32 rx_len) +{ + s32 remain; + s32 s; + u8 *p; + s32 status; + u32 timeout; + + /* flush data */ + tcflush(print_device, TCIOFLUSH); + + /* send data */ + if (write(print_device, tx, tx_len) < tx_len) { + eprint("Write to print_port fail.\n"); + return -1; + } + + /* no need receive */ + if (rx == NULL) { + return 0; + } + + /* receive data until enough or timeout */ + p = rx; + remain = rx_len; + timeout = get_current_time() + 500; + do { + usleep(1000); + + /* get serial port data length */ + status = 0; + if (ioctl(print_device, FIONREAD, &status) < 0) { + continue; + } + + /* read data if has data */ + if (status > 0) { + s = status > remain ? remain : status; + s = read(print_device, p, s); + p += s; + remain -= s; + } + + } while (remain > 0 && time_after(timeout, get_current_time())); + + /* not enough data */ + if (remain > 0) { + //dprint("receive fail, remain = %d\n", remain); + return -1; + } + + return 0; +} + +static s32 printer_setup(void) +{ + u8 tx[16] = {0}; + u8 rx[16] = {0}; + + /* 复位 */ + tx[0] = 0x1f; + tx[1] = 0x2d; + tx[2] = 0x52; + tx[3] = 0x00; + transfer(tx, 4, NULL, 0); + system_delay(200); + + /* 关闭检测有纸回应 */ + tx[0] = 0x1f; + tx[1] = 0x2f; + tx[2] = 0x78; + tx[3] = 0x00; + tx[4] = 0x01; + tx[5] = 0x00; + tx[6] = 0x00; + transfer(tx, 7, NULL, 0); + system_delay(100); + + /* 设置为小票模式打印标签 */ + tx[0] = 0x1f; + tx[1] = 0x2f; + tx[2] = 0x0b; + tx[3] = 0x00; + tx[4] = 0x01; + tx[5] = 0x06; + tx[6] = 0x06; + transfer(tx, 7, NULL, 0); + system_delay(100); + + /* 定位至标签的缝隙位 */ + tx[0] = 0x1d; + tx[1] = 0x56; + tx[2] = 0x42; + tx[3] = 0x00; + transfer(tx, 4, NULL, 0); + system_delay(100); + + /* 检测打印胶棍是否就绪 */ + tx[0] = 0x10; + tx[1] = 0x08; + tx[2] = 0x01; + if (transfer(tx, 3, rx, 3) == 0) { + if (rx[0] == 0xfe && rx[1] == 0x27) { + return 0; + } + } + + return -1; +} + +s32 ep201t_init(void) +{ + print_device = open_comm(PRINTER_PORT); + if (print_device != -1) { + printer_setup(); + } + + return 0; +} + +void ep201t_deinit(void) +{ + close_comm(); +} + +void ep201t_action(s32 val) +{ + u8 buf[260]; + char *p; + s32 len; + + /* 装配打印指令 */ + memcpy(buf, string_single, sizeof(string_single)); // 打印控制参数 + p = (char *)buf + sizeof(string_single); + sprintf(p, "%.1f\n", val / STORE_RATE); + p += strlen(p); + memcpy(p, string_blank_line_20px, sizeof(string_blank_line_20px)); + p += sizeof(string_blank_line_20px); + memcpy(p, string_single_title, sizeof(string_single_title)); // 标题 + p += sizeof(string_single_title); + len = (s32)(p - (char *)buf); + transfer(buf, len, NULL, 0); + + // test + print_hex("[single]print:", buf, len); +} + +void ep201t_action_with_group(s32 val, s32 group, s32 no) +{ + u8 buf[260]; + char *p; + s32 len; + + /* 装配打印指令 */ + no %= COUNTOF(string_title); + memcpy(buf, print_head, sizeof(print_head)); // 打印控制参数 + p = (char *)buf + sizeof(print_head); + memcpy(p, string_len, sizeof(string_len)); // 长度: + p += sizeof(string_len); + sprintf(p, "%.1f mm\n", val / STORE_RATE); + p += strlen(p); + memcpy(p, string_no, sizeof(string_no)); // 序号: + p += sizeof(string_no); + if (no / 2) { + sprintf(p, "%d - (%d)\n", group, (no % 2) + 1); + } + else { + sprintf(p, "%d - %d\n", group, (no % 2) + 1); + } + p += strlen(p); + memcpy(p, string_title[no], sizeof(string_title[0])); // 横压/竖压标题 + p += sizeof(string_title[0]); + len = (s32)(p - (char *)buf); + transfer(buf, len, NULL, 0); + + // test + print_hex("[wireless]print:", buf, len); +} + +void ep201t_action_with_no(s32 val, s32 no) +{ + u8 buf[260]; + char *p; + s32 len; + + /* 装配打印指令 */ + memcpy(buf, print_head, sizeof(print_head)); // 打印控制参数 + p = (char *)buf + sizeof(print_head); + memcpy(p, string_len, sizeof(string_len)); // 长度: + p += sizeof(string_len); + sprintf(p, "%.1f \n", val / STORE_RATE); + p += strlen(p); + memcpy(p, string_no, sizeof(string_no)); // 序号: + p += sizeof(string_no); + sprintf(p, "%d\n", no + 1); + p += strlen(p); + memcpy(p, string_single_title, sizeof(string_single_title)); // 标题 + p += sizeof(string_single_title); + len = (s32)(p - (char *)buf); + transfer(buf, len, NULL, 0); + + // test + print_hex("[batch]print:", buf, len); +} diff --git a/common/MK_func.h b/common/MK_func.h new file mode 100644 index 0000000..de79edb --- /dev/null +++ b/common/MK_func.h @@ -0,0 +1,246 @@ +#ifndef MK_FUNC_H +#define MK_FUNC_H + +#include + +/* debug function define */ +#if defined(ZZF_DEBUG) + #define dprint printf +#else + #define dprint(...) +#endif +#define eprint printf + +/* Fonts declaration */ +LV_FONT_DECLARE(sans_r_18); +LV_FONT_DECLARE(sans_r_30); +LV_FONT_DECLARE(sans_m_24); +LV_FONT_DECLARE(sans_m_30); +LV_FONT_DECLARE(sans_m_36); +LV_FONT_DECLARE(ime_num_32); +LV_FONT_DECLARE(sans_b_36); + +/* Implement by MK_sys.c */ +extern void system_delay(s32 ms); +extern u32 get_current_time(void); +extern u16 get_hour_min(void); +extern u32 get_current_second(void); +extern u32 get_absolute_second(void); + +/* Implement by MK_style.c */ +extern void project_style_init(void); +extern lv_style_t* get_project_style(u32 style_id); + +/* Implement by MK_ime.c */ +extern void create_ime(f32 min, f32 max, struct ime_cb *cb); + +/* Implement by MK_main.c */ +extern s32 main_init(void); +extern void main_deinit(void); +extern void main_update(void); +extern void main_reset(void); +extern void update_main_interface(void); +extern void set_current_page(s32 new_page); + +/* Implement by MK_single.c */ +extern s32 single_open(void *args); +extern void single_close(void); +extern void single_update(void); + +/* Implement by MK_toturial.c */ +extern s32 tutorial_open(void *args); +extern void tutorial_close(void); +extern void tutorial_update(void); + +/* Implement by MK_wireless.c */ +extern s32 wireless_open(void *args); +extern void wireless_close(void); +extern void wireless_update(void); + +/* Implement by MK_batch.c */ +extern s32 batch_open(void *args); +extern void batch_close(void); +extern void batch_update(void); + +/* Implement by MK_origin.c */ +extern s32 origin_open(void *args); +extern void origin_close(void); +extern void origin_update(void); + +/* Implement by MK_setting.c */ +extern s32 setting_open(void *args); +extern void setting_close(void); +extern void setting_update(void); + +/* Implement by MK_compensation.c */ +extern s32 compensation_open(void *args); +extern void compensation_close(void); +extern void compensation_update(void); + +/* Implement by MK_setup.c */ +extern s32 setup_open(void *args); +extern void setup_close(void); +extern void setup_update(void); + +/* Implement by MK_system.c */ +extern s32 system_open(void *args); +extern void system_close(void); +extern void system_update(void); + +/* Implement by MK_info.c */ +extern s32 info_open(void *args); +extern void info_close(void); +extern void info_update(void); + +/* Implement by MK_dealer.c */ +extern s32 dealer_open(void *args); +extern void dealer_close(void); +extern void dealer_update(void); + +/* Implement by MK_custom.c */ +extern s32 custom_open(void *args); +extern void custom_close(void); +extern void custom_update(void); + +/* Implement by MK_factory.c */ +extern s32 factory_open(void *args); +extern void factory_close(void); +extern void factory_update(void); + +/* Implement by MK_tester.c */ +extern s32 tester_open(void *args); +extern void tester_close(void); +extern void tester_update(void); + +/* Implement by MK_data.c */ +extern s32 data_init(void); +extern void data_deinit(void); +extern s32 get_language(void); +extern void set_current_window(s32 window); +extern struct runtime_data *get_runtime_data(void); +extern struct params_data *get_params_data(void); +extern const char* get_text_from_pool(s32 id); +extern char* encode_datetime_by_lang(s32 lang, char *buffer); +extern s32 verify_range_common(const char *val, void *user_data); +extern s32 get_remote_limit_switch(void); +extern s32 get_wireless_id(void); +extern s32 get_wireless_params(void); +extern s32 get_wireless_changed(void); +extern s32 get_running_speed(void); +extern s32 get_rise_fall_time(void); +extern s32 get_gohome_speed(void); +extern s32 get_crawl_speed(void); +extern void runtime_data_update(void); +extern void params_data_save(void); +extern s32 get_current_position(void); +extern void set_target_position(s32 position); +extern u32 calc_super_passwd(void); +extern void print_hex(const char *label, const u8 *data, s32 size); +extern void comp_data_save(void); +extern void comp_data_recalc(void); +extern struct comp_data *get_comp_data(void); +extern void custom_data_save(void); +extern struct custom_data *get_custom_data(void); +extern void clear_last_target_position(void); +extern void wireless_data_save(void); +extern void batch_data_save(void); +extern void single_data_save(void); +extern s32 get_crawl_distance_s1(void); +extern s32 get_crawl_distance_s2(void); +extern void language_update(void); +extern s32 get_motor_type(void); +extern s32 get_motor_model(void); +extern s32 get_motor_servo_origin(s32 *pulse); +extern s32 get_motor_dir(void); +extern void set_factory_test_mode(s32 enable); +extern s32 get_factory_test_mode(void); + +/* Implement by MK_image.c */ +extern s32 image_info(const char *name, s32 *w, s32 *h); +extern s32 image_convert(const char *ifile, const char *ofile, s32 fmt); + +/* Implement by board.c */ +extern s32 board_init(void); +extern void board_deinit(void); +extern void motor_test_enable(s32 enable); +extern s32 get_motor_test_enable(void); +extern void motor_terminate(void); +extern void motor_reset(void); +extern void buzz_alarm(void); +extern s32 get_current_pulse_count(void); +extern void set_target_pulse_count(s32 count); +extern void set_wriggle_mode(s32 mode); +extern s32 get_running_status(void); +extern s32 get_gohome_status(void); +extern s32 check_keypress(s32 id); +extern s32 get_measure_data(void); +extern s32 get_measure_data_raw(void); +extern s32 get_xinput_state(s32 pos); +extern s32 get_mcu_error_status(void); +extern s32 get_motor_status(void); +extern s32 get_mcu_version(void); +extern void set_output_state(s32 id, s32 state); +extern s32 get_output_state(s32 id); +extern s32 get_input_state(s32 id); + +/* Implement by MK_printer.c */ +extern s32 printer_init(void); +extern void printer_deinit(void); +extern void printer_action(s32 val); +extern void printer_action_with_group(s32 val, s32 group, s32 no); +extern void printer_action_with_no(s32 val, s32 no); + +/* Implement by elib_wrap.c */ +extern s32 elib_wrap_init(void); +extern void elib_wrap_deinit(void); +extern void system_reboot(void); +extern void buzz(void); +extern void buzz_warning(void); +extern void buzz_long(void); + +/* Implement by MK_e2prom.c */ +extern s32 e2prom_init(void); +extern void e2prom_deinit(void); +extern s32 e2prom_write(u8 *buf, u16 addr, s32 len, u32 timeout); +extern s32 e2prom_read(u8 *buf, u16 addr, s32 len, u32 timeout); +extern s32 e2prom_write_4(u8 *buf, u16 addr, s32 len, u32 timeout); + +/* Implement by fbdev.c */ +extern void fbdev_init(void); +extern void fbdev_exit(void); +extern void fbdev_flush(lv_disp_drv_t *drv, const lv_area_t * area, + lv_color_t *color_p); +extern void fbdev_get_sizes(uint32_t *width, uint32_t *height); + +/* Implement by evdev.c */ +extern void evdev_init(void); +extern bool evdev_read(lv_indev_drv_t *drv, lv_indev_data_t *data); + +/* Implement by rot_fb.c */ +extern void rot_fb_init(void); +extern void rot_fb_exit(void); +extern void rot_fb_flush(lv_disp_drv_t *drv, const lv_area_t *area, + lv_color_t *color_p); +extern void rot_fb_get_sizes(uint32_t *width, uint32_t *height); + +/* Implement by rot_evdev.c */ +extern void rot_evdev_init(void); +extern bool rot_evdev_read(lv_indev_drv_t *drv, lv_indev_data_t *data); + +/* 打印机驱动模块 */ +/* MY-E8M */ +extern s32 mye8m_init(void); +extern void mye8m_deinit(void); +extern void mye8m_action(s32 val); +extern void mye8m_action_with_group(s32 val, s32 group, s32 no); +extern void mye8m_action_with_no(s32 val, s32 no); + +/* EP-201T */ +extern s32 ep201t_init(void); +extern void ep201t_deinit(void); +extern void ep201t_action(s32 val); +extern void ep201t_action_with_group(s32 val, s32 group, s32 no); +extern void ep201t_action_with_no(s32 val, s32 no); + + +#endif diff --git a/common/MK_image.c b/common/MK_image.c new file mode 100644 index 0000000..bb8ddc3 --- /dev/null +++ b/common/MK_image.c @@ -0,0 +1,128 @@ +/* + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are + * met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * * Redistributions in binary form must reproduce the above + * copyright notice, this list of conditions and the following disclaimer + * in the documentation and/or other materials provided with the + * distribution. + * * Neither the name of the nor the names of its + * contributors may be used to endorse or promote products derived from + * this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT + * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR + * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT + * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT + * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, + * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY + * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE + * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + * + */ + +#include +#if !defined(ZZF_IMAGE_DISABLED) + #define STB_IMAGE_IMPLEMENTATION + #include "stb_image.h" + #define STB_IMAGE_WRITE_IMPLEMENTATION + #include "stb_image_write.h" +#endif +#include "MK_macro.h" +#include "MK_types.h" + +s32 image_info(const char *name, s32 *w, s32 *h) +{ +#if defined(ZZF_IMAGE_DISABLED) + UNUSED(name); + UNUSED(w); + UNUSED(h); + + return -1; +#else + s32 comp, ok; + + ok = stbi_info(name, w, h, &comp); + if (ok == 0 || comp == 0 || comp > 4) { + return -1; + } + + return 0; +#endif +} + +s32 image_convert(const char *ifile, const char *ofile, s32 fmt) +{ +#if defined(ZZF_IMAGE_DISABLED) + UNUSED(ifile); + UNUSED(ofile); + + return -1; +#else + s32 w, h, comp; + u8 *pixels; + s32 ret = -1; + s32 i; + + /* 载入源图片 */ + pixels = stbi_load(ifile, &w, &h, &comp, 0); + if (pixels == NULL) { + goto err1; + } + + /* 去除alpha数据 */ + switch (comp) { + case 1: + break; + + case 2: + comp = 1; + for (i = 0; i < w * h; ++i) { + pixels[i] = pixels[i * 2]; + } + break; + + case 3: + break; + + case 4: + comp = 3; + for (i = 0; i < w * h; ++i) { + pixels[i * 3 + 0] = pixels[i * 4 + 0]; + pixels[i * 3 + 1] = pixels[i * 4 + 1]; + pixels[i * 3 + 2] = pixels[i * 4 + 2]; + } + break; + + default: + goto err2; + } + + if (fmt == IMG_BMP) { + /* 输出为bmp格式的24位文件 */ + if (stbi_write_bmp(ofile, w, h, comp, pixels)) { + ret = 0; + } + } + else if (fmt == IMG_PNG) { + /* 输出为png格式的24位文件 */ + if (stbi_write_png(ofile, w, h, comp, pixels, 0)) { + ret = 0; + } + } + else { + //dprint("Invalid output format.\n"); + } + +err2: + stbi_image_free(pixels); +err1: + return ret; +#endif +} diff --git a/common/MK_ime.c b/common/MK_ime.c new file mode 100644 index 0000000..fa221f7 --- /dev/null +++ b/common/MK_ime.c @@ -0,0 +1,345 @@ +/* + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are + * met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * * Redistributions in binary form must reproduce the above + * copyright notice, this list of conditions and the following disclaimer + * in the documentation and/or other materials provided with the + * distribution. + * * Neither the name of the nor the names of its + * contributors may be used to endorse or promote products derived from + * this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT + * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR + * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT + * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT + * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, + * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY + * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE + * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + * + */ +#include +#include +#include +#include +#include +#include +#include "lvgl/lvgl.h" +#include "MK_macro.h" +#include "MK_types.h" +#include "MK_func.h" + +static lv_obj_t *dialog; +static lv_obj_t *frame; + +static struct ime ime_data; +static struct ime_cb *pcb; + +static f32 min_val; +static f32 max_val; +static s32 input_invalid; + +#if defined(ZZF_USE_BTNMATRIX) +static const char *btnm_map[LANG_MAX][20] = { + { + "7", "8", "9", "-", "\n", + "4", "5", "6", "清空", "\n", + "1", "2", "3", "退出", "\n", + ".", "0", "后退", "输入", "" + }, + { + "7", "8", "9", "-", "\n", + "4", "5", "6", "CLR", "\n", + "1", "2", "3", "EXIT", "\n", + ".", "0", "DEL", "ENTER", "" + }, +}; +#else +static const struct ime_button smpbtn[] = { + {{"7", "7", "7"}, {-207, 140, 120, 56}}, + {{"8", "8", "8"}, {-69, 140, 120, 56}}, + {{"9", "9", "9"}, {69, 140, 120, 56}}, + {{"-", "-", "-"}, {207, 140, 120, 56}}, + + {{"4", "4", "4"}, {-207, 206, 120, 56}}, + {{"5", "5", "5"}, {-69, 206, 120, 56}}, + {{"6", "6", "6"}, {69, 206, 120, 56}}, + {{"清空", "CLR", "CLR"}, {207, 206, 120, 56}}, + + {{"1", "1", "1"}, {-207, 272, 120, 56}}, + {{"2", "2", "2"}, {-69, 272, 120, 56}}, + {{"3", "3", "3"}, {69, 272, 120, 56}}, + {{"退出", "EXIT", "EXIT"}, {207, 272, 120, 56}}, + + {{".", ".", "."}, {-207, 338, 120, 56}}, + {{"0", "0", "0"}, {-69, 338, 120, 56}}, + {{"后退", "DEL", "DEL"}, {69, 338, 120, 56}}, + {{"输入", "ENTER", "ENTER"}, {207, 338, 120, 56}}, +}; +#endif + +static void clear_ime_buffer(struct ime *data) +{ + memset(data, 0, sizeof(struct ime)); + data->buffer[0] = ' '; +} + +static s32 assign_radix_point(struct ime *data) +{ + u32 i; + + for (i = 0; i < sizeof(data->buffer) - 2; ++i) { + if (data->buffer[i] == '.') { + return 1; + } + } + data->index++; + data->buffer[data->index] = '.'; + + return 0; +} + +/* +static void ev_btn_cb(lv_event_t *e) +{ + lv_obj_t *label = (lv_obj_t *)lv_event_get_user_data(e); + + if (ime_data.index < sizeof(ime_data.buffer) - 2) { + ime_data.index++; + ime_data.buffer[ime_data.index] = '9'; + lv_label_set_text(label, ime_data.buffer); + } + +} + +static void ev_btn2_cb(lv_event_t *e) +{ + lv_obj_t *label = (lv_obj_t *)lv_event_get_user_data(e); + + clear_ime_buffer(&ime_data); + lv_label_set_text(label, ime_data.buffer); +}*/ + +static void ev_btnmatrix_cb(lv_event_t *e) +{ + lv_obj_t *obj = lv_event_get_target(e); + lv_obj_t *label = (lv_obj_t *)lv_event_get_user_data(e); + +#if defined(ZZF_USE_BTNMATRIX) + s32 btn_id = lv_btnmatrix_get_selected_btn(obj); + const char *btn_text = lv_btnmatrix_get_btn_text(obj, btn_id); +#else + s32 btn_id = (s32)lv_obj_get_user_data(obj); + const char *btn_text = smpbtn[btn_id].caption[0]; +#endif + + buzz(); + + /* 清除输入错误红色警示 */ + if (input_invalid) { + lv_obj_set_style_bg_color(frame, lv_color_hex(0), 0); + input_invalid = 0; + } + + s32 quit = 0; + switch (btn_id) { + case 3: // 负号 + if (ime_data.buffer[0] == '-') { + ime_data.buffer[0] = ' '; + } + else { + ime_data.buffer[0] = '-'; + } + break; + + case 7: // 清空 + clear_ime_buffer(&ime_data); + break; + + case 11: // 退出 + quit = 1; + break; + + case 12: // 小数点 + assign_radix_point(&ime_data); + break; + + case 14: // 退格 + if (ime_data.index > 0) { + ime_data.buffer[ime_data.index] = '\0'; + ime_data.index--; + } + break; + + case 15: // 输入回车 + if (pcb != NULL && pcb->verify != NULL) { + if (!pcb->verify(ime_data.buffer, pcb->user_data)) { + lv_obj_set_style_bg_color(frame, lv_color_hex(0xff0000), 0); + input_invalid = 1; + return; + } + } + + if (pcb != NULL && pcb->update != NULL) { + pcb->update(ime_data.buffer, pcb->user_data); + quit = 1; + } + break; + + default: + if (ime_data.index < sizeof(ime_data.buffer) - 2) { + ime_data.index++; + ime_data.buffer[ime_data.index] = btn_text[0]; + } + break; + } + +// dprint("btn index: %d, text: %s\n", btn_id, btn_text); +// dprint("ime buffer: %s\n", ime_data.buffer); + if (pcb->pwd_mode) { + char buf[sizeof(ime_data.buffer)] = {0}; + memset(buf, '*', strlen(ime_data.buffer) - 1); + lv_label_set_text(label, buf); + } + else { + lv_label_set_text(label, ime_data.buffer); + } + + if (quit) { + /* 等按键释放,防止传导到下一层窗口,引起误触发 */ + lv_indev_wait_release(lv_indev_get_act()); + + /* 关闭输入窗口 */ + lv_obj_del(dialog); + dialog = NULL; + + /* 取消屏幕独占模式 */ + lv_obj_clear_flag(lv_layer_top(), LV_OBJ_FLAG_CLICKABLE); + + /* 执行调用者的exit回调,如果存在 */ + if (pcb->exit) { + pcb->exit(); + } + } +} + +static void create_ime_dialog(void) +{ + lv_obj_t *obj; + lv_obj_t *btnm; + lv_obj_t *label; + s32 lang; + u32 i; + char buf[128]; + lv_style_t *style_main = get_project_style(STYLE_METER); + lv_style_t *style_button = get_project_style(STYLE_BUTTON); + + /* 清空输入缓冲 */ + clear_ime_buffer(&ime_data); + + /* 获取语言 */ + lang = get_language(); + + /* 设置屏幕独占模式 */ + lv_obj_add_flag(lv_layer_top(), LV_OBJ_FLAG_CLICKABLE); + + /* 创建模式dialog容器 */ + dialog = lv_obj_create(lv_layer_top()); + lv_obj_set_size(dialog, 600, 420); + lv_obj_add_style(dialog, style_main, LV_PART_MAIN); + lv_obj_set_style_border_color(dialog, lv_color_hex(0), 0); + lv_obj_set_style_border_width(dialog, 2, 0); + lv_obj_align(dialog, LV_ALIGN_CENTER, 0, 0); + + /* 标题及提示栏 */ + obj = lv_obj_create(dialog); + lv_obj_set_size(obj, LV_PCT(100), 40); + lv_obj_set_style_radius(obj, 0, 0); + lv_obj_set_style_border_width(obj, 0, 0); + lv_obj_set_style_pad_top(obj, 0, 0); + lv_obj_set_style_pad_bottom(obj, 0, 0); + lv_obj_set_style_bg_color(obj, lv_color_hex(0x586273), 0); + lv_obj_align(obj, LV_ALIGN_TOP_MID, 0, 0); + + /* 提示文字 */ + const char *p1 = get_text_from_pool(TID_max); + const char *p2 = get_text_from_pool(TID_min); + label = lv_label_create(obj); + sprintf(buf, "%s: %.1f", p1, max_val); + lv_label_set_text(label, buf); + lv_obj_set_style_text_font(label, &sans_r_18, 0); + lv_obj_set_style_text_color(label, lv_color_hex(0xffffff), 0); + lv_obj_align(label, LV_ALIGN_LEFT_MID, 60, 0); + label = lv_label_create(obj); + sprintf(buf, "%s: %.1f", p2, min_val); + lv_label_set_text(label, buf); + lv_obj_set_style_text_font(label, &sans_r_18, 0); + lv_obj_set_style_text_color(label, lv_color_hex(0xffffff), 0); + lv_obj_align(label, LV_ALIGN_RIGHT_MID, -60, 0); + + /* 输入框 */ + frame = lv_obj_create(dialog); + lv_obj_set_size(frame, 560, 80); + lv_obj_set_style_pad_top(frame, 0, 0); + lv_obj_set_style_pad_bottom(frame, 0, 0); + lv_obj_set_style_border_width(frame, 1, 0); + lv_obj_set_style_bg_color(frame, lv_color_hex(0x000000), 0); + lv_obj_align(frame, LV_ALIGN_TOP_MID, 0, 50); + + /* 输入框文字 */ + obj = lv_label_create(frame); + lv_label_set_text(obj, ""); + lv_obj_set_style_text_font(obj, &ime_num_32, 0); + lv_obj_set_style_text_color(obj, lv_color_hex(0xffffff), 0); + lv_obj_set_style_text_letter_space(obj, 3, 0); + lv_obj_align(obj, LV_ALIGN_RIGHT_MID, -10, 0); + +#if defined(ZZF_USE_BTNMATRIX) + btnm = lv_btnmatrix_create(dialog); + lv_obj_set_size(btnm, 540, 260); + lv_btnmatrix_set_map(btnm, btnm_map[lang]); + lv_obj_set_style_text_font(btnm, &sans_m_24, 0); + lv_obj_align(btnm, LV_ALIGN_TOP_MID, 0, 140); + lv_obj_set_style_pad_top(btnm, 0, 0); + lv_obj_set_style_pad_bottom(btnm, 0, 0); + lv_obj_set_style_pad_left(btnm, 0, 0); + lv_obj_set_style_pad_right(btnm, 0, 0); + lv_obj_set_style_border_width(btnm, 0, 0); + lv_obj_add_event_cb(btnm, ev_btnmatrix_cb, LV_EVENT_VALUE_CHANGED, obj); +#else + for (i = 0; i < COUNTOF(smpbtn); ++i) { + btnm = lv_btn_create(dialog); + lv_obj_set_user_data(btnm, (void *)i); + lv_obj_set_size(btnm, smpbtn[i].rect.w, smpbtn[i].rect.h); + lv_obj_align(btnm, LV_ALIGN_TOP_MID, smpbtn[i].rect.x, smpbtn[i].rect.y); + lv_obj_add_style(btnm, style_button, 0); +// lv_obj_set_style_border_color(btnm, lv_color_hex(0), 0); +// lv_obj_set_style_border_width(btnm, 1, 0); + label = lv_label_create(btnm); + lv_obj_set_style_text_font(label, &sans_m_24, 0); + lv_label_set_text(label, smpbtn[i].caption[lang]); + lv_obj_set_style_text_color(label, lv_color_hex(0x000000), 0); + lv_obj_align(label, LV_ALIGN_CENTER, 0, 0); + lv_obj_add_event_cb(btnm, ev_btnmatrix_cb, LV_EVENT_PRESSED, obj); + } +#endif +} + +void create_ime(f32 min, f32 max, struct ime_cb *cb) +{ + min_val = min; + max_val = max; + input_invalid = 0; + + pcb = cb; + create_ime_dialog(); +} + diff --git a/common/MK_macro.h b/common/MK_macro.h new file mode 100644 index 0000000..5b2a2e9 --- /dev/null +++ b/common/MK_macro.h @@ -0,0 +1,296 @@ +#ifndef MK_MACRO_H +#define MK_MACRO_H + +#define NDEBUG +#include + +/* application switch */ + +/* platform atomic define */ +#define ATOMIC_GET(v) __sync_fetch_and_add(&v, 0) +#define ATOMIC_SET(v) __sync_lock_test_and_set(&v, 1) +#define ATOMIC_CLR(v) __sync_lock_release(&v) +#define ATOMIC_INC(v) __sync_fetch_and_add(&v, 1) +#define ATOMIC_STM(v, d) __sync_lock_test_and_set(&v, d) +#define ATOMIC_GET_AND_CLR(v) __sync_lock_test_and_set(&v, 0) + +/* system define */ +#define UNUSED(a) ((void)(a)) +#define COUNTOF(a) (sizeof(a) / sizeof((a)[0])) +#define BIT(n) (1 << (n)) +#define BIT_VAL(v,n) (((v) >> (n)) & 1) +#define BITS_VAL(v,n,l) (((v) >> (n)) & ((1 << l) - 1)) +#define MIN(a,b) ((a) > (b) ? (b) : (a)) +#define MAX(a,b) ((a) > (b) ? (a) : (b)) +#define ABS(n) ((n) > 0 ? (n) : (-(n))) +#define ASCII_TO_INT(a) ((a) - '0') +#define BIT2BYTE(v,n) (((v) & 1) << n) +#define RANGEQ(v,min,max) \ +do { \ + if ((v) < (min)) { \ + (v) = (min); \ + } \ + else if ((v) > (max)) { \ + (v) = (max); \ + } \ +} while (0) + +#define STA_ON 1 +#define STA_OFF 0 + +#ifndef FALSE + #define FALSE 0 + #undef TRUE + #define TRUE !FALSE +#endif +#define ADD 0 +#define EDIT 1 + +#define LANG_CN 0 /* 语言定义 */ +#define LANG_EN 1 +#define LANG_VN 2 +#define LANG_MAX 3 + +#define LEVEL_MAX 4 /* 4个权限等级 */ +#define LEVEL1 0 +#define LEVEL2 1 +#define LEVEL3 2 +#define LEVEL4 3 + +#define MOTOR_STEPPER 0 /* 步进电机 */ +#define MOTOR_SERVO 1 /* 伺服电机 */ +#define MOTOR_LEFT 0 /* 左移为正方向 */ +#define MOTOR_RIGHT 1 /* 右移为正方向 */ +#define MOTOR_DIR_MASK 1 +#define MOTOR_MODEL_T3D 0 /* T3D伺服控制器 */ +#define MOTOR_MODEL_LS100 1 /* LS100伺服控制器 */ +#define MOTOR_MODEL_MASK 7 + +#define PWD_MIN 4 /* 最小长度 */ +#define PWD_MAX 8 /* 最大长度 */ + +#define PHONE_MAX 16 + +#define WM_SINGLE 0 +#define WM_TUTORIAL 1 +#define WM_WIRELESS 2 +#define WM_BATCH 3 +#define WM_ORIGIN 4 +#define WM_SETTING 5 +#define WM_COMPENSATION 6 +#define WM_SETUP 7 +#define WM_SYSTEM 8 +#define WM_INFO 9 +#define WM_DEALER 10 +#define WM_CUSTOM 11 +#define WM_FACTORY 12 +#define WM_TESTER 13 +#define WM_MAX 14 +#define WM_DEFAULT WM_SINGLE +#define WM_NONE -1 +#define WM_PREV -2 + +#define STA_NONE 0 +#define STA_TESTING 1 +#define STA_SUCCESS 2 +#define STA_FAIL -1 +#define TEST_IDX_X0 0 +#define TEST_IDX_X1 1 +#define TEST_IDX_X2 2 +#define TEST_IDX_X3 3 +#define TEST_IDX_X10 4 +#define TEST_IDX_X11 5 +#define TEST_IDX_X12 6 +#define TEST_IDX_X13 7 +#define TEST_IDX_X14 8 +#define TEST_IDX_X15 9 +#define TEST_IDX_Y0 10 +#define TEST_IDX_Y1 11 +#define TEST_IDX_Y2 12 +#define TEST_IDX_Y3 13 +#define TEST_IDX_Y10 14 +#define TEST_IDX_Y11 15 +#define TEST_IDX_Y12 16 +#define TEST_IDX_Y13 17 +#define TEST_IDX_PRINT 18 +#define TEST_IDX_RULE 19 +#define TEST_IDX_SERVO 20 +#define TEST_IDX_MOTOR 21 + +#define Y0 0 +#define Y1 1 +#define Y2 2 +#define Y3 3 +#define Y10 4 +#define Y11 5 +#define Y12 6 +#define Y13 7 +#define X0 0 +#define X1 1 +#define X2 2 +#define X3 3 +#define X10 8 +#define X11 9 +#define X12 10 +#define X13 11 +#define X14 12 +#define X15 13 + +#define KEY_X0 0 +#define KEY_X1 1 +#define KEY_X2 2 +#define KEY_X3 3 + +#define WARN_STOP 0 +#define WARN_MOTOR 1 +#define WARN_MCU 2 +#define WARN_COMM 3 + +#define PROC_NONE 0 +#define PROC_START 1 +#define PROC_NON_EXIST 2 +#define PROC_INVALID 3 +#define PROC_WRITE 4 +#define PROC_FINISH 5 + +#define IMG_BMP 0 +#define IMG_PNG 1 + +#define BTN_PREV 0 +#define BTN_NEXT 1 +#define BTN_DEL 2 +#define BTN_WLON 3 +#define BTN_PTON 4 +#define BTN_SYNC 5 +#define BTN_CUTTING 6 +#define BTN_MEASURE 7 + +#define BTN_CLR_CUR 0 +#define BTN_CLR_ALL 1 + +#define BTN_INC 0 +#define BTN_DEC 1 + +#define TA_HORIZONTAL 0 +#define TA_VERTICAL 1 +#define TA_MAX 2 +#define TA_MIN 3 +#define TA_SPEED_RUN 4 +#define TA_SPEED_GOHOME 5 +#define TA_SPEED_TIME 6 +#define TA_SPEED_CRAWL 7 +#define TA_NUM 8 +#define TA_DEN 9 +#define TA_YEAR 10 +#define TA_MONTH 11 +#define TA_DAY 12 +#define TA_HOUR 13 +#define TA_MINUTE 14 +#define TA_SECOND 15 +#define TA_PWD1 16 +#define TA_PWD2 17 +#define TA_PWD3 18 +#define TA_PHONE 19 +#define TA_PWD4 20 +#define TA_CRAWL_S1 21 +#define TA_CRAWL_S2 22 +#define TA_INC 23 +#define TA_DEC 24 + +#define INVALID_PLUSE_COUNT 0x80000000 +#define WRI_NONE 0 +#define WRI_FORWARD 1 +#define WRI_REVERSE 2 + +#define STORE_RATE 1000.0f /* 以微米为储存单位 */ +#define SPEED_RUN_MIN 10 +#define SPEED_RUN_MAX 250 +#define DEFAULT_SPEED_RUN 200 +#define SPEED_TIME_MIN 1 +#define SPEED_TIME_MAX 10 +#define DEFAULT_SPEED_TIME 5 +#define SPEED_GOHOME_MIN 1 +#define SPEED_GOHOME_MAX 10 +#define DEFAULT_SPEED_GOHOME 7 +#define SPEED_CRAWL_MIN 1 +#define SPEED_CRAWL_MAX 10 +#define DEFAULT_SPEED_CRAWL 2 +#define CRAWL_S1_MIN 1 +#define CRAWL_S1_MAX 16 +#define DEFAULT_CRAWL_S1 16 +#define CRAWL_S2_MIN 1 +#define CRAWL_S2_MAX 256 +#define DEFAULT_CRAWL_S2 2 +#define DEFAULT_NUM 10 +#define DEFAULT_DEN 1 +#define COMP_MAX 10 /* 最多补偿点上限 */ +#define TEST_MIN 0 /* 测试最小长度 */ +#define TEST_MAX 10000 /* 测试最大长度 */ +#define CRAWL_S1 (3 * STORE_RATE) /* 3mm */ +#define CRAWL_S2 (30 * STORE_RATE) /* 30mm */ + +#define BATCH_MAX 96 +#define BATCH_ROWS 3 +#define BATCH_COLS 4 +#define BATCH_PER_PAGE (BATCH_COLS * BATCH_ROWS) +#define BATCH_PAGE (BATCH_MAX / BATCH_PER_PAGE) + +#define WIRELESS_MAX 48 +#define WIRELESS_ROWS 4 +#define WIRELESS_COLS 4 +#define WIRELESS_PER_PAGE (WIRELESS_COLS * WIRELESS_ROWS) +#define WIRELESS_PAGE (WIRELESS_MAX / WIRELESS_PER_PAGE) + +#define CUSTOM_MAX 10 +#define CUSTOM_ROWS 5 +#define CUSTOM_COLS 2 +#define CUSTOM_VALUE_MAX 100 + +#define PARAMS_MAGIC 0x53549901 /* 设置参数 */ +#define PARAMS_ADDR 0 + +#define COMP_MAGIC 0x53549902 /* 多段补偿数据 */ +#define COMP_ADDR 0x100 + +#define CUSTOM_MAGIC 0x53549903 /* 用户自定义分段补偿数据 */ +#define CUSTOM_ADDR 0x200 + +#define WIRELESS_MAGIC 0x53549904 /* 无线模式数据 */ +#define WIRELESS_ADDR 0x300 +#define WIRELESS_SIZE_MAX 256 /* 最大储存空间(字节) */ + +#define BATCH_MAGIC 0x53549905 /* 联动模式数据 */ +#define BATCH_ADDR 0x400 +#define BATCH_SIZE_MAX 512 /* 最大储存空间(字节) */ + +#define SINGLE_MAGIC 0x53549906 /* 单动模式数据 */ +#define SINGLE_ADDR 0x600 +#define SINGLE_SIZE_MAX 256 /* 最大储存空间(字节) */ + +#define MAX_PATH 260 + +/* similar linux define */ +#if defined(__GNUC__) + #define likely(x) __builtin_expect(!!(x), 1) + #define unlikely(x) __builtin_expect(!!(x), 0) + + #define typecheck(type,x) \ + ({ type __dummy; \ + typeof(x) __dummy2; \ + (void)(&__dummy == &__dummy2); \ + 1; \ + }) + + #define time_after(a,b) \ + (typecheck(u32, a) && \ + typecheck(u32, b) && \ + ((long)(b) - (long)(a) < 0)) + #define time_before(a,b) time_after(b,a) +#else + #define likely(x) x + #define unlikely(x) x + + #define time_after(a,b) ((long)(b) - (long)(a) < 0) + #define time_before(a,b) time_after(b,a) +#endif +#endif diff --git a/common/MK_mye8m.c b/common/MK_mye8m.c new file mode 100644 index 0000000..9502d2d --- /dev/null +++ b/common/MK_mye8m.c @@ -0,0 +1,356 @@ +/* + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are + * met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * * Redistributions in binary form must reproduce the above + * copyright notice, this list of conditions and the following disclaimer + * in the documentation and/or other materials provided with the + * distribution. + * * Neither the name of the nor the names of its + * contributors may be used to endorse or promote products derived from + * this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT + * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR + * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT + * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT + * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, + * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY + * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE + * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + * + */ + +#include +#include +#include +#include +#include +#include +#include +#include +#include "lvgl/lvgl.h" +#include "MK_macro.h" +#include "MK_types.h" +#include "MK_func.h" + +/* Serial communicate (9600,8,N,1) */ +#if defined(ZZF_DEBUG) + #define PRINTER_PORT "/dev/ttyS2" +#else + #define PRINTER_PORT "/dev/ttyS1" +#endif + +static s32 print_device = -1; +static const u8 mye8m_start[] = { + 0x1b, 0x40, // 清缓存 + 0x1a, 0x5b, 0x01, // 页开始 + 0x00, 0x00, 0x00, 0x00, // X, Y位置 + 0x80, 0x01, 0xa0, 0x00, // 宽, 高 + 0x00, // 90度旋转关 +}; + +static const u8 mye8m_end[] = { + 0x1a, 0x5d, 0x00, // 页结束 + 0x1a, 0x4f, 0x00, // 输出到打印机 +}; + +static const u8 row_3_1[] = { + 0x1a, 0x54, 0x01, 0x80, 0x01, 0x40, 0x00, 0x60, 0x00, 0x20, 0x22, +}; + +static const u8 row_3_2[] = { + 0x1a, 0x54, 0x01, 0x80, 0x01, 0x70, 0x00, 0x60, 0x00, 0x20, 0x22, +}; + +static const u8 row_3_3[] = { + 0x1a, 0x54, 0x01, 0x80, 0x01, 0xa0, 0x00, 0x60, 0x00, 0x20, 0x22, +}; + +static const u8 row_2_1[] = { + 0x1a, 0x54, 0x01, 0x80, 0x01, 0x50, 0x00, 0x60, 0x00, 0x20, 0x22, +}; + +static const u8 row_2_2[] = { + 0x1a, 0x54, 0x01, 0x80, 0x01, 0x90, 0x00, 0x60, 0x00, 0x20, 0x22, +}; + +static const u8 string_single[] = { + 0x1b, 0x40, // 清缓存 + 0x1b, 0x7b, 0x01, // 开启颠倒打印模式 + 0x1c, 0x26, // 设定中文模式 + 0x1b, 0x4a, 0x20, // 上边距32点 + 0x1b, 0x42, 0x02, // 左边距2个字符 + 0x1f, 0x53, 0x03, // 设置中文大小(48x48) + 0x1f, 0x52, 0x05, // 设置英文大小(24x48) +}; + +static const u8 string_blank_line_20px[] = { + 0x1b, 0x4a, 0x14, // 进纸20点 +}; + +static const u8 string_single_title[] = { + 0xd0, 0xcd, 0xb2, 0xc4, 0xb3, 0xa4, 0xb6, 0xc8, 0x28, 0x6d, 0x6d, 0x29, // 型材长度(mm) + 0x00, +}; + +static const u8 print_head[] = { + 0x1b, 0x40, // 清缓存 + 0x1b, 0x7b, 0x01, // 开启颠倒打印模式 + 0x1c, 0x26, // 设定中文模式 + 0x1b, 0x4a, 0x0d, // 上边距13点 + 0x1b, 0x42, 0x01, // 左边距1个字符 + 0x1f, 0x53, 0x03, // 设置中文大小(48x48) + 0x1f, 0x52, 0x05, // 设置英文大小(24x48) +}; + +static const u8 string_title[][8] = { + {0xba, 0xe1, 0xd1, 0xb9, 0xd2, 0xbb, 0x0a, 0x00}, // 横压一 + {0xba, 0xe1, 0xd1, 0xb9, 0xb6, 0xfe, 0x0a, 0x00}, // 横压二 + {0xca, 0xfa, 0xd1, 0xb9, 0xd2, 0xbb, 0x0a, 0x00}, // 竖压一 + {0xca, 0xfa, 0xd1, 0xb9, 0xb6, 0xfe, 0x0a, 0x00}, // 竖压二 +}; + +static const u8 string_no[] = { + 0xd0, 0xf2, 0xba, 0xc5, 0x3a, 0x20, // 序号: +}; + +static const u8 string_len[] = { + 0xb3, 0xa4, 0xb6, 0xc8, 0x3a, 0x20, // 长度: +}; + +static s32 open_comm(const char *port) +{ + struct termios option; + s32 handle; + + /* Open serial port */ + handle = open(PRINTER_PORT, O_RDWR | O_NOCTTY); + if (handle == -1) { + eprint("Can not open %s!\n", port); + return -1; + } + + /* set serial port parameter (B9600, 8 , N , 1) */ + tcgetattr(handle, &option); + cfmakeraw(&option); + if (cfsetispeed(&option, B115200) != 0) { + eprint("cfsetispeed fail\n"); + } + if (cfsetospeed(&option, B115200) != 0) { + eprint("cfsetospeed fail\n"); + } + tcsetattr(handle, TCSANOW, &option); + + return handle; +} + +static void close_comm(void) +{ + if (print_device != -1) { + close(print_device); + print_device = -1; + } +} + +static s32 transfer(const void *tx, s32 tx_len, void *rx, u32 rx_len) +{ + s32 remain; + s32 s; + u8 *p; + s32 status; + u32 timeout; + + /* flush data */ + tcflush(print_device, TCIOFLUSH); + + /* send data */ + if (write(print_device, tx, tx_len) < tx_len) { + eprint("Write to print_port fail.\n"); + return -1; + } + + /* no need receive */ + if (rx == NULL) { + return 0; + } + + /* receive data until enough or timeout */ + p = rx; + remain = rx_len; + timeout = get_current_time() + 500; + do { + usleep(1000); + + /* get serial port data length */ + status = 0; + if (ioctl(print_device, FIONREAD, &status) < 0) { + continue; + } + + /* read data if has data */ + if (status > 0) { + s = status > remain ? remain : status; + s = read(print_device, p, s); + p += s; + remain -= s; + } + + } while (remain > 0 && time_after(timeout, get_current_time())); + + /* not enough data */ + if (remain > 0) { + //dprint("receive fail, remain = %d\n", remain); + return -1; + } + + return 0; +} + +static s32 printer_setup(void) +{ + u8 tx[16] = {0}; + u8 rx[16] = {0}; + + /* 复位并进纸至切纸口 */ + tx[0] = 0x1b; + tx[1] = 0x40; + tx[2] = 0x1a; + tx[3] = 0x0c; + tx[4] = 0x00; + transfer(tx, 5, NULL, 0); + system_delay(200); + + /* 检测打印机是否有错误 */ + tx[0] = 0x10; + tx[1] = 0x04; + tx[2] = 0x03; + if (transfer(tx, 3, rx, 1) == 0) { + if ((rx[0] & ~0x12) == 0) { + return 0; + } + } + + return -1; +} + +s32 mye8m_init(void) +{ + print_device = open_comm(PRINTER_PORT); + if (print_device != -1) { + printer_setup(); + } + + return 0; +} + +void mye8m_deinit(void) +{ + close_comm(); +} + +void mye8m_action(s32 val) +{ + u8 buf[260]; + char *p; + s32 len; + + /* 装配打印指令 */ + memcpy(buf, mye8m_start, sizeof(mye8m_start)); // 打印开始 + p = (char *)buf + sizeof(mye8m_start); + memcpy(p, row_2_1, sizeof(row_2_1)); // 定位行1 + p += sizeof(row_2_1); + sprintf(p, "%.1f", val / STORE_RATE); + p += strlen(p) + 1; // 保留字符串结尾'\0' + memcpy(p, row_2_2, sizeof(row_2_2)); // 定位行2 + p += sizeof(row_2_2); + memcpy(p, string_single_title, sizeof(string_single_title)); // 标题 + p += sizeof(string_single_title); + memcpy(p, mye8m_end, sizeof(mye8m_end)); // 打印结束 + p += sizeof(mye8m_end); + len = (s32)(p - (char *)buf); + transfer(buf, len, NULL, 0); + + // test + print_hex("[single]print:", buf, len); +} + +void mye8m_action_with_group(s32 val, s32 group, s32 no) +{ + u8 buf[260]; + char *p; + s32 len; + + /* 装配打印指令 */ + no %= COUNTOF(string_title); + memcpy(buf, mye8m_start, sizeof(mye8m_start)); // 打印开始 + p = (char *)buf + sizeof(mye8m_start); + memcpy(p, row_3_1, sizeof(row_3_1)); // 定位行1 + p += sizeof(row_3_1); + memcpy(p, string_len, sizeof(string_len)); // 长度: + p += sizeof(string_len); + sprintf(p, "%.1f mm", val / STORE_RATE); + p += strlen(p) + 1; // 保留字符串结尾'\0' + memcpy(p, row_3_2, sizeof(row_3_2)); // 定位行2 + p += sizeof(row_3_2); + memcpy(p, string_no, sizeof(string_no)); // 序号: + p += sizeof(string_no); + if (no / 2) { + sprintf(p, "%d - (%d)", group, (no % 2) + 1); + } + else { + sprintf(p, "%d - %d", group, (no % 2) + 1); + } + p += strlen(p) + 1; // 保留字符串结尾'\0' + memcpy(p, row_3_3, sizeof(row_3_3)); // 定位行3 + p += sizeof(row_3_3); + memcpy(p, string_title[no], sizeof(string_title[0])); // 横压/竖压标题 + p += sizeof(string_title[0]); + memcpy(p, mye8m_end, sizeof(mye8m_end)); // 打印结束 + p += sizeof(mye8m_end); + len = (s32)(p - (char *)buf); + transfer(buf, len, NULL, 0); + + // test + print_hex("[wireless]print:", buf, len); +} + +void mye8m_action_with_no(s32 val, s32 no) +{ + u8 buf[260]; + char *p; + s32 len; + + /* 装配打印指令 */ + memcpy(buf, mye8m_start, sizeof(mye8m_start)); // 打印开始 + p = (char *)buf + sizeof(mye8m_start); + memcpy(p, row_3_1, sizeof(row_3_1)); // 定位行1 + p += sizeof(row_3_1); + memcpy(p, string_len, sizeof(string_len)); // 长度: + p += sizeof(string_len); + sprintf(p, "%.1f", val / STORE_RATE); + p += strlen(p) + 1; // 保留字符串结尾'\0' + memcpy(p, row_3_2, sizeof(row_3_2)); // 定位行2 + p += sizeof(row_3_2); + memcpy(p, string_no, sizeof(string_no)); // 序号: + p += sizeof(string_no); + sprintf(p, "%d", no + 1); + p += strlen(p) + 1; // 保留字符串结尾'\0' + memcpy(p, row_3_3, sizeof(row_3_3)); // 定位行3 + p += sizeof(row_3_3); + memcpy(p, string_single_title, sizeof(string_single_title)); // 标题 + p += sizeof(string_single_title); + memcpy(p, mye8m_end, sizeof(mye8m_end)); // 打印结束 + p += sizeof(mye8m_end); + len = (s32)(p - (char *)buf); + transfer(buf, len, NULL, 0); + + // test + print_hex("[batch]print:", buf, len); +} diff --git a/common/MK_printer.c b/common/MK_printer.c new file mode 100644 index 0000000..4935971 --- /dev/null +++ b/common/MK_printer.c @@ -0,0 +1,84 @@ +/* + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are + * met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * * Redistributions in binary form must reproduce the above + * copyright notice, this list of conditions and the following disclaimer + * in the documentation and/or other materials provided with the + * distribution. + * * Neither the name of the nor the names of its + * contributors may be used to endorse or promote products derived from + * this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT + * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR + * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT + * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT + * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, + * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY + * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE + * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + * + */ + +#include +#include +#include +#include +#include +#include +#include +#include +#include "lvgl/lvgl.h" +#include "MK_macro.h" +#include "MK_types.h" +#include "MK_func.h" + +static struct printer_driver printer_drv[] = { + { + mye8m_init, + mye8m_deinit, + mye8m_action, + mye8m_action_with_group, + mye8m_action_with_no, + }, + { + ep201t_init, + ep201t_deinit, + ep201t_action, + ep201t_action_with_group, + ep201t_action_with_no, + }, +}; +static s32 drv_index = 0; + +s32 printer_init(void) +{ + return printer_drv[drv_index].init(); +} + +void printer_deinit(void) +{ + printer_drv[drv_index].deinit(); +} + +void printer_action(s32 val) +{ + printer_drv[drv_index].action(val); +} + +void printer_action_with_group(s32 val, s32 group, s32 no) +{ + printer_drv[drv_index].action_with_group(val, group, no); +} + +void printer_action_with_no(s32 val, s32 no) +{ + printer_drv[drv_index].action_with_no(val, no); +} diff --git a/common/MK_style.c b/common/MK_style.c new file mode 100644 index 0000000..9d851aa --- /dev/null +++ b/common/MK_style.c @@ -0,0 +1,135 @@ +/* + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are + * met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * * Redistributions in binary form must reproduce the above + * copyright notice, this list of conditions and the following disclaimer + * in the documentation and/or other materials provided with the + * distribution. + * * Neither the name of the nor the names of its + * contributors may be used to endorse or promote products derived from + * this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT + * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR + * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT + * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT + * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, + * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY + * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE + * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + * + */ + +#include "lvgl/lvgl.h" +#include "MK_macro.h" +#include "MK_types.h" +#include "MK_func.h" + +static lv_style_t style_page; +static lv_style_t style_button; +static lv_style_t style_meter; +static lv_style_t style_input; +static lv_style_t style_input2; +static lv_style_t style_label; +static lv_style_t style_none; + +static lv_style_t *global_style[] = { + &style_page, + &style_meter, + &style_button, + &style_input, + &style_input2, + &style_label, + &style_none, +}; + +void project_style_init(void) +{ + lv_style_init(&style_page); + lv_style_set_radius(&style_page, 0); + lv_style_set_bg_opa(&style_page, LV_OPA_COVER); + lv_style_set_bg_color(&style_page, lv_color_white()); + lv_style_set_border_width(&style_page, 0); + lv_style_set_pad_top(&style_page, 0); + lv_style_set_pad_bottom(&style_page, 0); + lv_style_set_pad_left(&style_page, 0); + lv_style_set_pad_right(&style_page, 0); + lv_style_set_pad_row(&style_page, 0); + lv_style_set_text_color(&style_page, lv_color_black()); + + lv_style_init(&style_meter); + lv_style_set_radius(&style_meter, 15); + lv_style_set_bg_opa(&style_meter, LV_OPA_COVER); + lv_style_set_bg_color(&style_meter, lv_color_hex(0xfafafa)); + lv_style_set_border_width(&style_meter, 1); + lv_style_set_pad_top(&style_meter, 0); + lv_style_set_pad_bottom(&style_meter, 0); + lv_style_set_pad_left(&style_meter, 0); + lv_style_set_pad_right(&style_meter, 0); + lv_style_set_pad_row(&style_meter, 0); + lv_style_set_text_color(&style_meter, lv_color_hex(0x888888)); + + lv_style_init(&style_button); + lv_style_set_radius(&style_button, 5); + lv_style_set_border_width(&style_button, 1); + lv_style_set_border_color(&style_button, lv_color_hex(0)); + lv_style_set_text_color(&style_button, lv_color_hex(0)); + lv_style_set_text_font(&style_button, &sans_m_24); + lv_style_set_bg_color(&style_button, lv_color_white()); + lv_style_set_shadow_width(&style_button, 0); + lv_style_set_pad_left(&style_button, 0); + lv_style_set_pad_right(&style_button, 0); +// lv_style_set_shadow_color(&style_button, lv_color_hex(0xc8cbd8)); +// lv_style_set_shadow_color(&style_button, lv_color_hex(0xc1c4d4)); + + /* texteara输入风格 */ + lv_style_init(&style_input); + lv_style_set_radius(&style_input, 0); + lv_style_set_border_width(&style_input, 1); + lv_style_set_text_color(&style_input, lv_color_hex(0)); + lv_style_set_text_font(&style_input, &sans_m_24); + lv_style_set_text_align(&style_input, LV_TEXT_ALIGN_CENTER); + lv_style_set_pad_top(&style_input, 10); + lv_style_set_pad_bottom(&style_input, 0); + lv_style_set_pad_left(&style_input, 0); + lv_style_set_pad_right(&style_input, 0); + + /* label作为输入框时风格 */ + lv_style_init(&style_input2); + lv_style_set_bg_opa(&style_input2, LV_OPA_COVER); + lv_style_set_bg_color(&style_input2, lv_color_hex(0xffffff)); + lv_style_set_text_font(&style_input2, &sans_m_24); + lv_style_set_text_align(&style_input2, LV_TEXT_ALIGN_CENTER); + lv_style_set_pad_top(&style_input2, 10); + + lv_style_init(&style_label); + lv_style_set_text_font(&style_label, &sans_m_24); + lv_style_set_text_color(&style_label, lv_color_hex(0xd0d0d0)); + + lv_style_init(&style_none); + lv_style_set_bg_opa(&style_none, LV_OPA_TRANSP); + lv_style_set_border_width(&style_none, 0); + lv_style_set_pad_top(&style_none, 0); + lv_style_set_pad_bottom(&style_none, 0); + lv_style_set_pad_left(&style_none, 0); + lv_style_set_pad_right(&style_none, 0); + lv_style_set_pad_row(&style_none, 0); +} + +lv_style_t *get_project_style(u32 style_id) +{ + if (style_id >= STYLE_MAX) { + style_id = STYLE_NONE; + } + + return global_style[style_id]; +} + + diff --git a/common/MK_sys.c b/common/MK_sys.c new file mode 100644 index 0000000..e1531ee --- /dev/null +++ b/common/MK_sys.c @@ -0,0 +1,86 @@ +/* + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are + * met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * * Redistributions in binary form must reproduce the above + * copyright notice, this list of conditions and the following disclaimer + * in the documentation and/or other materials provided with the + * distribution. + * * Neither the name of the nor the names of its + * contributors may be used to endorse or promote products derived from + * this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT + * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR + * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT + * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT + * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, + * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY + * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE + * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + * + */ + +#include +#include +#include +#include "lvgl/lvgl.h" +#include "MK_macro.h" +#include "MK_types.h" + +/* Local global function */ +u32 get_current_time(void) +{ + struct timeval tv; + + gettimeofday(&tv, NULL); + return tv.tv_sec * 1000 + tv.tv_usec / 1000; +} + +u32 get_current_second(void) +{ + struct timeval tv; + + gettimeofday(&tv, NULL); + return tv.tv_sec; +} + +u32 get_absolute_second(void) +{ + return time(NULL); +} + +void system_delay(s32 ms) +{ +#if 0 + while (ms-- > 0) { + usleep(1000); + } +#else + struct timeval delay; + + delay.tv_sec = ms / 1000; + delay.tv_usec = (ms % 1000) * 1000; + select(0, NULL, NULL, NULL, &delay); +#endif +} + +u16 get_hour_min(void) +{ + time_t now; + struct tm *tm_now; + u16 t; + + time(&now); + tm_now = localtime(&now); + t = tm_now->tm_hour << 8 | tm_now->tm_min; + + return t; +} + diff --git a/common/MK_types.h b/common/MK_types.h new file mode 100644 index 0000000..22ff080 --- /dev/null +++ b/common/MK_types.h @@ -0,0 +1,392 @@ +#ifndef MK_TYPES_H +#define MK_TYPES_H + +#include +#include +#include "lvgl/lvgl.h" + +typedef unsigned long long u64; /* 64-bit 无符号整形 */ +typedef unsigned int u32; /* 32-bit 无符号整形 */ +typedef unsigned short u16; /* 16-bit 无符号整形 */ +typedef unsigned char u8; /* 8-bit 无符号整形 */ + +typedef signed long long s64; /* 64-bit 有符号整形 */ +typedef signed int s32; /* 32-bit 有符号整形 */ +typedef signed short s16; /* 16-bit 有符号整形 */ +typedef signed char s8; /* 8-bit 有符号整形 */ +typedef signed int BOOL; + +typedef float f32; /* 32-bit 浮点类型 */ +typedef double f64; /* 64-bit 浮点类型 */ + +/* style id define */ +enum { + STYLE_PAGE = 0, + STYLE_METER, + STYLE_BUTTON, + STYLE_INPUT, + STYLE_INPUT2, + STYLE_LABEL, + + STYLE_NONE, + STYLE_MAX, +}; + +typedef enum TEXT_ID { + TID_inching = 0, + TID_tip, + TID_min, + TID_max, + TID_origin, + TID_tutorial, + TID_wireless, + TID_batch, + TID_print_sw, + TID_print, + TID_gohome, + TID_start, + TID_stop, + TID_adjust, + TID_curpos, + TID_target_size, + TID_valid_min, + TID_valid_max, + TID_origin_set, + TID_wireless_sel, + TID_wireless_id, + TID_confirm, + TID_back, + TID_prev, + TID_next, + TID_clear_cur, + TID_clear_all, + TID_clear, + TID_wireless_on, + TID_del, + TID_sync, + TID_cutting, + TID_measure, + TID_curpos1, + TID_horizontal, + TID_vertical, + TID_test_max, + TID_test_min, + TID_run_speed, + TID_gohome_speed, + TID_crawl_speed, + TID_time_speed, + TID_setting, + TID_no, + TID_row1, + TID_row2, + TID_col1, + TID_col2, + TID_granularity, + TID_begin, + TID_end, + TID_recalc, + TID_comp, + TID_comp_no, + TID_comp_pos, + TID_comp_len, + TID_comp_pulse, + TID_comp_add, + TID_comp_del, + TID_comp_enabled, + TID_comp_clear, + TID_comp_save, + TID_exit, + TID_no_var, + TID_setup_run, + TID_setup_comp, + TID_setup_sys, + TID_setup_info, + TID_date, + TID_time, + TID_pwd1, + TID_pwd2, + TID_pwd3, + TID_date_save, + TID_pwd_save, + TID_emergency, + TID_motor, + TID_production_date, + TID_purchase_date, + TID_phone, + TID_logo, + TID_date_phone, + TID_motor_params, + TID_pwd4, + TID_test, + TID_auto_test, + TID_custom, + TID_custom_save, + TID_test_run, + TID_mcu, + TID_wireless_sw, + TID_target_comp, + TID_diagonal, + TID_qrcode, + TID_comp_start, + TID_comp_end, + TID_comp_val, + TID_enable, + TID_mfg_date, + TID_pur_date, + TID_lang, + TID_group, + TID_print_sw2, +} TEXT_ID; + +/* structure define + */ +struct temp_transform { + s32 temp; + s32 registor; +}; + +struct error_handle { + s32 valid; + u32 timer; +}; + +struct detect_timer { + s32 alive; + s32 enter_detect; + u32 stay_time; + s32 leave_detect; + u32 leave_time; +}; + +struct adjustment { + lv_obj_t *arc; + lv_obj_t *number; + lv_obj_t *symbol; + lv_obj_t *name; + s32 channel; + s32 value; + s32 enable; +}; + +struct coord_x1 { + s16 x0; + s16 y0; +}; + +struct coord_x3 { + s16 x0; + s16 y0; + s16 x1; + s16 y1; + s16 x2; + s16 y2; +}; + +struct rect_x1 { + s16 x; + s16 y; + s16 w; + s16 h; +}; + +struct custom_data { + s32 count; + s32 enabled; + struct { + s32 lower; + s32 upper; + s32 value; + } range[CUSTOM_MAX]; +}; + +struct custom_storage_data { + u32 magic; + struct custom_data data; + u32 crc; +}; + +struct wireless_storage_data { + u32 magic; + s32 horizontal; /* 横压加减尺 */ + s32 vertical; /* 竖压加减尺 */ + s32 data[WIRELESS_MAX]; + u32 crc; +}; + +struct batch_storage_data { + u32 magic; + s32 data[BATCH_MAX]; + u32 crc; +}; + +struct single_storage_data { + u32 magic; + s32 data[6]; + u32 crc; +}; + +struct trans_rate { + s32 num; + s32 den; +}; + +struct comp_data { + s32 count; + s32 enabled; + s32 offset; /* 用户定义原点位置 */ + struct { + s32 pos; /* 补偿点位置 */ + s32 pulse; /* 补偿点对应脉冲数 */ + } origin[COMP_MAX]; + struct trans_rate trans[COMP_MAX]; +}; + +struct comp_storage_data { + u32 magic; + struct comp_data data; + u32 crc; +}; + +struct params_data { + s32 language; + s32 motor_type; // 电机类型(绝对值伺服或步进) + s32 motor_dir; // 电机方向(左移/右移为正模式) + s32 motor_model; // 电机型号 + s32 wireless_module; + s32 wireless_id; + s32 wireless_params; + s32 diagonal; + time_t production_date; + time_t purchase_date; + char phone[PHONE_MAX]; + char passwd[LEVEL_MAX][PWD_MAX + 4]; + s32 max; // 最大切割长度 + s32 test_max; // 测试时最大长度,调机时使用 + s32 test_min; // 测试时最小长度,调机时使用 + s32 origin; + s32 speed_run; + s32 speed_gohome; + s32 speed_crawl; + s32 speed_time; + s32 granularity; /* 粒度,每脉冲对应长度 */ + s16 crawl_s1; /* 爬行正向距离 */ + s16 crawl_s2; /* 爬行回程距离 */ + struct trans_rate pulse_rate; /* 脉冲<->长度对应关系 */ + s32 auto_start; /* 输入长度确定后自动启动运行 */ +}; + +struct params_storage_data { + u32 magic; + struct params_data data; + u32 crc; +}; + +struct runtime_data { + s32 origin; + s32 curpos; + s32 min; + s32 max; + s32 fixed; + s32 inching; + s32 inching2; + s32 horizontal; + s32 vertical; + s32 target; + s32 index; // 记录对应target时的索引,打印时需要 + s32 last_target; + s32 test_mode; + s32 sw_print; + s32 sw_wireless; + s32 measure_dir; + s32 cutting_dir; + s32 measure_pos; + s32 wireless_data[WIRELESS_MAX]; + s32 batch_data[BATCH_MAX]; + s32 target_comp; + s32 wireless_changed; + s32 origin_valid; + s32 origin_abs; + s32 factory_test; + struct trans_rate pulse_rate; /* 脉冲<->长度对应关系 */ + struct comp_data comp; +}; + +struct delay_update { + s32 changed; + u32 changed_time; +}; + +struct wm_info { + s32 id; + const char *title[LANG_MAX]; + const char *icon[2]; + const char *focus; + struct rect_x1 rect; + s16 title_ofs; + s16 icon_ofs; + lv_obj_t *handle; + lv_obj_t *lbl_caption; + s32 checked; + + s32 (*open)(void *args); + void (*close)(); + void (*update)(); +}; + +struct batch_info { + s32 index; + s32 created; + s32 selected; + s32 used; + s32 dirty; + s32 target; + lv_obj_t *obj[3]; + struct coord_x1 coord; +}; + +struct wireless_info { + s32 index; + char no[8]; + s32 created; + s32 selected; + s32 used; + s32 dirty; + s32 measure; + s32 target; + lv_obj_t *obj[3]; + struct coord_x1 coord; +}; + +struct custom_info { + s32 index; + lv_obj_t *obj[3]; + struct coord_x1 coord; +}; + +struct ime { + u32 index; + char buffer[16]; +}; + +struct ime_button { + const char *caption[LANG_MAX]; + struct rect_x1 rect; +}; + +struct ime_cb { + s32 pwd_mode; + s32 (*verify)(const char *, void *); + void (*update)(const char *, void *); + void *user_data; + void (*exit)(); +}; + +struct printer_driver { + s32 (*init)(); + void (*deinit)(); + void (*action)(s32 val); + void (*action_with_group)(s32 val, s32 group, s32 no); + void (*action_with_no)(s32 val, s32 no); +}; + +#endif diff --git a/common/board.c b/common/board.c new file mode 100644 index 0000000..e46c6d7 --- /dev/null +++ b/common/board.c @@ -0,0 +1,705 @@ +/* + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are + * met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * * Redistributions in binary form must reproduce the above + * copyright notice, this list of conditions and the following disclaimer + * in the documentation and/or other materials provided with the + * distribution. + * * Neither the name of the nor the names of its + * contributors may be used to endorse or promote products derived from + * this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT + * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR + * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT + * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT + * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, + * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY + * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE + * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + * + */ + +#include +#include +#include +#include +#include +#include +#include +#include "MK_macro.h" +#include "MK_types.h" +#include "MK_func.h" + +/* Serial communicate (230400,8,N,1) */ +#define H2B_PORT "/dev/ttyS0" + +#define H2B_TX_SIZE 22 +#define H2B_TH1 0x55 +#define H2B_TH2 0xaa +#define H2B_CMD_COMM 0xaa +#define H2B_CMD_VER 0xb1 +#define H2B_CMD_COMM_RH 0x99 + +#define H2B_RX_SIZE 21 +#define H2B_RH1 0x66 +#define H2B_RH2 0x99 + +#define COMM_INTERVAL 20 /* 通讯间隔(ms) */ +#define ERR_COUNTER_MAX 20 /* 100 * 10ms */ + +/* Controller define */ +static s32 thread_exit = 0; +static s32 h2b_error_counter = 0; +//static s32 running_status = 0; + +static pthread_mutex_t mutex = PTHREAD_MUTEX_INITIALIZER; +static pthread_cond_t cond = PTHREAD_COND_INITIALIZER; + +static s32 Y[8] = {0}; +static s32 motor_opened = 0; +static s32 go_zero = 0; +static s32 zero_action = 0; +static s32 target_pulse_count = 0; +//static s32 remote_sw_arrival = 0; +static s32 zero_arrival = 0; +static s32 motor_running = 0; +static s32 wriggle; + +static s32 Xinput = 0; +static s32 current_pulse_count; +static s32 measure_data; +static s32 measure_data_raw; +static s32 measure_last; +static u32 Xkey[4]; +static s32 Xkpress[4]; +static s32 mcu_error; +static s32 meu_error_clear; +static s32 mcu_version; +static s32 mcu_version_test; +static s32 comm_started; + +/* local function */ +static s32 transform_data(const u8 *data) +{ + s32 val = 0; +// s32 sign; + + memcpy(&val, data, 4); +/* sign = BIT_VAL(val, 23); + val &= 0x7fffff; + if (sign) { + val = 0 - val; + }*/ + + return val; +} + +static void transform_key(u8 data) +{ + /* X0作为原点行程开关 */ + + /* X1输入作为'下一个'按键检测 */ + Xkey[KEY_X1] <<= 1; + Xkey[KEY_X1] |= BIT_VAL(data, 1); + if ((Xkey[KEY_X1] & 3) == 2) { + ATOMIC_SET(Xkpress[KEY_X1]); + } + else if (ATOMIC_GET(Xkpress[KEY_X1]) && Xkey[KEY_X1] == 0) { + ATOMIC_CLR(Xkpress[KEY_X1]); + } + + /* X2作为电机驱动错误提示 */ + + /* X3作为急停机械按钮 */ +} + +static void transform_measure(const u8 *data) +{ + s32 val; + f32 ratio = STORE_RATE; + + /* 磁栅尺原始数据 */ + val = (s32)data[2] << 24 | (s32)data[3] << 16 | (s32)data[0] << 8 | data[1]; + ATOMIC_STM(measure_data_raw, val); + + /* 判断是否新数据 */ + if (val > 0 && (measure_last == 0 || val != measure_last)) { + switch (BITS_VAL(data[4], 3, 3)) { + case 0: /* mm */ + case 3: + switch (BITS_VAL(data[4], 6, 2)) { + case 0: + ratio *= 1.0f; + break; + + case 1: + ratio *= 0.1f; + break; + + case 2: + ratio *= 0.05f; + break; + + case 3: + ratio *= 0.01f; + break; + + default: + ratio *= 1.0f; + break; + } + break; + + case 1: /* inch */ + case 4: + ratio *= 25.4 * 0.001; + break; + + default: /* 角度或其他 */ + return; + } + + ATOMIC_STM(measure_data, val * ratio); + //dprint("measure value: %.2f\n", (val * ratio) / STORE_RATE); + } + + measure_last = val; +} + +static void transform_mcu_version_data(const u8 *data) +{ + s32 val; + + /* MCU版本数据 */ + val = (s32)data[0] << 24 | (s32)data[2] << 16 | (s32)data[3] << 8 | data[4]; + + ATOMIC_STM(mcu_version, val); +} + +/* global function */ +void motor_test_enable(s32 enable) +{ + if (enable) { + ATOMIC_SET(motor_opened); + } + else { + ATOMIC_CLR(motor_opened); + } +} + +s32 get_motor_test_enable(void) +{ + return ATOMIC_GET(motor_opened); +} + +void motor_terminate(void) +{ + ATOMIC_CLR(motor_opened); + ATOMIC_CLR(zero_arrival); +} + +void motor_reset(void) +{ + s32 motor_type = get_motor_type(); + if (motor_type == MOTOR_STEPPER) { + clear_last_target_position(); /* 消除分段补偿影响 */ + ATOMIC_CLR(target_pulse_count); + ATOMIC_SET(zero_action); + ATOMIC_STM(zero_action, 7); /* 发送3次回原标志 */ + ATOMIC_STM(wriggle, WRI_NONE); + if (!ATOMIC_GET(motor_opened)) { + ATOMIC_CLR(zero_arrival); + ATOMIC_SET(go_zero); + ATOMIC_SET(motor_opened); + } + } + else if (motor_type == MOTOR_SERVO) { + s32 pulse = 0; + if (get_motor_servo_origin(&pulse)) { + clear_last_target_position(); /* 消除分段补偿影响 */ + ATOMIC_STM(target_pulse_count, pulse); + ATOMIC_STM(wriggle, WRI_NONE); + if (!ATOMIC_GET(motor_opened)) { + ATOMIC_SET(motor_opened); + } + } + } +} + +s32 get_current_pulse_count(void) +{ + return ATOMIC_GET(current_pulse_count); +} + +void set_target_pulse_count(s32 count) +{ + ATOMIC_STM(target_pulse_count, count); + ATOMIC_SET(motor_opened); +} + +void set_wriggle_mode(s32 mode) +{ + ATOMIC_STM(wriggle, mode); + if (mode != WRI_NONE) { + ATOMIC_STM(target_pulse_count, INVALID_PLUSE_COUNT); + } + ATOMIC_SET(motor_opened); +} + +s32 get_gohome_status(void) +{ + s32 status = 0; + s32 temp; + + switch (get_motor_type()) { + case MOTOR_STEPPER: + status = ATOMIC_GET(zero_arrival); + break; + + case MOTOR_SERVO: + status = get_motor_servo_origin(&temp); + break; + + default: + break; + } + + return status; +} + +s32 check_keypress(s32 id) +{ + s32 ks = Xkpress[id]; + + ATOMIC_CLR(Xkpress[id]); + return ks; +} + +void buzz_alarm(void) +{ + pthread_cond_signal(&cond); +} + +s32 get_running_status(void) +{ + return ATOMIC_GET(motor_running); +} + +s32 get_measure_data(void) +{ + s32 val = ATOMIC_GET(measure_data); + ATOMIC_CLR(measure_data); + return val; +} + +s32 get_measure_data_raw(void) +{ + return ATOMIC_GET(measure_data_raw); +} + +s32 get_xinput_state(s32 pos) +{ + return (ATOMIC_GET(Xinput) >> pos) & 1; +} + +s32 get_mcu_error_status(void) +{ + return ATOMIC_GET(mcu_error); +} + +s32 get_motor_status(void) +{ +#if 0 + return ATOMIC_GET(motor_opened); +#else + if (ATOMIC_GET(comm_started) + && (ATOMIC_GET(h2b_error_counter) < ERR_COUNTER_MAX)) { + return 1; + } + + return 0; +#endif +} + +void set_output_state(s32 id, s32 state) +{ + if (state) { + ATOMIC_SET(Y[id]); + } + else { + ATOMIC_CLR(Y[id]); + } +} + +s32 get_output_state(s32 id) +{ + + return ATOMIC_GET(Y[id]); +} + +s32 get_input_state(s32 id) +{ + return get_xinput_state(id); +} + +s32 get_mcu_version(void) +{ + return ATOMIC_GET(mcu_version); +} + +/* Controller function */ +static s32 open_comm(const char *port) +{ + struct termios option; + s32 handle; + + /* Open serial port */ + handle = open(port, O_RDWR | O_NOCTTY); + if (handle == -1) { + eprint("Can not open %s!\n", port); + return -1; + } + + /* set serial port parameter (B230400, 8 , N , 1) */ + tcgetattr(handle, &option); + cfmakeraw(&option); + if (cfsetispeed(&option, B230400) != 0) { + eprint("cfsetispeed fail\n"); + } + if (cfsetospeed(&option, B230400) != 0) { + eprint("cfsetospeed fail\n"); + } + tcsetattr(handle, TCSANOW, &option); + + return handle; +} + +static void close_comm(s32 handle) +{ + close(handle); +} + +static s32 transfer(s32 handle, const void *tx, s32 tx_len, void *rx, + u32 rx_len) +{ + s32 remain; + s32 s; + u8 *p; + s32 status; + u32 timeout; + + /* flush data */ + tcflush(handle, TCIOFLUSH); + + /* send data */ + if (write(handle, tx, tx_len) < tx_len) { + eprint("Write to comm_port fail.\n"); + return -1; + } + + /* receive data until enough or timeout */ + p = rx; + remain = rx_len; + timeout = get_current_time() + 50; + do { + usleep(1000); + + /* get serial port data length */ + status = 0; + if (ioctl(handle, FIONREAD, &status) < 0) { + continue; + } + + /* read data if has data */ + if (status > 0) { + s = status > remain ? remain : status; + s = read(handle, p, s); + p += s; + remain -= s; + } + + } while (remain > 0 && time_after(timeout, get_current_time())); + + /* not enough data */ + if (remain > 0) { + //dprint("receive fail, remain = %d\n", remain); + return -1; + } + + return 0; +} + +static u8 calc_cks(const u8 *data, s32 len) +{ + u8 cks = 0x33; + + while (len-- > 0) { + cks += *data++; + } + + return cks; +} + +static s32 update_h2b_data(s32 handle) +{ + u8 tx[H2B_TX_SIZE] = {0}; + u8 rx[H2B_RX_SIZE] = {0}; + s32 val; + u8 cks; + + /* 准备发送数据 */ + tx[0] = H2B_TH1; + if (mcu_version_test > 0) { + tx[1] = H2B_CMD_VER; + mcu_version_test--; + } + else { + tx[1] = H2B_CMD_COMM; + } + + tx[2] = BIT2BYTE(ATOMIC_GET(go_zero), 0); /* 回原点方式 */ + tx[2] |= BIT2BYTE(get_remote_limit_switch(), 1); /* D0, 远端限位开关 */ + tx[2] |= BIT2BYTE(ATOMIC_GET(motor_opened), 2); /* 电机开关 */ + switch (ATOMIC_GET(wriggle)) { + case WRI_REVERSE: + tx[2] |= BIT(3); /* 反向蠕动 */ + break; + + case WRI_FORWARD: + tx[2] |= BIT(4); /* 正向蠕动 */ + break; + + default: + break; + } + if (ATOMIC_GET(zero_action)) { + tx[2] |= BIT(5); /* 执行回原动作 */ + } + if (ATOMIC_GET(meu_error_clear)) { + tx[2] |= BIT(7); + ATOMIC_CLR(meu_error_clear); + } + if (get_motor_type() == MOTOR_SERVO) { + tx[3] |= BIT(6); /* 伺服电机模式 */ + } + tx[3] |= get_motor_model(); /* 伺服控制器型号 */ + if (get_motor_dir() == MOTOR_RIGHT) { /* 定义电机正方向 */ + tx[3] |= BIT(5); + } + val = ATOMIC_GET(target_pulse_count); /* D2~D5, 绝对步数 */ + memcpy(&tx[4], &val, 4); + /* D6~D7, 保留 */ + tx[10] = get_running_speed(); /* D8, 运行速度 */ + tx[11] = get_rise_fall_time(); /* 上升下降时间D9.(3~0) */ + tx[11] |= get_gohome_speed() << 4; /* 回原速度D9.(7~4) */ + tx[12] = get_crawl_distance_s1(); /* 碰到开关向前距离D10.(3~0) */ + tx[12] |= get_crawl_speed() << 4; /* 爬行速度D10.(7~4) */ + /* D11, 保留 */ + tx[14] = get_crawl_distance_s2(); /* D12, 从原点到停止的距离(3cm) */ + tx[15] = BIT2BYTE(ATOMIC_GET(Y[0]), 0); /* D13, Y0 */ + tx[15] |= BIT2BYTE(ATOMIC_GET(Y[1]), 1); /* Y1 */ + tx[15] |= BIT2BYTE(ATOMIC_GET(Y[2]), 2); /* Y2 */ + tx[15] |= BIT2BYTE(ATOMIC_GET(Y[3]), 3); /* Y3 */ + tx[15] |= BIT2BYTE(ATOMIC_GET(Y[4]), 4); /* Y4 */ + tx[15] |= BIT2BYTE(ATOMIC_GET(Y[5]), 5); /* Y5 */ + tx[15] |= BIT2BYTE(ATOMIC_GET(Y[6]), 6); /* Y6 */ + tx[15] |= BIT2BYTE(ATOMIC_GET(Y[7]), 7); /* Y7 */ + /* D14, 保留 */ + tx[17] = get_wireless_changed(); /* D15, 磁栅尺站号 */ + tx[18] = get_wireless_params(); /* D16, 磁栅尺串口参数 */ + /* D17~D18, 保留 */ + + /* 工厂测试模式 */ + if (get_factory_test_mode()) { + tx[3] |= BIT(6); /* 强制伺服模式 */ + } + tx[21] = calc_cks(&tx[0], H2B_TX_SIZE - 1); /* 校验和 */ + +// print_hex("send:", tx, sizeof(tx)); + + /* 发送并接收 */ + if (transfer(handle, tx, H2B_TX_SIZE, rx, H2B_RX_SIZE) != 0) { +// dprint("transfer fail.\n"); + goto fail; + } + + /* 校验接收数据 */ + cks = calc_cks(&rx[0], H2B_RX_SIZE - 1); + if (cks != rx[H2B_RX_SIZE - 1]) { + eprint("Checksum fail [%x/%x]\n", cks, tx[H2B_RX_SIZE - 1]); + goto fail; + } + + /* 成功通讯标志 */ + ATOMIC_SET(comm_started); + + /* 电机运行检测 */ + if (BIT_VAL(rx[2], 3)) { + ATOMIC_SET(motor_running); + } + else { + ATOMIC_CLR(motor_running); + } + + /* 第一次或急停后回原检测 */ + if (ATOMIC_GET(go_zero) && !BIT_VAL(rx[2], 0)) { + ATOMIC_CLR(go_zero); + } + + /* 普通方式回原检测 */ + val = ATOMIC_GET(zero_action); + val >>= 1; + ATOMIC_STM(zero_action, val); + //if (ATOMIC_GET(zero_action) && !BIT_VAL(rx[2], 0)) { + // ATOMIC_CLR(zero_action); + //} + + /* 零点检测(仅电机驱动打开才检测) */ + if (ATOMIC_GET(motor_opened) && BIT_VAL(rx[2], 0)) { + ATOMIC_SET(zero_arrival); + } + + /* 当前绝对步数 */ + ATOMIC_STM(current_pulse_count, transform_data(&rx[4])); +// dprint("current_pulse_count: %d\n", current_pulse_count); + + /* MCU错误代码, =0表示无错误, 其他值表示错误发生 */ + ATOMIC_STM(mcu_error, rx[10]); +// if (mcu_error != 0) { +// dprint("mcu code: %02x\n", mcu_error); +// } + + /* 输入开关量 */ + ATOMIC_STM(Xinput, (s32)rx[12] << 8 | rx[11]); + transform_key(rx[11]); + + /* 检测返回指令, 确定数据类别 */ + if (rx[1] == H2B_CMD_COMM_RH) { + /* 磁栅尺数据 */ + transform_measure(&rx[13]); + } + else if (rx[1] == H2B_CMD_VER) { + /* MCU版本数据 */ + transform_mcu_version_data(&rx[13]); + + /* 获取到MCU版本数据后切换回普通数据通讯 */ + mcu_version_test = 0; + + //print_hex("MCU:", &rx[10], 6); + } + + //dprint("tx:\n %02x %02x %02x %02x %02x %02x %02x %02x\n", + // tx[0], tx[1], tx[2], tx[3], tx[4], tx[5], tx[6], tx[7]); + //dprint("rx:\n %02x %02x %02x %02x %02x %02x\n", + // rx[0], rx[1], rx[2], rx[3], rx[4], rx[5]); + + return 0; + +fail: + //dprint("tx:\n %02x %02x %02x %02x %02x %02x %02x %02x\n", + // tx[0], tx[1], tx[2], tx[3], tx[4], tx[5], tx[6], tx[7]); + return -1; +} + +static void *h2b_thread(void *arg) +{ + UNUSED(arg); + + s32 handle; + + /* 打开通讯端口 */ + handle = open_comm(H2B_PORT); + if (handle == -1) { + eprint("Open comm(%s) fail.\n", H2B_PORT); + goto finished; + } + + while (!ATOMIC_GET(thread_exit)) { + if (update_h2b_data(handle) != 0) { + ATOMIC_INC(h2b_error_counter); + } + else { + ATOMIC_CLR(h2b_error_counter); + } + + system_delay(COMM_INTERVAL); + } + + /* 关闭通讯端口 */ + close_comm(handle); + +finished: + return NULL; +} + +static void *buzz_thread(void *args) +{ + UNUSED(args); + + while (!ATOMIC_GET(thread_exit)) { + pthread_mutex_lock(&mutex); + pthread_cond_wait(&cond, &mutex); + pthread_mutex_unlock(&mutex); + + ATOMIC_SET(Y[0]); + system_delay(600); + ATOMIC_CLR(Y[0]); + system_delay(50); + + ATOMIC_SET(Y[0]); + system_delay(200); + ATOMIC_CLR(Y[0]); + system_delay(100); + } + + return NULL; +} + +s32 board_init(void) +{ + pthread_t thread_id; + + /* 本地变量初始 */ + memset(Xkey, 0, sizeof(Xkey)); + memset(Xkpress, 0, sizeof(Xkpress)); + wriggle = WRI_NONE; /* 蠕动标志 */ + mcu_error = 0; + mcu_version = 0; + mcu_version_test = 10; + ATOMIC_SET(meu_error_clear); + comm_started = 0; + + /* 创建电源板通讯线程 */ + if (pthread_create(&thread_id, NULL, &h2b_thread, NULL) != 0) { + eprint("Create 'PWM' thread fail.\n"); + goto err1; + } + pthread_detach(thread_id); + + /* 创建buzz处理线程 */ + if (pthread_create(&thread_id, NULL, &buzz_thread, NULL) != 0) { + eprint("Create 'BUZZ' thread fail.\n"); + goto err1; + } + pthread_detach(thread_id); + + /* Successful */ + return 0; + +err1: + return -1; +} + +void board_deinit(void) +{ + ATOMIC_SET(thread_exit); + sleep(1); +} diff --git a/common/elib_wrap.c b/common/elib_wrap.c new file mode 100644 index 0000000..c795a76 --- /dev/null +++ b/common/elib_wrap.c @@ -0,0 +1,130 @@ +/* + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are + * met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * * Redistributions in binary form must reproduce the above + * copyright notice, this list of conditions and the following disclaimer + * in the documentation and/or other materials provided with the + * distribution. + * * Neither the name of the nor the names of its + * contributors may be used to endorse or promote products derived from + * this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT + * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR + * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT + * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT + * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, + * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY + * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE + * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + * + */ + +#include +#include +#include +#include "MK_macro.h" +#include "MK_types.h" +#include "MK_func.h" + +#define ELIB_MAGIC 'Z' +#define ELIB_IOCTL_GETINFO _IOR(ELIB_MAGIC, 1, int) +#define ELIB_IOCTL_READ _IOR(ELIB_MAGIC, 2, int) +#define ELIB_IOCTL_WRITE _IOW(ELIB_MAGIC, 3, int) +#define ELIB_IOCTL_PROGRAM _IOW(ELIB_MAGIC, 4, int) +#define ELIB_IOCTL_BUZZ _IOW(ELIB_MAGIC, 5, int) +#define ELIB_IOCTL_SOUND _IOW(ELIB_MAGIC, 6, int) +#define ELIB_IOCTL_REBOOT _IOW(ELIB_MAGIC, 7, int) +#define ELIB_IOCTL_PIOE _IOW(ELIB_MAGIC, 8, int) + +#define AT_SECTOR_SIZE 128 + +#define ELIB_DEVICE "/dev/elib" + +static s32 elib_handle = -1; + +s32 elib_wrap_init(void) +{ + u32 val; + + elib_handle = open(ELIB_DEVICE, O_RDONLY); + if (elib_handle < 0) { + eprint("Open %s fail.\n", ELIB_DEVICE); + return -1; + } + + /* PE9 设置为低, PE10 设置为高(调整为低, 2025-8-20) */ + val = 9 << 8 | 0 << 0; + ioctl(elib_handle, ELIB_IOCTL_PIOE, &val); + val = 10 << 8 | 0 << 0; + ioctl(elib_handle, ELIB_IOCTL_PIOE, &val); + + return 0; +} + +void elib_wrap_deinit(void) +{ + if (elib_handle) { + close(elib_handle); + elib_handle = -1; + } +} + +void buzz(void) +{ + s32 buzz = 50 << 16 | 100; + if (ioctl(elib_handle, ELIB_IOCTL_BUZZ, &buzz) == -1) { + eprint("ELIB_IOCTL_BUZZ fail.\n"); + } +} + +void buzz_long(void) +{ + s32 buzz = 200 << 16 | 800; + if (ioctl(elib_handle, ELIB_IOCTL_BUZZ, &buzz) == -1) { + eprint("ELIB_IOCTL_BUZZ fail.\n"); + } +} + +void buzz_warning(void) +{ + s32 buzz = 40 << 16 | 50; + s32 i; + + for (i = 0; i < 10; ++i) { + ioctl(elib_handle, ELIB_IOCTL_BUZZ, &buzz); + } +} + +s32 sound_enable(bool enable) +{ + s32 v; + + v = enable ? 1 : 0; + if (ioctl(elib_handle, ELIB_IOCTL_SOUND, &v) == -1) { + eprint("ELIB_IOCTL_SOUND fail.\n"); + return -1; + } + + return 0; +} + +void system_reboot(void) +{ + eprint("The system will restart.\n"); + buzz_long(); + system_delay(400); + buzz_long(); + system_delay(400); + + ioctl(elib_handle, ELIB_IOCTL_REBOOT, NULL); +} + + diff --git a/common/stb_image.h b/common/stb_image.h new file mode 100644 index 0000000..5e807a0 --- /dev/null +++ b/common/stb_image.h @@ -0,0 +1,7987 @@ +/* stb_image - v2.28 - public domain image loader - http://nothings.org/stb + no warranty implied; use at your own risk + + Do this: + #define STB_IMAGE_IMPLEMENTATION + before you include this file in *one* C or C++ file to create the implementation. + + // i.e. it should look like this: + #include ... + #include ... + #include ... + #define STB_IMAGE_IMPLEMENTATION + #include "stb_image.h" + + You can #define STBI_ASSERT(x) before the #include to avoid using assert.h. + And #define STBI_MALLOC, STBI_REALLOC, and STBI_FREE to avoid using malloc,realloc,free + + + QUICK NOTES: + Primarily of interest to game developers and other people who can + avoid problematic images and only need the trivial interface + + JPEG baseline & progressive (12 bpc/arithmetic not supported, same as stock IJG lib) + PNG 1/2/4/8/16-bit-per-channel + + TGA (not sure what subset, if a subset) + BMP non-1bpp, non-RLE + PSD (composited view only, no extra channels, 8/16 bit-per-channel) + + GIF (*comp always reports as 4-channel) + HDR (radiance rgbE format) + PIC (Softimage PIC) + PNM (PPM and PGM binary only) + + Animated GIF still needs a proper API, but here's one way to do it: + http://gist.github.com/urraka/685d9a6340b26b830d49 + + - decode from memory or through FILE (define STBI_NO_STDIO to remove code) + - decode from arbitrary I/O callbacks + - SIMD acceleration on x86/x64 (SSE2) and ARM (NEON) + + Full documentation under "DOCUMENTATION" below. + + +LICENSE + + See end of file for license information. + +RECENT REVISION HISTORY: + + 2.28 (2023-01-29) many error fixes, security errors, just tons of stuff + 2.27 (2021-07-11) document stbi_info better, 16-bit PNM support, bug fixes + 2.26 (2020-07-13) many minor fixes + 2.25 (2020-02-02) fix warnings + 2.24 (2020-02-02) fix warnings; thread-local failure_reason and flip_vertically + 2.23 (2019-08-11) fix clang static analysis warning + 2.22 (2019-03-04) gif fixes, fix warnings + 2.21 (2019-02-25) fix typo in comment + 2.20 (2019-02-07) support utf8 filenames in Windows; fix warnings and platform ifdefs + 2.19 (2018-02-11) fix warning + 2.18 (2018-01-30) fix warnings + 2.17 (2018-01-29) bugfix, 1-bit BMP, 16-bitness query, fix warnings + 2.16 (2017-07-23) all functions have 16-bit variants; optimizations; bugfixes + 2.15 (2017-03-18) fix png-1,2,4; all Imagenet JPGs; no runtime SSE detection on GCC + 2.14 (2017-03-03) remove deprecated STBI_JPEG_OLD; fixes for Imagenet JPGs + 2.13 (2016-12-04) experimental 16-bit API, only for PNG so far; fixes + 2.12 (2016-04-02) fix typo in 2.11 PSD fix that caused crashes + 2.11 (2016-04-02) 16-bit PNGS; enable SSE2 in non-gcc x64 + RGB-format JPEG; remove white matting in PSD; + allocate large structures on the stack; + correct channel count for PNG & BMP + 2.10 (2016-01-22) avoid warning introduced in 2.09 + 2.09 (2016-01-16) 16-bit TGA; comments in PNM files; STBI_REALLOC_SIZED + + See end of file for full revision history. + + + ============================ Contributors ========================= + + Image formats Extensions, features + Sean Barrett (jpeg, png, bmp) Jetro Lauha (stbi_info) + Nicolas Schulz (hdr, psd) Martin "SpartanJ" Golini (stbi_info) + Jonathan Dummer (tga) James "moose2000" Brown (iPhone PNG) + Jean-Marc Lienher (gif) Ben "Disch" Wenger (io callbacks) + Tom Seddon (pic) Omar Cornut (1/2/4-bit PNG) + Thatcher Ulrich (psd) Nicolas Guillemot (vertical flip) + Ken Miller (pgm, ppm) Richard Mitton (16-bit PSD) + github:urraka (animated gif) Junggon Kim (PNM comments) + Christopher Forseth (animated gif) Daniel Gibson (16-bit TGA) + socks-the-fox (16-bit PNG) + Jeremy Sawicki (handle all ImageNet JPGs) + Optimizations & bugfixes Mikhail Morozov (1-bit BMP) + Fabian "ryg" Giesen Anael Seghezzi (is-16-bit query) + Arseny Kapoulkine Simon Breuss (16-bit PNM) + John-Mark Allen + Carmelo J Fdez-Aguera + + Bug & warning fixes + Marc LeBlanc David Woo Guillaume George Martins Mozeiko + Christpher Lloyd Jerry Jansson Joseph Thomson Blazej Dariusz Roszkowski + Phil Jordan Dave Moore Roy Eltham + Hayaki Saito Nathan Reed Won Chun + Luke Graham Johan Duparc Nick Verigakis the Horde3D community + Thomas Ruf Ronny Chevalier github:rlyeh + Janez Zemva John Bartholomew Michal Cichon github:romigrou + Jonathan Blow Ken Hamada Tero Hanninen github:svdijk + Eugene Golushkov Laurent Gomila Cort Stratton github:snagar + Aruelien Pocheville Sergio Gonzalez Thibault Reuille github:Zelex + Cass Everitt Ryamond Barbiero github:grim210 + Paul Du Bois Engin Manap Aldo Culquicondor github:sammyhw + Philipp Wiesemann Dale Weiler Oriol Ferrer Mesia github:phprus + Josh Tobin Neil Bickford Matthew Gregan github:poppolopoppo + Julian Raschke Gregory Mullen Christian Floisand github:darealshinji + Baldur Karlsson Kevin Schmidt JR Smith github:Michaelangel007 + Brad Weinberger Matvey Cherevko github:mosra + Luca Sas Alexander Veselov Zack Middleton [reserved] + Ryan C. Gordon [reserved] [reserved] + DO NOT ADD YOUR NAME HERE + + Jacko Dirks + + To add your name to the credits, pick a random blank space in the middle and fill it. + 80% of merge conflicts on stb PRs are due to people adding their name at the end + of the credits. +*/ + +#ifndef STBI_INCLUDE_STB_IMAGE_H +#define STBI_INCLUDE_STB_IMAGE_H + +// DOCUMENTATION +// +// Limitations: +// - no 12-bit-per-channel JPEG +// - no JPEGs with arithmetic coding +// - GIF always returns *comp=4 +// +// Basic usage (see HDR discussion below for HDR usage): +// int x,y,n; +// unsigned char *data = stbi_load(filename, &x, &y, &n, 0); +// // ... process data if not NULL ... +// // ... x = width, y = height, n = # 8-bit components per pixel ... +// // ... replace '0' with '1'..'4' to force that many components per pixel +// // ... but 'n' will always be the number that it would have been if you said 0 +// stbi_image_free(data); +// +// Standard parameters: +// int *x -- outputs image width in pixels +// int *y -- outputs image height in pixels +// int *channels_in_file -- outputs # of image components in image file +// int desired_channels -- if non-zero, # of image components requested in result +// +// The return value from an image loader is an 'unsigned char *' which points +// to the pixel data, or NULL on an allocation failure or if the image is +// corrupt or invalid. The pixel data consists of *y scanlines of *x pixels, +// with each pixel consisting of N interleaved 8-bit components; the first +// pixel pointed to is top-left-most in the image. There is no padding between +// image scanlines or between pixels, regardless of format. The number of +// components N is 'desired_channels' if desired_channels is non-zero, or +// *channels_in_file otherwise. If desired_channels is non-zero, +// *channels_in_file has the number of components that _would_ have been +// output otherwise. E.g. if you set desired_channels to 4, you will always +// get RGBA output, but you can check *channels_in_file to see if it's trivially +// opaque because e.g. there were only 3 channels in the source image. +// +// An output image with N components has the following components interleaved +// in this order in each pixel: +// +// N=#comp components +// 1 grey +// 2 grey, alpha +// 3 red, green, blue +// 4 red, green, blue, alpha +// +// If image loading fails for any reason, the return value will be NULL, +// and *x, *y, *channels_in_file will be unchanged. The function +// stbi_failure_reason() can be queried for an extremely brief, end-user +// unfriendly explanation of why the load failed. Define STBI_NO_FAILURE_STRINGS +// to avoid compiling these strings at all, and STBI_FAILURE_USERMSG to get slightly +// more user-friendly ones. +// +// Paletted PNG, BMP, GIF, and PIC images are automatically depalettized. +// +// To query the width, height and component count of an image without having to +// decode the full file, you can use the stbi_info family of functions: +// +// int x,y,n,ok; +// ok = stbi_info(filename, &x, &y, &n); +// // returns ok=1 and sets x, y, n if image is a supported format, +// // 0 otherwise. +// +// Note that stb_image pervasively uses ints in its public API for sizes, +// including sizes of memory buffers. This is now part of the API and thus +// hard to change without causing breakage. As a result, the various image +// loaders all have certain limits on image size; these differ somewhat +// by format but generally boil down to either just under 2GB or just under +// 1GB. When the decoded image would be larger than this, stb_image decoding +// will fail. +// +// Additionally, stb_image will reject image files that have any of their +// dimensions set to a larger value than the configurable STBI_MAX_DIMENSIONS, +// which defaults to 2**24 = 16777216 pixels. Due to the above memory limit, +// the only way to have an image with such dimensions load correctly +// is for it to have a rather extreme aspect ratio. Either way, the +// assumption here is that such larger images are likely to be malformed +// or malicious. If you do need to load an image with individual dimensions +// larger than that, and it still fits in the overall size limit, you can +// #define STBI_MAX_DIMENSIONS on your own to be something larger. +// +// =========================================================================== +// +// UNICODE: +// +// If compiling for Windows and you wish to use Unicode filenames, compile +// with +// #define STBI_WINDOWS_UTF8 +// and pass utf8-encoded filenames. Call stbi_convert_wchar_to_utf8 to convert +// Windows wchar_t filenames to utf8. +// +// =========================================================================== +// +// Philosophy +// +// stb libraries are designed with the following priorities: +// +// 1. easy to use +// 2. easy to maintain +// 3. good performance +// +// Sometimes I let "good performance" creep up in priority over "easy to maintain", +// and for best performance I may provide less-easy-to-use APIs that give higher +// performance, in addition to the easy-to-use ones. Nevertheless, it's important +// to keep in mind that from the standpoint of you, a client of this library, +// all you care about is #1 and #3, and stb libraries DO NOT emphasize #3 above all. +// +// Some secondary priorities arise directly from the first two, some of which +// provide more explicit reasons why performance can't be emphasized. +// +// - Portable ("ease of use") +// - Small source code footprint ("easy to maintain") +// - No dependencies ("ease of use") +// +// =========================================================================== +// +// I/O callbacks +// +// I/O callbacks allow you to read from arbitrary sources, like packaged +// files or some other source. Data read from callbacks are processed +// through a small internal buffer (currently 128 bytes) to try to reduce +// overhead. +// +// The three functions you must define are "read" (reads some bytes of data), +// "skip" (skips some bytes of data), "eof" (reports if the stream is at the end). +// +// =========================================================================== +// +// SIMD support +// +// The JPEG decoder will try to automatically use SIMD kernels on x86 when +// supported by the compiler. For ARM Neon support, you must explicitly +// request it. +// +// (The old do-it-yourself SIMD API is no longer supported in the current +// code.) +// +// On x86, SSE2 will automatically be used when available based on a run-time +// test; if not, the generic C versions are used as a fall-back. On ARM targets, +// the typical path is to have separate builds for NEON and non-NEON devices +// (at least this is true for iOS and Android). Therefore, the NEON support is +// toggled by a build flag: define STBI_NEON to get NEON loops. +// +// If for some reason you do not want to use any of SIMD code, or if +// you have issues compiling it, you can disable it entirely by +// defining STBI_NO_SIMD. +// +// =========================================================================== +// +// HDR image support (disable by defining STBI_NO_HDR) +// +// stb_image supports loading HDR images in general, and currently the Radiance +// .HDR file format specifically. You can still load any file through the existing +// interface; if you attempt to load an HDR file, it will be automatically remapped +// to LDR, assuming gamma 2.2 and an arbitrary scale factor defaulting to 1; +// both of these constants can be reconfigured through this interface: +// +// stbi_hdr_to_ldr_gamma(2.2f); +// stbi_hdr_to_ldr_scale(1.0f); +// +// (note, do not use _inverse_ constants; stbi_image will invert them +// appropriately). +// +// Additionally, there is a new, parallel interface for loading files as +// (linear) floats to preserve the full dynamic range: +// +// float *data = stbi_loadf(filename, &x, &y, &n, 0); +// +// If you load LDR images through this interface, those images will +// be promoted to floating point values, run through the inverse of +// constants corresponding to the above: +// +// stbi_ldr_to_hdr_scale(1.0f); +// stbi_ldr_to_hdr_gamma(2.2f); +// +// Finally, given a filename (or an open file or memory block--see header +// file for details) containing image data, you can query for the "most +// appropriate" interface to use (that is, whether the image is HDR or +// not), using: +// +// stbi_is_hdr(char *filename); +// +// =========================================================================== +// +// iPhone PNG support: +// +// We optionally support converting iPhone-formatted PNGs (which store +// premultiplied BGRA) back to RGB, even though they're internally encoded +// differently. To enable this conversion, call +// stbi_convert_iphone_png_to_rgb(1). +// +// Call stbi_set_unpremultiply_on_load(1) as well to force a divide per +// pixel to remove any premultiplied alpha *only* if the image file explicitly +// says there's premultiplied data (currently only happens in iPhone images, +// and only if iPhone convert-to-rgb processing is on). +// +// =========================================================================== +// +// ADDITIONAL CONFIGURATION +// +// - You can suppress implementation of any of the decoders to reduce +// your code footprint by #defining one or more of the following +// symbols before creating the implementation. +// +// STBI_NO_JPEG +// STBI_NO_PNG +// STBI_NO_BMP +// STBI_NO_PSD +// STBI_NO_TGA +// STBI_NO_GIF +// STBI_NO_HDR +// STBI_NO_PIC +// STBI_NO_PNM (.ppm and .pgm) +// +// - You can request *only* certain decoders and suppress all other ones +// (this will be more forward-compatible, as addition of new decoders +// doesn't require you to disable them explicitly): +// +// STBI_ONLY_JPEG +// STBI_ONLY_PNG +// STBI_ONLY_BMP +// STBI_ONLY_PSD +// STBI_ONLY_TGA +// STBI_ONLY_GIF +// STBI_ONLY_HDR +// STBI_ONLY_PIC +// STBI_ONLY_PNM (.ppm and .pgm) +// +// - If you use STBI_NO_PNG (or _ONLY_ without PNG), and you still +// want the zlib decoder to be available, #define STBI_SUPPORT_ZLIB +// +// - If you define STBI_MAX_DIMENSIONS, stb_image will reject images greater +// than that size (in either width or height) without further processing. +// This is to let programs in the wild set an upper bound to prevent +// denial-of-service attacks on untrusted data, as one could generate a +// valid image of gigantic dimensions and force stb_image to allocate a +// huge block of memory and spend disproportionate time decoding it. By +// default this is set to (1 << 24), which is 16777216, but that's still +// very big. + +#ifndef STBI_NO_STDIO +#include +#endif // STBI_NO_STDIO + +#define STBI_VERSION 1 + +enum +{ + STBI_default = 0, // only used for desired_channels + + STBI_grey = 1, + STBI_grey_alpha = 2, + STBI_rgb = 3, + STBI_rgb_alpha = 4 +}; + +#include +typedef unsigned char stbi_uc; +typedef unsigned short stbi_us; + +#ifdef __cplusplus +extern "C" { +#endif + +#ifndef STBIDEF +#ifdef STB_IMAGE_STATIC +#define STBIDEF static +#else +#define STBIDEF extern +#endif +#endif + +////////////////////////////////////////////////////////////////////////////// +// +// PRIMARY API - works on images of any type +// + +// +// load image by filename, open file, or memory buffer +// + +typedef struct +{ + int (*read) (void *user,char *data,int size); // fill 'data' with 'size' bytes. return number of bytes actually read + void (*skip) (void *user,int n); // skip the next 'n' bytes, or 'unget' the last -n bytes if negative + int (*eof) (void *user); // returns nonzero if we are at end of file/data +} stbi_io_callbacks; + +//////////////////////////////////// +// +// 8-bits-per-channel interface +// + +STBIDEF stbi_uc *stbi_load_from_memory (stbi_uc const *buffer, int len , int *x, int *y, int *channels_in_file, int desired_channels); +STBIDEF stbi_uc *stbi_load_from_callbacks(stbi_io_callbacks const *clbk , void *user, int *x, int *y, int *channels_in_file, int desired_channels); + +#ifndef STBI_NO_STDIO +STBIDEF stbi_uc *stbi_load (char const *filename, int *x, int *y, int *channels_in_file, int desired_channels); +STBIDEF stbi_uc *stbi_load_from_file (FILE *f, int *x, int *y, int *channels_in_file, int desired_channels); +// for stbi_load_from_file, file pointer is left pointing immediately after image +#endif + +#ifndef STBI_NO_GIF +STBIDEF stbi_uc *stbi_load_gif_from_memory(stbi_uc const *buffer, int len, int **delays, int *x, int *y, int *z, int *comp, int req_comp); +#endif + +#ifdef STBI_WINDOWS_UTF8 +STBIDEF int stbi_convert_wchar_to_utf8(char *buffer, size_t bufferlen, const wchar_t* input); +#endif + +//////////////////////////////////// +// +// 16-bits-per-channel interface +// + +STBIDEF stbi_us *stbi_load_16_from_memory (stbi_uc const *buffer, int len, int *x, int *y, int *channels_in_file, int desired_channels); +STBIDEF stbi_us *stbi_load_16_from_callbacks(stbi_io_callbacks const *clbk, void *user, int *x, int *y, int *channels_in_file, int desired_channels); + +#ifndef STBI_NO_STDIO +STBIDEF stbi_us *stbi_load_16 (char const *filename, int *x, int *y, int *channels_in_file, int desired_channels); +STBIDEF stbi_us *stbi_load_from_file_16(FILE *f, int *x, int *y, int *channels_in_file, int desired_channels); +#endif + +//////////////////////////////////// +// +// float-per-channel interface +// +#ifndef STBI_NO_LINEAR + STBIDEF float *stbi_loadf_from_memory (stbi_uc const *buffer, int len, int *x, int *y, int *channels_in_file, int desired_channels); + STBIDEF float *stbi_loadf_from_callbacks (stbi_io_callbacks const *clbk, void *user, int *x, int *y, int *channels_in_file, int desired_channels); + + #ifndef STBI_NO_STDIO + STBIDEF float *stbi_loadf (char const *filename, int *x, int *y, int *channels_in_file, int desired_channels); + STBIDEF float *stbi_loadf_from_file (FILE *f, int *x, int *y, int *channels_in_file, int desired_channels); + #endif +#endif + +#ifndef STBI_NO_HDR + STBIDEF void stbi_hdr_to_ldr_gamma(float gamma); + STBIDEF void stbi_hdr_to_ldr_scale(float scale); +#endif // STBI_NO_HDR + +#ifndef STBI_NO_LINEAR + STBIDEF void stbi_ldr_to_hdr_gamma(float gamma); + STBIDEF void stbi_ldr_to_hdr_scale(float scale); +#endif // STBI_NO_LINEAR + +// stbi_is_hdr is always defined, but always returns false if STBI_NO_HDR +STBIDEF int stbi_is_hdr_from_callbacks(stbi_io_callbacks const *clbk, void *user); +STBIDEF int stbi_is_hdr_from_memory(stbi_uc const *buffer, int len); +#ifndef STBI_NO_STDIO +STBIDEF int stbi_is_hdr (char const *filename); +STBIDEF int stbi_is_hdr_from_file(FILE *f); +#endif // STBI_NO_STDIO + + +// get a VERY brief reason for failure +// on most compilers (and ALL modern mainstream compilers) this is threadsafe +STBIDEF const char *stbi_failure_reason (void); + +// free the loaded image -- this is just free() +STBIDEF void stbi_image_free (void *retval_from_stbi_load); + +// get image dimensions & components without fully decoding +STBIDEF int stbi_info_from_memory(stbi_uc const *buffer, int len, int *x, int *y, int *comp); +STBIDEF int stbi_info_from_callbacks(stbi_io_callbacks const *clbk, void *user, int *x, int *y, int *comp); +STBIDEF int stbi_is_16_bit_from_memory(stbi_uc const *buffer, int len); +STBIDEF int stbi_is_16_bit_from_callbacks(stbi_io_callbacks const *clbk, void *user); + +#ifndef STBI_NO_STDIO +STBIDEF int stbi_info (char const *filename, int *x, int *y, int *comp); +STBIDEF int stbi_info_from_file (FILE *f, int *x, int *y, int *comp); +STBIDEF int stbi_is_16_bit (char const *filename); +STBIDEF int stbi_is_16_bit_from_file(FILE *f); +#endif + + + +// for image formats that explicitly notate that they have premultiplied alpha, +// we just return the colors as stored in the file. set this flag to force +// unpremultiplication. results are undefined if the unpremultiply overflow. +STBIDEF void stbi_set_unpremultiply_on_load(int flag_true_if_should_unpremultiply); + +// indicate whether we should process iphone images back to canonical format, +// or just pass them through "as-is" +STBIDEF void stbi_convert_iphone_png_to_rgb(int flag_true_if_should_convert); + +// flip the image vertically, so the first pixel in the output array is the bottom left +STBIDEF void stbi_set_flip_vertically_on_load(int flag_true_if_should_flip); + +// as above, but only applies to images loaded on the thread that calls the function +// this function is only available if your compiler supports thread-local variables; +// calling it will fail to link if your compiler doesn't +STBIDEF void stbi_set_unpremultiply_on_load_thread(int flag_true_if_should_unpremultiply); +STBIDEF void stbi_convert_iphone_png_to_rgb_thread(int flag_true_if_should_convert); +STBIDEF void stbi_set_flip_vertically_on_load_thread(int flag_true_if_should_flip); + +// ZLIB client - used by PNG, available for other purposes + +STBIDEF char *stbi_zlib_decode_malloc_guesssize(const char *buffer, int len, int initial_size, int *outlen); +STBIDEF char *stbi_zlib_decode_malloc_guesssize_headerflag(const char *buffer, int len, int initial_size, int *outlen, int parse_header); +STBIDEF char *stbi_zlib_decode_malloc(const char *buffer, int len, int *outlen); +STBIDEF int stbi_zlib_decode_buffer(char *obuffer, int olen, const char *ibuffer, int ilen); + +STBIDEF char *stbi_zlib_decode_noheader_malloc(const char *buffer, int len, int *outlen); +STBIDEF int stbi_zlib_decode_noheader_buffer(char *obuffer, int olen, const char *ibuffer, int ilen); + + +#ifdef __cplusplus +} +#endif + +// +// +//// end header file ///////////////////////////////////////////////////// +#endif // STBI_INCLUDE_STB_IMAGE_H + +#ifdef STB_IMAGE_IMPLEMENTATION + +#if defined(STBI_ONLY_JPEG) || defined(STBI_ONLY_PNG) || defined(STBI_ONLY_BMP) \ + || defined(STBI_ONLY_TGA) || defined(STBI_ONLY_GIF) || defined(STBI_ONLY_PSD) \ + || defined(STBI_ONLY_HDR) || defined(STBI_ONLY_PIC) || defined(STBI_ONLY_PNM) \ + || defined(STBI_ONLY_ZLIB) + #ifndef STBI_ONLY_JPEG + #define STBI_NO_JPEG + #endif + #ifndef STBI_ONLY_PNG + #define STBI_NO_PNG + #endif + #ifndef STBI_ONLY_BMP + #define STBI_NO_BMP + #endif + #ifndef STBI_ONLY_PSD + #define STBI_NO_PSD + #endif + #ifndef STBI_ONLY_TGA + #define STBI_NO_TGA + #endif + #ifndef STBI_ONLY_GIF + #define STBI_NO_GIF + #endif + #ifndef STBI_ONLY_HDR + #define STBI_NO_HDR + #endif + #ifndef STBI_ONLY_PIC + #define STBI_NO_PIC + #endif + #ifndef STBI_ONLY_PNM + #define STBI_NO_PNM + #endif +#endif + +#if defined(STBI_NO_PNG) && !defined(STBI_SUPPORT_ZLIB) && !defined(STBI_NO_ZLIB) +#define STBI_NO_ZLIB +#endif + + +#include +#include // ptrdiff_t on osx +#include +#include +#include + +#if !defined(STBI_NO_LINEAR) || !defined(STBI_NO_HDR) +#include // ldexp, pow +#endif + +#ifndef STBI_NO_STDIO +#include +#endif + +#ifndef STBI_ASSERT +#include +#define STBI_ASSERT(x) assert(x) +#endif + +#ifdef __cplusplus +#define STBI_EXTERN extern "C" +#else +#define STBI_EXTERN extern +#endif + + +#ifndef _MSC_VER + #ifdef __cplusplus + #define stbi_inline inline + #else + #define stbi_inline + #endif +#else + #define stbi_inline __forceinline +#endif + +#ifndef STBI_NO_THREAD_LOCALS + #if defined(__cplusplus) && __cplusplus >= 201103L + #define STBI_THREAD_LOCAL thread_local + #elif defined(__GNUC__) && __GNUC__ < 5 + #define STBI_THREAD_LOCAL __thread + #elif defined(_MSC_VER) + #define STBI_THREAD_LOCAL __declspec(thread) + #elif defined (__STDC_VERSION__) && __STDC_VERSION__ >= 201112L && !defined(__STDC_NO_THREADS__) + #define STBI_THREAD_LOCAL _Thread_local + #endif + + #ifndef STBI_THREAD_LOCAL + #if defined(__GNUC__) + #define STBI_THREAD_LOCAL __thread + #endif + #endif +#endif + +#if defined(_MSC_VER) || defined(__SYMBIAN32__) +typedef unsigned short stbi__uint16; +typedef signed short stbi__int16; +typedef unsigned int stbi__uint32; +typedef signed int stbi__int32; +#else +#include +typedef uint16_t stbi__uint16; +typedef int16_t stbi__int16; +typedef uint32_t stbi__uint32; +typedef int32_t stbi__int32; +#endif + +// should produce compiler error if size is wrong +typedef unsigned char validate_uint32[sizeof(stbi__uint32)==4 ? 1 : -1]; + +#ifdef _MSC_VER +#define STBI_NOTUSED(v) (void)(v) +#else +#define STBI_NOTUSED(v) (void)sizeof(v) +#endif + +#ifdef _MSC_VER +#define STBI_HAS_LROTL +#endif + +#ifdef STBI_HAS_LROTL + #define stbi_lrot(x,y) _lrotl(x,y) +#else + #define stbi_lrot(x,y) (((x) << (y)) | ((x) >> (-(y) & 31))) +#endif + +#if defined(STBI_MALLOC) && defined(STBI_FREE) && (defined(STBI_REALLOC) || defined(STBI_REALLOC_SIZED)) +// ok +#elif !defined(STBI_MALLOC) && !defined(STBI_FREE) && !defined(STBI_REALLOC) && !defined(STBI_REALLOC_SIZED) +// ok +#else +#error "Must define all or none of STBI_MALLOC, STBI_FREE, and STBI_REALLOC (or STBI_REALLOC_SIZED)." +#endif + +#ifndef STBI_MALLOC +#define STBI_MALLOC(sz) malloc(sz) +#define STBI_REALLOC(p,newsz) realloc(p,newsz) +#define STBI_FREE(p) free(p) +#endif + +#ifndef STBI_REALLOC_SIZED +#define STBI_REALLOC_SIZED(p,oldsz,newsz) STBI_REALLOC(p,newsz) +#endif + +// x86/x64 detection +#if defined(__x86_64__) || defined(_M_X64) +#define STBI__X64_TARGET +#elif defined(__i386) || defined(_M_IX86) +#define STBI__X86_TARGET +#endif + +#if defined(__GNUC__) && defined(STBI__X86_TARGET) && !defined(__SSE2__) && !defined(STBI_NO_SIMD) +// gcc doesn't support sse2 intrinsics unless you compile with -msse2, +// which in turn means it gets to use SSE2 everywhere. This is unfortunate, +// but previous attempts to provide the SSE2 functions with runtime +// detection caused numerous issues. The way architecture extensions are +// exposed in GCC/Clang is, sadly, not really suited for one-file libs. +// New behavior: if compiled with -msse2, we use SSE2 without any +// detection; if not, we don't use it at all. +#define STBI_NO_SIMD +#endif + +#if defined(__MINGW32__) && defined(STBI__X86_TARGET) && !defined(STBI_MINGW_ENABLE_SSE2) && !defined(STBI_NO_SIMD) +// Note that __MINGW32__ doesn't actually mean 32-bit, so we have to avoid STBI__X64_TARGET +// +// 32-bit MinGW wants ESP to be 16-byte aligned, but this is not in the +// Windows ABI and VC++ as well as Windows DLLs don't maintain that invariant. +// As a result, enabling SSE2 on 32-bit MinGW is dangerous when not +// simultaneously enabling "-mstackrealign". +// +// See https://github.com/nothings/stb/issues/81 for more information. +// +// So default to no SSE2 on 32-bit MinGW. If you've read this far and added +// -mstackrealign to your build settings, feel free to #define STBI_MINGW_ENABLE_SSE2. +#define STBI_NO_SIMD +#endif + +#if !defined(STBI_NO_SIMD) && (defined(STBI__X86_TARGET) || defined(STBI__X64_TARGET)) +#define STBI_SSE2 +#include + +#ifdef _MSC_VER + +#if _MSC_VER >= 1400 // not VC6 +#include // __cpuid +static int stbi__cpuid3(void) +{ + int info[4]; + __cpuid(info,1); + return info[3]; +} +#else +static int stbi__cpuid3(void) +{ + int res; + __asm { + mov eax,1 + cpuid + mov res,edx + } + return res; +} +#endif + +#define STBI_SIMD_ALIGN(type, name) __declspec(align(16)) type name + +#if !defined(STBI_NO_JPEG) && defined(STBI_SSE2) +static int stbi__sse2_available(void) +{ + int info3 = stbi__cpuid3(); + return ((info3 >> 26) & 1) != 0; +} +#endif + +#else // assume GCC-style if not VC++ +#define STBI_SIMD_ALIGN(type, name) type name __attribute__((aligned(16))) + +#if !defined(STBI_NO_JPEG) && defined(STBI_SSE2) +static int stbi__sse2_available(void) +{ + // If we're even attempting to compile this on GCC/Clang, that means + // -msse2 is on, which means the compiler is allowed to use SSE2 + // instructions at will, and so are we. + return 1; +} +#endif + +#endif +#endif + +// ARM NEON +#if defined(STBI_NO_SIMD) && defined(STBI_NEON) +#undef STBI_NEON +#endif + +#ifdef STBI_NEON +#include +#ifdef _MSC_VER +#define STBI_SIMD_ALIGN(type, name) __declspec(align(16)) type name +#else +#define STBI_SIMD_ALIGN(type, name) type name __attribute__((aligned(16))) +#endif +#endif + +#ifndef STBI_SIMD_ALIGN +#define STBI_SIMD_ALIGN(type, name) type name +#endif + +#ifndef STBI_MAX_DIMENSIONS +#define STBI_MAX_DIMENSIONS (1 << 24) +#endif + +/////////////////////////////////////////////// +// +// stbi__context struct and start_xxx functions + +// stbi__context structure is our basic context used by all images, so it +// contains all the IO context, plus some basic image information +typedef struct +{ + stbi__uint32 img_x, img_y; + int img_n, img_out_n; + + stbi_io_callbacks io; + void *io_user_data; + + int read_from_callbacks; + int buflen; + stbi_uc buffer_start[128]; + int callback_already_read; + + stbi_uc *img_buffer, *img_buffer_end; + stbi_uc *img_buffer_original, *img_buffer_original_end; +} stbi__context; + + +static void stbi__refill_buffer(stbi__context *s); + +// initialize a memory-decode context +static void stbi__start_mem(stbi__context *s, stbi_uc const *buffer, int len) +{ + s->io.read = NULL; + s->read_from_callbacks = 0; + s->callback_already_read = 0; + s->img_buffer = s->img_buffer_original = (stbi_uc *) buffer; + s->img_buffer_end = s->img_buffer_original_end = (stbi_uc *) buffer+len; +} + +// initialize a callback-based context +static void stbi__start_callbacks(stbi__context *s, stbi_io_callbacks *c, void *user) +{ + s->io = *c; + s->io_user_data = user; + s->buflen = sizeof(s->buffer_start); + s->read_from_callbacks = 1; + s->callback_already_read = 0; + s->img_buffer = s->img_buffer_original = s->buffer_start; + stbi__refill_buffer(s); + s->img_buffer_original_end = s->img_buffer_end; +} + +#ifndef STBI_NO_STDIO + +static int stbi__stdio_read(void *user, char *data, int size) +{ + return (int) fread(data,1,size,(FILE*) user); +} + +static void stbi__stdio_skip(void *user, int n) +{ + int ch; + fseek((FILE*) user, n, SEEK_CUR); + ch = fgetc((FILE*) user); /* have to read a byte to reset feof()'s flag */ + if (ch != EOF) { + ungetc(ch, (FILE *) user); /* push byte back onto stream if valid. */ + } +} + +static int stbi__stdio_eof(void *user) +{ + return feof((FILE*) user) || ferror((FILE *) user); +} + +static stbi_io_callbacks stbi__stdio_callbacks = +{ + stbi__stdio_read, + stbi__stdio_skip, + stbi__stdio_eof, +}; + +static void stbi__start_file(stbi__context *s, FILE *f) +{ + stbi__start_callbacks(s, &stbi__stdio_callbacks, (void *) f); +} + +//static void stop_file(stbi__context *s) { } + +#endif // !STBI_NO_STDIO + +static void stbi__rewind(stbi__context *s) +{ + // conceptually rewind SHOULD rewind to the beginning of the stream, + // but we just rewind to the beginning of the initial buffer, because + // we only use it after doing 'test', which only ever looks at at most 92 bytes + s->img_buffer = s->img_buffer_original; + s->img_buffer_end = s->img_buffer_original_end; +} + +enum +{ + STBI_ORDER_RGB, + STBI_ORDER_BGR +}; + +typedef struct +{ + int bits_per_channel; + int num_channels; + int channel_order; +} stbi__result_info; + +#ifndef STBI_NO_JPEG +static int stbi__jpeg_test(stbi__context *s); +static void *stbi__jpeg_load(stbi__context *s, int *x, int *y, int *comp, int req_comp, stbi__result_info *ri); +static int stbi__jpeg_info(stbi__context *s, int *x, int *y, int *comp); +#endif + +#ifndef STBI_NO_PNG +static int stbi__png_test(stbi__context *s); +static void *stbi__png_load(stbi__context *s, int *x, int *y, int *comp, int req_comp, stbi__result_info *ri); +static int stbi__png_info(stbi__context *s, int *x, int *y, int *comp); +static int stbi__png_is16(stbi__context *s); +#endif + +#ifndef STBI_NO_BMP +static int stbi__bmp_test(stbi__context *s); +static void *stbi__bmp_load(stbi__context *s, int *x, int *y, int *comp, int req_comp, stbi__result_info *ri); +static int stbi__bmp_info(stbi__context *s, int *x, int *y, int *comp); +#endif + +#ifndef STBI_NO_TGA +static int stbi__tga_test(stbi__context *s); +static void *stbi__tga_load(stbi__context *s, int *x, int *y, int *comp, int req_comp, stbi__result_info *ri); +static int stbi__tga_info(stbi__context *s, int *x, int *y, int *comp); +#endif + +#ifndef STBI_NO_PSD +static int stbi__psd_test(stbi__context *s); +static void *stbi__psd_load(stbi__context *s, int *x, int *y, int *comp, int req_comp, stbi__result_info *ri, int bpc); +static int stbi__psd_info(stbi__context *s, int *x, int *y, int *comp); +static int stbi__psd_is16(stbi__context *s); +#endif + +#ifndef STBI_NO_HDR +static int stbi__hdr_test(stbi__context *s); +static float *stbi__hdr_load(stbi__context *s, int *x, int *y, int *comp, int req_comp, stbi__result_info *ri); +static int stbi__hdr_info(stbi__context *s, int *x, int *y, int *comp); +#endif + +#ifndef STBI_NO_PIC +static int stbi__pic_test(stbi__context *s); +static void *stbi__pic_load(stbi__context *s, int *x, int *y, int *comp, int req_comp, stbi__result_info *ri); +static int stbi__pic_info(stbi__context *s, int *x, int *y, int *comp); +#endif + +#ifndef STBI_NO_GIF +static int stbi__gif_test(stbi__context *s); +static void *stbi__gif_load(stbi__context *s, int *x, int *y, int *comp, int req_comp, stbi__result_info *ri); +static void *stbi__load_gif_main(stbi__context *s, int **delays, int *x, int *y, int *z, int *comp, int req_comp); +static int stbi__gif_info(stbi__context *s, int *x, int *y, int *comp); +#endif + +#ifndef STBI_NO_PNM +static int stbi__pnm_test(stbi__context *s); +static void *stbi__pnm_load(stbi__context *s, int *x, int *y, int *comp, int req_comp, stbi__result_info *ri); +static int stbi__pnm_info(stbi__context *s, int *x, int *y, int *comp); +static int stbi__pnm_is16(stbi__context *s); +#endif + +static +#ifdef STBI_THREAD_LOCAL +STBI_THREAD_LOCAL +#endif +const char *stbi__g_failure_reason; + +STBIDEF const char *stbi_failure_reason(void) +{ + return stbi__g_failure_reason; +} + +#ifndef STBI_NO_FAILURE_STRINGS +static int stbi__err(const char *str) +{ + stbi__g_failure_reason = str; + return 0; +} +#endif + +static void *stbi__malloc(size_t size) +{ + return STBI_MALLOC(size); +} + +// stb_image uses ints pervasively, including for offset calculations. +// therefore the largest decoded image size we can support with the +// current code, even on 64-bit targets, is INT_MAX. this is not a +// significant limitation for the intended use case. +// +// we do, however, need to make sure our size calculations don't +// overflow. hence a few helper functions for size calculations that +// multiply integers together, making sure that they're non-negative +// and no overflow occurs. + +// return 1 if the sum is valid, 0 on overflow. +// negative terms are considered invalid. +static int stbi__addsizes_valid(int a, int b) +{ + if (b < 0) return 0; + // now 0 <= b <= INT_MAX, hence also + // 0 <= INT_MAX - b <= INTMAX. + // And "a + b <= INT_MAX" (which might overflow) is the + // same as a <= INT_MAX - b (no overflow) + return a <= INT_MAX - b; +} + +// returns 1 if the product is valid, 0 on overflow. +// negative factors are considered invalid. +static int stbi__mul2sizes_valid(int a, int b) +{ + if (a < 0 || b < 0) return 0; + if (b == 0) return 1; // mul-by-0 is always safe + // portable way to check for no overflows in a*b + return a <= INT_MAX/b; +} + +#if !defined(STBI_NO_JPEG) || !defined(STBI_NO_PNG) || !defined(STBI_NO_TGA) || !defined(STBI_NO_HDR) +// returns 1 if "a*b + add" has no negative terms/factors and doesn't overflow +static int stbi__mad2sizes_valid(int a, int b, int add) +{ + return stbi__mul2sizes_valid(a, b) && stbi__addsizes_valid(a*b, add); +} +#endif + +// returns 1 if "a*b*c + add" has no negative terms/factors and doesn't overflow +static int stbi__mad3sizes_valid(int a, int b, int c, int add) +{ + return stbi__mul2sizes_valid(a, b) && stbi__mul2sizes_valid(a*b, c) && + stbi__addsizes_valid(a*b*c, add); +} + +// returns 1 if "a*b*c*d + add" has no negative terms/factors and doesn't overflow +#if !defined(STBI_NO_LINEAR) || !defined(STBI_NO_HDR) || !defined(STBI_NO_PNM) +static int stbi__mad4sizes_valid(int a, int b, int c, int d, int add) +{ + return stbi__mul2sizes_valid(a, b) && stbi__mul2sizes_valid(a*b, c) && + stbi__mul2sizes_valid(a*b*c, d) && stbi__addsizes_valid(a*b*c*d, add); +} +#endif + +#if !defined(STBI_NO_JPEG) || !defined(STBI_NO_PNG) || !defined(STBI_NO_TGA) || !defined(STBI_NO_HDR) +// mallocs with size overflow checking +static void *stbi__malloc_mad2(int a, int b, int add) +{ + if (!stbi__mad2sizes_valid(a, b, add)) return NULL; + return stbi__malloc(a*b + add); +} +#endif + +static void *stbi__malloc_mad3(int a, int b, int c, int add) +{ + if (!stbi__mad3sizes_valid(a, b, c, add)) return NULL; + return stbi__malloc(a*b*c + add); +} + +#if !defined(STBI_NO_LINEAR) || !defined(STBI_NO_HDR) || !defined(STBI_NO_PNM) +static void *stbi__malloc_mad4(int a, int b, int c, int d, int add) +{ + if (!stbi__mad4sizes_valid(a, b, c, d, add)) return NULL; + return stbi__malloc(a*b*c*d + add); +} +#endif + +// returns 1 if the sum of two signed ints is valid (between -2^31 and 2^31-1 inclusive), 0 on overflow. +static int stbi__addints_valid(int a, int b) +{ + if ((a >= 0) != (b >= 0)) return 1; // a and b have different signs, so no overflow + if (a < 0 && b < 0) return a >= INT_MIN - b; // same as a + b >= INT_MIN; INT_MIN - b cannot overflow since b < 0. + return a <= INT_MAX - b; +} + +// returns 1 if the product of two signed shorts is valid, 0 on overflow. +static int stbi__mul2shorts_valid(short a, short b) +{ + if (b == 0 || b == -1) return 1; // multiplication by 0 is always 0; check for -1 so SHRT_MIN/b doesn't overflow + if ((a >= 0) == (b >= 0)) return a <= SHRT_MAX/b; // product is positive, so similar to mul2sizes_valid + if (b < 0) return a <= SHRT_MIN / b; // same as a * b >= SHRT_MIN + return a >= SHRT_MIN / b; +} + +// stbi__err - error +// stbi__errpf - error returning pointer to float +// stbi__errpuc - error returning pointer to unsigned char + +#ifdef STBI_NO_FAILURE_STRINGS + #define stbi__err(x,y) 0 +#elif defined(STBI_FAILURE_USERMSG) + #define stbi__err(x,y) stbi__err(y) +#else + #define stbi__err(x,y) stbi__err(x) +#endif + +#define stbi__errpf(x,y) ((float *)(size_t) (stbi__err(x,y)?NULL:NULL)) +#define stbi__errpuc(x,y) ((unsigned char *)(size_t) (stbi__err(x,y)?NULL:NULL)) + +STBIDEF void stbi_image_free(void *retval_from_stbi_load) +{ + STBI_FREE(retval_from_stbi_load); +} + +#ifndef STBI_NO_LINEAR +static float *stbi__ldr_to_hdr(stbi_uc *data, int x, int y, int comp); +#endif + +#ifndef STBI_NO_HDR +static stbi_uc *stbi__hdr_to_ldr(float *data, int x, int y, int comp); +#endif + +static int stbi__vertically_flip_on_load_global = 0; + +STBIDEF void stbi_set_flip_vertically_on_load(int flag_true_if_should_flip) +{ + stbi__vertically_flip_on_load_global = flag_true_if_should_flip; +} + +#ifndef STBI_THREAD_LOCAL +#define stbi__vertically_flip_on_load stbi__vertically_flip_on_load_global +#else +static STBI_THREAD_LOCAL int stbi__vertically_flip_on_load_local, stbi__vertically_flip_on_load_set; + +STBIDEF void stbi_set_flip_vertically_on_load_thread(int flag_true_if_should_flip) +{ + stbi__vertically_flip_on_load_local = flag_true_if_should_flip; + stbi__vertically_flip_on_load_set = 1; +} + +#define stbi__vertically_flip_on_load (stbi__vertically_flip_on_load_set \ + ? stbi__vertically_flip_on_load_local \ + : stbi__vertically_flip_on_load_global) +#endif // STBI_THREAD_LOCAL + +static void *stbi__load_main(stbi__context *s, int *x, int *y, int *comp, int req_comp, stbi__result_info *ri, int bpc) +{ + memset(ri, 0, sizeof(*ri)); // make sure it's initialized if we add new fields + ri->bits_per_channel = 8; // default is 8 so most paths don't have to be changed + ri->channel_order = STBI_ORDER_RGB; // all current input & output are this, but this is here so we can add BGR order + ri->num_channels = 0; + + // test the formats with a very explicit header first (at least a FOURCC + // or distinctive magic number first) + #ifndef STBI_NO_PNG + if (stbi__png_test(s)) return stbi__png_load(s,x,y,comp,req_comp, ri); + #endif + #ifndef STBI_NO_BMP + if (stbi__bmp_test(s)) return stbi__bmp_load(s,x,y,comp,req_comp, ri); + #endif + #ifndef STBI_NO_GIF + if (stbi__gif_test(s)) return stbi__gif_load(s,x,y,comp,req_comp, ri); + #endif + #ifndef STBI_NO_PSD + if (stbi__psd_test(s)) return stbi__psd_load(s,x,y,comp,req_comp, ri, bpc); + #else + STBI_NOTUSED(bpc); + #endif + #ifndef STBI_NO_PIC + if (stbi__pic_test(s)) return stbi__pic_load(s,x,y,comp,req_comp, ri); + #endif + + // then the formats that can end up attempting to load with just 1 or 2 + // bytes matching expectations; these are prone to false positives, so + // try them later + #ifndef STBI_NO_JPEG + if (stbi__jpeg_test(s)) return stbi__jpeg_load(s,x,y,comp,req_comp, ri); + #endif + #ifndef STBI_NO_PNM + if (stbi__pnm_test(s)) return stbi__pnm_load(s,x,y,comp,req_comp, ri); + #endif + + #ifndef STBI_NO_HDR + if (stbi__hdr_test(s)) { + float *hdr = stbi__hdr_load(s, x,y,comp,req_comp, ri); + return stbi__hdr_to_ldr(hdr, *x, *y, req_comp ? req_comp : *comp); + } + #endif + + #ifndef STBI_NO_TGA + // test tga last because it's a crappy test! + if (stbi__tga_test(s)) + return stbi__tga_load(s,x,y,comp,req_comp, ri); + #endif + + return stbi__errpuc("unknown image type", "Image not of any known type, or corrupt"); +} + +static stbi_uc *stbi__convert_16_to_8(stbi__uint16 *orig, int w, int h, int channels) +{ + int i; + int img_len = w * h * channels; + stbi_uc *reduced; + + reduced = (stbi_uc *) stbi__malloc(img_len); + if (reduced == NULL) return stbi__errpuc("outofmem", "Out of memory"); + + for (i = 0; i < img_len; ++i) + reduced[i] = (stbi_uc)((orig[i] >> 8) & 0xFF); // top half of each byte is sufficient approx of 16->8 bit scaling + + STBI_FREE(orig); + return reduced; +} + +static stbi__uint16 *stbi__convert_8_to_16(stbi_uc *orig, int w, int h, int channels) +{ + int i; + int img_len = w * h * channels; + stbi__uint16 *enlarged; + + enlarged = (stbi__uint16 *) stbi__malloc(img_len*2); + if (enlarged == NULL) return (stbi__uint16 *) stbi__errpuc("outofmem", "Out of memory"); + + for (i = 0; i < img_len; ++i) + enlarged[i] = (stbi__uint16)((orig[i] << 8) + orig[i]); // replicate to high and low byte, maps 0->0, 255->0xffff + + STBI_FREE(orig); + return enlarged; +} + +static void stbi__vertical_flip(void *image, int w, int h, int bytes_per_pixel) +{ + int row; + size_t bytes_per_row = (size_t)w * bytes_per_pixel; + stbi_uc temp[2048]; + stbi_uc *bytes = (stbi_uc *)image; + + for (row = 0; row < (h>>1); row++) { + stbi_uc *row0 = bytes + row*bytes_per_row; + stbi_uc *row1 = bytes + (h - row - 1)*bytes_per_row; + // swap row0 with row1 + size_t bytes_left = bytes_per_row; + while (bytes_left) { + size_t bytes_copy = (bytes_left < sizeof(temp)) ? bytes_left : sizeof(temp); + memcpy(temp, row0, bytes_copy); + memcpy(row0, row1, bytes_copy); + memcpy(row1, temp, bytes_copy); + row0 += bytes_copy; + row1 += bytes_copy; + bytes_left -= bytes_copy; + } + } +} + +#ifndef STBI_NO_GIF +static void stbi__vertical_flip_slices(void *image, int w, int h, int z, int bytes_per_pixel) +{ + int slice; + int slice_size = w * h * bytes_per_pixel; + + stbi_uc *bytes = (stbi_uc *)image; + for (slice = 0; slice < z; ++slice) { + stbi__vertical_flip(bytes, w, h, bytes_per_pixel); + bytes += slice_size; + } +} +#endif + +static unsigned char *stbi__load_and_postprocess_8bit(stbi__context *s, int *x, int *y, int *comp, int req_comp) +{ + stbi__result_info ri; + void *result = stbi__load_main(s, x, y, comp, req_comp, &ri, 8); + + if (result == NULL) + return NULL; + + // it is the responsibility of the loaders to make sure we get either 8 or 16 bit. + STBI_ASSERT(ri.bits_per_channel == 8 || ri.bits_per_channel == 16); + + if (ri.bits_per_channel != 8) { + result = stbi__convert_16_to_8((stbi__uint16 *) result, *x, *y, req_comp == 0 ? *comp : req_comp); + ri.bits_per_channel = 8; + } + + // @TODO: move stbi__convert_format to here + + if (stbi__vertically_flip_on_load) { + int channels = req_comp ? req_comp : *comp; + stbi__vertical_flip(result, *x, *y, channels * sizeof(stbi_uc)); + } + + return (unsigned char *) result; +} + +static stbi__uint16 *stbi__load_and_postprocess_16bit(stbi__context *s, int *x, int *y, int *comp, int req_comp) +{ + stbi__result_info ri; + void *result = stbi__load_main(s, x, y, comp, req_comp, &ri, 16); + + if (result == NULL) + return NULL; + + // it is the responsibility of the loaders to make sure we get either 8 or 16 bit. + STBI_ASSERT(ri.bits_per_channel == 8 || ri.bits_per_channel == 16); + + if (ri.bits_per_channel != 16) { + result = stbi__convert_8_to_16((stbi_uc *) result, *x, *y, req_comp == 0 ? *comp : req_comp); + ri.bits_per_channel = 16; + } + + // @TODO: move stbi__convert_format16 to here + // @TODO: special case RGB-to-Y (and RGBA-to-YA) for 8-bit-to-16-bit case to keep more precision + + if (stbi__vertically_flip_on_load) { + int channels = req_comp ? req_comp : *comp; + stbi__vertical_flip(result, *x, *y, channels * sizeof(stbi__uint16)); + } + + return (stbi__uint16 *) result; +} + +#if !defined(STBI_NO_HDR) && !defined(STBI_NO_LINEAR) +static void stbi__float_postprocess(float *result, int *x, int *y, int *comp, int req_comp) +{ + if (stbi__vertically_flip_on_load && result != NULL) { + int channels = req_comp ? req_comp : *comp; + stbi__vertical_flip(result, *x, *y, channels * sizeof(float)); + } +} +#endif + +#ifndef STBI_NO_STDIO + +#if defined(_WIN32) && defined(STBI_WINDOWS_UTF8) +STBI_EXTERN __declspec(dllimport) int __stdcall MultiByteToWideChar(unsigned int cp, unsigned long flags, const char *str, int cbmb, wchar_t *widestr, int cchwide); +STBI_EXTERN __declspec(dllimport) int __stdcall WideCharToMultiByte(unsigned int cp, unsigned long flags, const wchar_t *widestr, int cchwide, char *str, int cbmb, const char *defchar, int *used_default); +#endif + +#if defined(_WIN32) && defined(STBI_WINDOWS_UTF8) +STBIDEF int stbi_convert_wchar_to_utf8(char *buffer, size_t bufferlen, const wchar_t* input) +{ + return WideCharToMultiByte(65001 /* UTF8 */, 0, input, -1, buffer, (int) bufferlen, NULL, NULL); +} +#endif + +static FILE *stbi__fopen(char const *filename, char const *mode) +{ + FILE *f; +#if defined(_WIN32) && defined(STBI_WINDOWS_UTF8) + wchar_t wMode[64]; + wchar_t wFilename[1024]; + if (0 == MultiByteToWideChar(65001 /* UTF8 */, 0, filename, -1, wFilename, sizeof(wFilename)/sizeof(*wFilename))) + return 0; + + if (0 == MultiByteToWideChar(65001 /* UTF8 */, 0, mode, -1, wMode, sizeof(wMode)/sizeof(*wMode))) + return 0; + +#if defined(_MSC_VER) && _MSC_VER >= 1400 + if (0 != _wfopen_s(&f, wFilename, wMode)) + f = 0; +#else + f = _wfopen(wFilename, wMode); +#endif + +#elif defined(_MSC_VER) && _MSC_VER >= 1400 + if (0 != fopen_s(&f, filename, mode)) + f=0; +#else + f = fopen(filename, mode); +#endif + return f; +} + + +STBIDEF stbi_uc *stbi_load(char const *filename, int *x, int *y, int *comp, int req_comp) +{ + FILE *f = stbi__fopen(filename, "rb"); + unsigned char *result; + if (!f) return stbi__errpuc("can't fopen", "Unable to open file"); + result = stbi_load_from_file(f,x,y,comp,req_comp); + fclose(f); + return result; +} + +STBIDEF stbi_uc *stbi_load_from_file(FILE *f, int *x, int *y, int *comp, int req_comp) +{ + unsigned char *result; + stbi__context s; + stbi__start_file(&s,f); + result = stbi__load_and_postprocess_8bit(&s,x,y,comp,req_comp); + if (result) { + // need to 'unget' all the characters in the IO buffer + fseek(f, - (int) (s.img_buffer_end - s.img_buffer), SEEK_CUR); + } + return result; +} + +STBIDEF stbi__uint16 *stbi_load_from_file_16(FILE *f, int *x, int *y, int *comp, int req_comp) +{ + stbi__uint16 *result; + stbi__context s; + stbi__start_file(&s,f); + result = stbi__load_and_postprocess_16bit(&s,x,y,comp,req_comp); + if (result) { + // need to 'unget' all the characters in the IO buffer + fseek(f, - (int) (s.img_buffer_end - s.img_buffer), SEEK_CUR); + } + return result; +} + +STBIDEF stbi_us *stbi_load_16(char const *filename, int *x, int *y, int *comp, int req_comp) +{ + FILE *f = stbi__fopen(filename, "rb"); + stbi__uint16 *result; + if (!f) return (stbi_us *) stbi__errpuc("can't fopen", "Unable to open file"); + result = stbi_load_from_file_16(f,x,y,comp,req_comp); + fclose(f); + return result; +} + + +#endif //!STBI_NO_STDIO + +STBIDEF stbi_us *stbi_load_16_from_memory(stbi_uc const *buffer, int len, int *x, int *y, int *channels_in_file, int desired_channels) +{ + stbi__context s; + stbi__start_mem(&s,buffer,len); + return stbi__load_and_postprocess_16bit(&s,x,y,channels_in_file,desired_channels); +} + +STBIDEF stbi_us *stbi_load_16_from_callbacks(stbi_io_callbacks const *clbk, void *user, int *x, int *y, int *channels_in_file, int desired_channels) +{ + stbi__context s; + stbi__start_callbacks(&s, (stbi_io_callbacks *)clbk, user); + return stbi__load_and_postprocess_16bit(&s,x,y,channels_in_file,desired_channels); +} + +STBIDEF stbi_uc *stbi_load_from_memory(stbi_uc const *buffer, int len, int *x, int *y, int *comp, int req_comp) +{ + stbi__context s; + stbi__start_mem(&s,buffer,len); + return stbi__load_and_postprocess_8bit(&s,x,y,comp,req_comp); +} + +STBIDEF stbi_uc *stbi_load_from_callbacks(stbi_io_callbacks const *clbk, void *user, int *x, int *y, int *comp, int req_comp) +{ + stbi__context s; + stbi__start_callbacks(&s, (stbi_io_callbacks *) clbk, user); + return stbi__load_and_postprocess_8bit(&s,x,y,comp,req_comp); +} + +#ifndef STBI_NO_GIF +STBIDEF stbi_uc *stbi_load_gif_from_memory(stbi_uc const *buffer, int len, int **delays, int *x, int *y, int *z, int *comp, int req_comp) +{ + unsigned char *result; + stbi__context s; + stbi__start_mem(&s,buffer,len); + + result = (unsigned char*) stbi__load_gif_main(&s, delays, x, y, z, comp, req_comp); + if (stbi__vertically_flip_on_load) { + stbi__vertical_flip_slices( result, *x, *y, *z, *comp ); + } + + return result; +} +#endif + +#ifndef STBI_NO_LINEAR +static float *stbi__loadf_main(stbi__context *s, int *x, int *y, int *comp, int req_comp) +{ + unsigned char *data; + #ifndef STBI_NO_HDR + if (stbi__hdr_test(s)) { + stbi__result_info ri; + float *hdr_data = stbi__hdr_load(s,x,y,comp,req_comp, &ri); + if (hdr_data) + stbi__float_postprocess(hdr_data,x,y,comp,req_comp); + return hdr_data; + } + #endif + data = stbi__load_and_postprocess_8bit(s, x, y, comp, req_comp); + if (data) + return stbi__ldr_to_hdr(data, *x, *y, req_comp ? req_comp : *comp); + return stbi__errpf("unknown image type", "Image not of any known type, or corrupt"); +} + +STBIDEF float *stbi_loadf_from_memory(stbi_uc const *buffer, int len, int *x, int *y, int *comp, int req_comp) +{ + stbi__context s; + stbi__start_mem(&s,buffer,len); + return stbi__loadf_main(&s,x,y,comp,req_comp); +} + +STBIDEF float *stbi_loadf_from_callbacks(stbi_io_callbacks const *clbk, void *user, int *x, int *y, int *comp, int req_comp) +{ + stbi__context s; + stbi__start_callbacks(&s, (stbi_io_callbacks *) clbk, user); + return stbi__loadf_main(&s,x,y,comp,req_comp); +} + +#ifndef STBI_NO_STDIO +STBIDEF float *stbi_loadf(char const *filename, int *x, int *y, int *comp, int req_comp) +{ + float *result; + FILE *f = stbi__fopen(filename, "rb"); + if (!f) return stbi__errpf("can't fopen", "Unable to open file"); + result = stbi_loadf_from_file(f,x,y,comp,req_comp); + fclose(f); + return result; +} + +STBIDEF float *stbi_loadf_from_file(FILE *f, int *x, int *y, int *comp, int req_comp) +{ + stbi__context s; + stbi__start_file(&s,f); + return stbi__loadf_main(&s,x,y,comp,req_comp); +} +#endif // !STBI_NO_STDIO + +#endif // !STBI_NO_LINEAR + +// these is-hdr-or-not is defined independent of whether STBI_NO_LINEAR is +// defined, for API simplicity; if STBI_NO_LINEAR is defined, it always +// reports false! + +STBIDEF int stbi_is_hdr_from_memory(stbi_uc const *buffer, int len) +{ + #ifndef STBI_NO_HDR + stbi__context s; + stbi__start_mem(&s,buffer,len); + return stbi__hdr_test(&s); + #else + STBI_NOTUSED(buffer); + STBI_NOTUSED(len); + return 0; + #endif +} + +#ifndef STBI_NO_STDIO +STBIDEF int stbi_is_hdr (char const *filename) +{ + FILE *f = stbi__fopen(filename, "rb"); + int result=0; + if (f) { + result = stbi_is_hdr_from_file(f); + fclose(f); + } + return result; +} + +STBIDEF int stbi_is_hdr_from_file(FILE *f) +{ + #ifndef STBI_NO_HDR + long pos = ftell(f); + int res; + stbi__context s; + stbi__start_file(&s,f); + res = stbi__hdr_test(&s); + fseek(f, pos, SEEK_SET); + return res; + #else + STBI_NOTUSED(f); + return 0; + #endif +} +#endif // !STBI_NO_STDIO + +STBIDEF int stbi_is_hdr_from_callbacks(stbi_io_callbacks const *clbk, void *user) +{ + #ifndef STBI_NO_HDR + stbi__context s; + stbi__start_callbacks(&s, (stbi_io_callbacks *) clbk, user); + return stbi__hdr_test(&s); + #else + STBI_NOTUSED(clbk); + STBI_NOTUSED(user); + return 0; + #endif +} + +#ifndef STBI_NO_LINEAR +static float stbi__l2h_gamma=2.2f, stbi__l2h_scale=1.0f; + +STBIDEF void stbi_ldr_to_hdr_gamma(float gamma) { stbi__l2h_gamma = gamma; } +STBIDEF void stbi_ldr_to_hdr_scale(float scale) { stbi__l2h_scale = scale; } +#endif + +static float stbi__h2l_gamma_i=1.0f/2.2f, stbi__h2l_scale_i=1.0f; + +STBIDEF void stbi_hdr_to_ldr_gamma(float gamma) { stbi__h2l_gamma_i = 1/gamma; } +STBIDEF void stbi_hdr_to_ldr_scale(float scale) { stbi__h2l_scale_i = 1/scale; } + + +////////////////////////////////////////////////////////////////////////////// +// +// Common code used by all image loaders +// + +enum +{ + STBI__SCAN_load=0, + STBI__SCAN_type, + STBI__SCAN_header +}; + +static void stbi__refill_buffer(stbi__context *s) +{ + int n = (s->io.read)(s->io_user_data,(char*)s->buffer_start,s->buflen); + s->callback_already_read += (int) (s->img_buffer - s->img_buffer_original); + if (n == 0) { + // at end of file, treat same as if from memory, but need to handle case + // where s->img_buffer isn't pointing to safe memory, e.g. 0-byte file + s->read_from_callbacks = 0; + s->img_buffer = s->buffer_start; + s->img_buffer_end = s->buffer_start+1; + *s->img_buffer = 0; + } else { + s->img_buffer = s->buffer_start; + s->img_buffer_end = s->buffer_start + n; + } +} + +stbi_inline static stbi_uc stbi__get8(stbi__context *s) +{ + if (s->img_buffer < s->img_buffer_end) + return *s->img_buffer++; + if (s->read_from_callbacks) { + stbi__refill_buffer(s); + return *s->img_buffer++; + } + return 0; +} + +#if defined(STBI_NO_JPEG) && defined(STBI_NO_HDR) && defined(STBI_NO_PIC) && defined(STBI_NO_PNM) +// nothing +#else +stbi_inline static int stbi__at_eof(stbi__context *s) +{ + if (s->io.read) { + if (!(s->io.eof)(s->io_user_data)) return 0; + // if feof() is true, check if buffer = end + // special case: we've only got the special 0 character at the end + if (s->read_from_callbacks == 0) return 1; + } + + return s->img_buffer >= s->img_buffer_end; +} +#endif + +#if defined(STBI_NO_JPEG) && defined(STBI_NO_PNG) && defined(STBI_NO_BMP) && defined(STBI_NO_PSD) && defined(STBI_NO_TGA) && defined(STBI_NO_GIF) && defined(STBI_NO_PIC) +// nothing +#else +static void stbi__skip(stbi__context *s, int n) +{ + if (n == 0) return; // already there! + if (n < 0) { + s->img_buffer = s->img_buffer_end; + return; + } + if (s->io.read) { + int blen = (int) (s->img_buffer_end - s->img_buffer); + if (blen < n) { + s->img_buffer = s->img_buffer_end; + (s->io.skip)(s->io_user_data, n - blen); + return; + } + } + s->img_buffer += n; +} +#endif + +#if defined(STBI_NO_PNG) && defined(STBI_NO_TGA) && defined(STBI_NO_HDR) && defined(STBI_NO_PNM) +// nothing +#else +static int stbi__getn(stbi__context *s, stbi_uc *buffer, int n) +{ + if (s->io.read) { + int blen = (int) (s->img_buffer_end - s->img_buffer); + if (blen < n) { + int res, count; + + memcpy(buffer, s->img_buffer, blen); + + count = (s->io.read)(s->io_user_data, (char*) buffer + blen, n - blen); + res = (count == (n-blen)); + s->img_buffer = s->img_buffer_end; + return res; + } + } + + if (s->img_buffer+n <= s->img_buffer_end) { + memcpy(buffer, s->img_buffer, n); + s->img_buffer += n; + return 1; + } else + return 0; +} +#endif + +#if defined(STBI_NO_JPEG) && defined(STBI_NO_PNG) && defined(STBI_NO_PSD) && defined(STBI_NO_PIC) +// nothing +#else +static int stbi__get16be(stbi__context *s) +{ + int z = stbi__get8(s); + return (z << 8) + stbi__get8(s); +} +#endif + +#if defined(STBI_NO_PNG) && defined(STBI_NO_PSD) && defined(STBI_NO_PIC) +// nothing +#else +static stbi__uint32 stbi__get32be(stbi__context *s) +{ + stbi__uint32 z = stbi__get16be(s); + return (z << 16) + stbi__get16be(s); +} +#endif + +#if defined(STBI_NO_BMP) && defined(STBI_NO_TGA) && defined(STBI_NO_GIF) +// nothing +#else +static int stbi__get16le(stbi__context *s) +{ + int z = stbi__get8(s); + return z + (stbi__get8(s) << 8); +} +#endif + +#ifndef STBI_NO_BMP +static stbi__uint32 stbi__get32le(stbi__context *s) +{ + stbi__uint32 z = stbi__get16le(s); + z += (stbi__uint32)stbi__get16le(s) << 16; + return z; +} +#endif + +#define STBI__BYTECAST(x) ((stbi_uc) ((x) & 255)) // truncate int to byte without warnings + +#if defined(STBI_NO_JPEG) && defined(STBI_NO_PNG) && defined(STBI_NO_BMP) && defined(STBI_NO_PSD) && defined(STBI_NO_TGA) && defined(STBI_NO_GIF) && defined(STBI_NO_PIC) && defined(STBI_NO_PNM) +// nothing +#else +////////////////////////////////////////////////////////////////////////////// +// +// generic converter from built-in img_n to req_comp +// individual types do this automatically as much as possible (e.g. jpeg +// does all cases internally since it needs to colorspace convert anyway, +// and it never has alpha, so very few cases ). png can automatically +// interleave an alpha=255 channel, but falls back to this for other cases +// +// assume data buffer is malloced, so malloc a new one and free that one +// only failure mode is malloc failing + +static stbi_uc stbi__compute_y(int r, int g, int b) +{ + return (stbi_uc) (((r*77) + (g*150) + (29*b)) >> 8); +} +#endif + +#if defined(STBI_NO_PNG) && defined(STBI_NO_BMP) && defined(STBI_NO_PSD) && defined(STBI_NO_TGA) && defined(STBI_NO_GIF) && defined(STBI_NO_PIC) && defined(STBI_NO_PNM) +// nothing +#else +static unsigned char *stbi__convert_format(unsigned char *data, int img_n, int req_comp, unsigned int x, unsigned int y) +{ + int i,j; + unsigned char *good; + + if (req_comp == img_n) return data; + STBI_ASSERT(req_comp >= 1 && req_comp <= 4); + + good = (unsigned char *) stbi__malloc_mad3(req_comp, x, y, 0); + if (good == NULL) { + STBI_FREE(data); + return stbi__errpuc("outofmem", "Out of memory"); + } + + for (j=0; j < (int) y; ++j) { + unsigned char *src = data + j * x * img_n ; + unsigned char *dest = good + j * x * req_comp; + + #define STBI__COMBO(a,b) ((a)*8+(b)) + #define STBI__CASE(a,b) case STBI__COMBO(a,b): for(i=x-1; i >= 0; --i, src += a, dest += b) + // convert source image with img_n components to one with req_comp components; + // avoid switch per pixel, so use switch per scanline and massive macros + switch (STBI__COMBO(img_n, req_comp)) { + STBI__CASE(1,2) { dest[0]=src[0]; dest[1]=255; } break; + STBI__CASE(1,3) { dest[0]=dest[1]=dest[2]=src[0]; } break; + STBI__CASE(1,4) { dest[0]=dest[1]=dest[2]=src[0]; dest[3]=255; } break; + STBI__CASE(2,1) { dest[0]=src[0]; } break; + STBI__CASE(2,3) { dest[0]=dest[1]=dest[2]=src[0]; } break; + STBI__CASE(2,4) { dest[0]=dest[1]=dest[2]=src[0]; dest[3]=src[1]; } break; + STBI__CASE(3,4) { dest[0]=src[0];dest[1]=src[1];dest[2]=src[2];dest[3]=255; } break; + STBI__CASE(3,1) { dest[0]=stbi__compute_y(src[0],src[1],src[2]); } break; + STBI__CASE(3,2) { dest[0]=stbi__compute_y(src[0],src[1],src[2]); dest[1] = 255; } break; + STBI__CASE(4,1) { dest[0]=stbi__compute_y(src[0],src[1],src[2]); } break; + STBI__CASE(4,2) { dest[0]=stbi__compute_y(src[0],src[1],src[2]); dest[1] = src[3]; } break; + STBI__CASE(4,3) { dest[0]=src[0];dest[1]=src[1];dest[2]=src[2]; } break; + default: STBI_ASSERT(0); STBI_FREE(data); STBI_FREE(good); return stbi__errpuc("unsupported", "Unsupported format conversion"); + } + #undef STBI__CASE + } + + STBI_FREE(data); + return good; +} +#endif + +#if defined(STBI_NO_PNG) && defined(STBI_NO_PSD) +// nothing +#else +static stbi__uint16 stbi__compute_y_16(int r, int g, int b) +{ + return (stbi__uint16) (((r*77) + (g*150) + (29*b)) >> 8); +} +#endif + +#if defined(STBI_NO_PNG) && defined(STBI_NO_PSD) +// nothing +#else +static stbi__uint16 *stbi__convert_format16(stbi__uint16 *data, int img_n, int req_comp, unsigned int x, unsigned int y) +{ + int i,j; + stbi__uint16 *good; + + if (req_comp == img_n) return data; + STBI_ASSERT(req_comp >= 1 && req_comp <= 4); + + good = (stbi__uint16 *) stbi__malloc(req_comp * x * y * 2); + if (good == NULL) { + STBI_FREE(data); + return (stbi__uint16 *) stbi__errpuc("outofmem", "Out of memory"); + } + + for (j=0; j < (int) y; ++j) { + stbi__uint16 *src = data + j * x * img_n ; + stbi__uint16 *dest = good + j * x * req_comp; + + #define STBI__COMBO(a,b) ((a)*8+(b)) + #define STBI__CASE(a,b) case STBI__COMBO(a,b): for(i=x-1; i >= 0; --i, src += a, dest += b) + // convert source image with img_n components to one with req_comp components; + // avoid switch per pixel, so use switch per scanline and massive macros + switch (STBI__COMBO(img_n, req_comp)) { + STBI__CASE(1,2) { dest[0]=src[0]; dest[1]=0xffff; } break; + STBI__CASE(1,3) { dest[0]=dest[1]=dest[2]=src[0]; } break; + STBI__CASE(1,4) { dest[0]=dest[1]=dest[2]=src[0]; dest[3]=0xffff; } break; + STBI__CASE(2,1) { dest[0]=src[0]; } break; + STBI__CASE(2,3) { dest[0]=dest[1]=dest[2]=src[0]; } break; + STBI__CASE(2,4) { dest[0]=dest[1]=dest[2]=src[0]; dest[3]=src[1]; } break; + STBI__CASE(3,4) { dest[0]=src[0];dest[1]=src[1];dest[2]=src[2];dest[3]=0xffff; } break; + STBI__CASE(3,1) { dest[0]=stbi__compute_y_16(src[0],src[1],src[2]); } break; + STBI__CASE(3,2) { dest[0]=stbi__compute_y_16(src[0],src[1],src[2]); dest[1] = 0xffff; } break; + STBI__CASE(4,1) { dest[0]=stbi__compute_y_16(src[0],src[1],src[2]); } break; + STBI__CASE(4,2) { dest[0]=stbi__compute_y_16(src[0],src[1],src[2]); dest[1] = src[3]; } break; + STBI__CASE(4,3) { dest[0]=src[0];dest[1]=src[1];dest[2]=src[2]; } break; + default: STBI_ASSERT(0); STBI_FREE(data); STBI_FREE(good); return (stbi__uint16*) stbi__errpuc("unsupported", "Unsupported format conversion"); + } + #undef STBI__CASE + } + + STBI_FREE(data); + return good; +} +#endif + +#ifndef STBI_NO_LINEAR +static float *stbi__ldr_to_hdr(stbi_uc *data, int x, int y, int comp) +{ + int i,k,n; + float *output; + if (!data) return NULL; + output = (float *) stbi__malloc_mad4(x, y, comp, sizeof(float), 0); + if (output == NULL) { STBI_FREE(data); return stbi__errpf("outofmem", "Out of memory"); } + // compute number of non-alpha components + if (comp & 1) n = comp; else n = comp-1; + for (i=0; i < x*y; ++i) { + for (k=0; k < n; ++k) { + output[i*comp + k] = (float) (pow(data[i*comp+k]/255.0f, stbi__l2h_gamma) * stbi__l2h_scale); + } + } + if (n < comp) { + for (i=0; i < x*y; ++i) { + output[i*comp + n] = data[i*comp + n]/255.0f; + } + } + STBI_FREE(data); + return output; +} +#endif + +#ifndef STBI_NO_HDR +#define stbi__float2int(x) ((int) (x)) +static stbi_uc *stbi__hdr_to_ldr(float *data, int x, int y, int comp) +{ + int i,k,n; + stbi_uc *output; + if (!data) return NULL; + output = (stbi_uc *) stbi__malloc_mad3(x, y, comp, 0); + if (output == NULL) { STBI_FREE(data); return stbi__errpuc("outofmem", "Out of memory"); } + // compute number of non-alpha components + if (comp & 1) n = comp; else n = comp-1; + for (i=0; i < x*y; ++i) { + for (k=0; k < n; ++k) { + float z = (float) pow(data[i*comp+k]*stbi__h2l_scale_i, stbi__h2l_gamma_i) * 255 + 0.5f; + if (z < 0) z = 0; + if (z > 255) z = 255; + output[i*comp + k] = (stbi_uc) stbi__float2int(z); + } + if (k < comp) { + float z = data[i*comp+k] * 255 + 0.5f; + if (z < 0) z = 0; + if (z > 255) z = 255; + output[i*comp + k] = (stbi_uc) stbi__float2int(z); + } + } + STBI_FREE(data); + return output; +} +#endif + +////////////////////////////////////////////////////////////////////////////// +// +// "baseline" JPEG/JFIF decoder +// +// simple implementation +// - doesn't support delayed output of y-dimension +// - simple interface (only one output format: 8-bit interleaved RGB) +// - doesn't try to recover corrupt jpegs +// - doesn't allow partial loading, loading multiple at once +// - still fast on x86 (copying globals into locals doesn't help x86) +// - allocates lots of intermediate memory (full size of all components) +// - non-interleaved case requires this anyway +// - allows good upsampling (see next) +// high-quality +// - upsampled channels are bilinearly interpolated, even across blocks +// - quality integer IDCT derived from IJG's 'slow' +// performance +// - fast huffman; reasonable integer IDCT +// - some SIMD kernels for common paths on targets with SSE2/NEON +// - uses a lot of intermediate memory, could cache poorly + +#ifndef STBI_NO_JPEG + +// huffman decoding acceleration +#define FAST_BITS 9 // larger handles more cases; smaller stomps less cache + +typedef struct +{ + stbi_uc fast[1 << FAST_BITS]; + // weirdly, repacking this into AoS is a 10% speed loss, instead of a win + stbi__uint16 code[256]; + stbi_uc values[256]; + stbi_uc size[257]; + unsigned int maxcode[18]; + int delta[17]; // old 'firstsymbol' - old 'firstcode' +} stbi__huffman; + +typedef struct +{ + stbi__context *s; + stbi__huffman huff_dc[4]; + stbi__huffman huff_ac[4]; + stbi__uint16 dequant[4][64]; + stbi__int16 fast_ac[4][1 << FAST_BITS]; + +// sizes for components, interleaved MCUs + int img_h_max, img_v_max; + int img_mcu_x, img_mcu_y; + int img_mcu_w, img_mcu_h; + +// definition of jpeg image component + struct + { + int id; + int h,v; + int tq; + int hd,ha; + int dc_pred; + + int x,y,w2,h2; + stbi_uc *data; + void *raw_data, *raw_coeff; + stbi_uc *linebuf; + short *coeff; // progressive only + int coeff_w, coeff_h; // number of 8x8 coefficient blocks + } img_comp[4]; + + stbi__uint32 code_buffer; // jpeg entropy-coded buffer + int code_bits; // number of valid bits + unsigned char marker; // marker seen while filling entropy buffer + int nomore; // flag if we saw a marker so must stop + + int progressive; + int spec_start; + int spec_end; + int succ_high; + int succ_low; + int eob_run; + int jfif; + int app14_color_transform; // Adobe APP14 tag + int rgb; + + int scan_n, order[4]; + int restart_interval, todo; + +// kernels + void (*idct_block_kernel)(stbi_uc *out, int out_stride, short data[64]); + void (*YCbCr_to_RGB_kernel)(stbi_uc *out, const stbi_uc *y, const stbi_uc *pcb, const stbi_uc *pcr, int count, int step); + stbi_uc *(*resample_row_hv_2_kernel)(stbi_uc *out, stbi_uc *in_near, stbi_uc *in_far, int w, int hs); +} stbi__jpeg; + +static int stbi__build_huffman(stbi__huffman *h, int *count) +{ + int i,j,k=0; + unsigned int code; + // build size list for each symbol (from JPEG spec) + for (i=0; i < 16; ++i) { + for (j=0; j < count[i]; ++j) { + h->size[k++] = (stbi_uc) (i+1); + if(k >= 257) return stbi__err("bad size list","Corrupt JPEG"); + } + } + h->size[k] = 0; + + // compute actual symbols (from jpeg spec) + code = 0; + k = 0; + for(j=1; j <= 16; ++j) { + // compute delta to add to code to compute symbol id + h->delta[j] = k - code; + if (h->size[k] == j) { + while (h->size[k] == j) + h->code[k++] = (stbi__uint16) (code++); + if (code-1 >= (1u << j)) return stbi__err("bad code lengths","Corrupt JPEG"); + } + // compute largest code + 1 for this size, preshifted as needed later + h->maxcode[j] = code << (16-j); + code <<= 1; + } + h->maxcode[j] = 0xffffffff; + + // build non-spec acceleration table; 255 is flag for not-accelerated + memset(h->fast, 255, 1 << FAST_BITS); + for (i=0; i < k; ++i) { + int s = h->size[i]; + if (s <= FAST_BITS) { + int c = h->code[i] << (FAST_BITS-s); + int m = 1 << (FAST_BITS-s); + for (j=0; j < m; ++j) { + h->fast[c+j] = (stbi_uc) i; + } + } + } + return 1; +} + +// build a table that decodes both magnitude and value of small ACs in +// one go. +static void stbi__build_fast_ac(stbi__int16 *fast_ac, stbi__huffman *h) +{ + int i; + for (i=0; i < (1 << FAST_BITS); ++i) { + stbi_uc fast = h->fast[i]; + fast_ac[i] = 0; + if (fast < 255) { + int rs = h->values[fast]; + int run = (rs >> 4) & 15; + int magbits = rs & 15; + int len = h->size[fast]; + + if (magbits && len + magbits <= FAST_BITS) { + // magnitude code followed by receive_extend code + int k = ((i << len) & ((1 << FAST_BITS) - 1)) >> (FAST_BITS - magbits); + int m = 1 << (magbits - 1); + if (k < m) k += (~0U << magbits) + 1; + // if the result is small enough, we can fit it in fast_ac table + if (k >= -128 && k <= 127) + fast_ac[i] = (stbi__int16) ((k * 256) + (run * 16) + (len + magbits)); + } + } + } +} + +static void stbi__grow_buffer_unsafe(stbi__jpeg *j) +{ + do { + unsigned int b = j->nomore ? 0 : stbi__get8(j->s); + if (b == 0xff) { + int c = stbi__get8(j->s); + while (c == 0xff) c = stbi__get8(j->s); // consume fill bytes + if (c != 0) { + j->marker = (unsigned char) c; + j->nomore = 1; + return; + } + } + j->code_buffer |= b << (24 - j->code_bits); + j->code_bits += 8; + } while (j->code_bits <= 24); +} + +// (1 << n) - 1 +static const stbi__uint32 stbi__bmask[17]={0,1,3,7,15,31,63,127,255,511,1023,2047,4095,8191,16383,32767,65535}; + +// decode a jpeg huffman value from the bitstream +stbi_inline static int stbi__jpeg_huff_decode(stbi__jpeg *j, stbi__huffman *h) +{ + unsigned int temp; + int c,k; + + if (j->code_bits < 16) stbi__grow_buffer_unsafe(j); + + // look at the top FAST_BITS and determine what symbol ID it is, + // if the code is <= FAST_BITS + c = (j->code_buffer >> (32 - FAST_BITS)) & ((1 << FAST_BITS)-1); + k = h->fast[c]; + if (k < 255) { + int s = h->size[k]; + if (s > j->code_bits) + return -1; + j->code_buffer <<= s; + j->code_bits -= s; + return h->values[k]; + } + + // naive test is to shift the code_buffer down so k bits are + // valid, then test against maxcode. To speed this up, we've + // preshifted maxcode left so that it has (16-k) 0s at the + // end; in other words, regardless of the number of bits, it + // wants to be compared against something shifted to have 16; + // that way we don't need to shift inside the loop. + temp = j->code_buffer >> 16; + for (k=FAST_BITS+1 ; ; ++k) + if (temp < h->maxcode[k]) + break; + if (k == 17) { + // error! code not found + j->code_bits -= 16; + return -1; + } + + if (k > j->code_bits) + return -1; + + // convert the huffman code to the symbol id + c = ((j->code_buffer >> (32 - k)) & stbi__bmask[k]) + h->delta[k]; + if(c < 0 || c >= 256) // symbol id out of bounds! + return -1; + STBI_ASSERT((((j->code_buffer) >> (32 - h->size[c])) & stbi__bmask[h->size[c]]) == h->code[c]); + + // convert the id to a symbol + j->code_bits -= k; + j->code_buffer <<= k; + return h->values[c]; +} + +// bias[n] = (-1<code_bits < n) stbi__grow_buffer_unsafe(j); + if (j->code_bits < n) return 0; // ran out of bits from stream, return 0s intead of continuing + + sgn = j->code_buffer >> 31; // sign bit always in MSB; 0 if MSB clear (positive), 1 if MSB set (negative) + k = stbi_lrot(j->code_buffer, n); + j->code_buffer = k & ~stbi__bmask[n]; + k &= stbi__bmask[n]; + j->code_bits -= n; + return k + (stbi__jbias[n] & (sgn - 1)); +} + +// get some unsigned bits +stbi_inline static int stbi__jpeg_get_bits(stbi__jpeg *j, int n) +{ + unsigned int k; + if (j->code_bits < n) stbi__grow_buffer_unsafe(j); + if (j->code_bits < n) return 0; // ran out of bits from stream, return 0s intead of continuing + k = stbi_lrot(j->code_buffer, n); + j->code_buffer = k & ~stbi__bmask[n]; + k &= stbi__bmask[n]; + j->code_bits -= n; + return k; +} + +stbi_inline static int stbi__jpeg_get_bit(stbi__jpeg *j) +{ + unsigned int k; + if (j->code_bits < 1) stbi__grow_buffer_unsafe(j); + if (j->code_bits < 1) return 0; // ran out of bits from stream, return 0s intead of continuing + k = j->code_buffer; + j->code_buffer <<= 1; + --j->code_bits; + return k & 0x80000000; +} + +// given a value that's at position X in the zigzag stream, +// where does it appear in the 8x8 matrix coded as row-major? +static const stbi_uc stbi__jpeg_dezigzag[64+15] = +{ + 0, 1, 8, 16, 9, 2, 3, 10, + 17, 24, 32, 25, 18, 11, 4, 5, + 12, 19, 26, 33, 40, 48, 41, 34, + 27, 20, 13, 6, 7, 14, 21, 28, + 35, 42, 49, 56, 57, 50, 43, 36, + 29, 22, 15, 23, 30, 37, 44, 51, + 58, 59, 52, 45, 38, 31, 39, 46, + 53, 60, 61, 54, 47, 55, 62, 63, + // let corrupt input sample past end + 63, 63, 63, 63, 63, 63, 63, 63, + 63, 63, 63, 63, 63, 63, 63 +}; + +// decode one 64-entry block-- +static int stbi__jpeg_decode_block(stbi__jpeg *j, short data[64], stbi__huffman *hdc, stbi__huffman *hac, stbi__int16 *fac, int b, stbi__uint16 *dequant) +{ + int diff,dc,k; + int t; + + if (j->code_bits < 16) stbi__grow_buffer_unsafe(j); + t = stbi__jpeg_huff_decode(j, hdc); + if (t < 0 || t > 15) return stbi__err("bad huffman code","Corrupt JPEG"); + + // 0 all the ac values now so we can do it 32-bits at a time + memset(data,0,64*sizeof(data[0])); + + diff = t ? stbi__extend_receive(j, t) : 0; + if (!stbi__addints_valid(j->img_comp[b].dc_pred, diff)) return stbi__err("bad delta","Corrupt JPEG"); + dc = j->img_comp[b].dc_pred + diff; + j->img_comp[b].dc_pred = dc; + if (!stbi__mul2shorts_valid(dc, dequant[0])) return stbi__err("can't merge dc and ac", "Corrupt JPEG"); + data[0] = (short) (dc * dequant[0]); + + // decode AC components, see JPEG spec + k = 1; + do { + unsigned int zig; + int c,r,s; + if (j->code_bits < 16) stbi__grow_buffer_unsafe(j); + c = (j->code_buffer >> (32 - FAST_BITS)) & ((1 << FAST_BITS)-1); + r = fac[c]; + if (r) { // fast-AC path + k += (r >> 4) & 15; // run + s = r & 15; // combined length + if (s > j->code_bits) return stbi__err("bad huffman code", "Combined length longer than code bits available"); + j->code_buffer <<= s; + j->code_bits -= s; + // decode into unzigzag'd location + zig = stbi__jpeg_dezigzag[k++]; + data[zig] = (short) ((r >> 8) * dequant[zig]); + } else { + int rs = stbi__jpeg_huff_decode(j, hac); + if (rs < 0) return stbi__err("bad huffman code","Corrupt JPEG"); + s = rs & 15; + r = rs >> 4; + if (s == 0) { + if (rs != 0xf0) break; // end block + k += 16; + } else { + k += r; + // decode into unzigzag'd location + zig = stbi__jpeg_dezigzag[k++]; + data[zig] = (short) (stbi__extend_receive(j,s) * dequant[zig]); + } + } + } while (k < 64); + return 1; +} + +static int stbi__jpeg_decode_block_prog_dc(stbi__jpeg *j, short data[64], stbi__huffman *hdc, int b) +{ + int diff,dc; + int t; + if (j->spec_end != 0) return stbi__err("can't merge dc and ac", "Corrupt JPEG"); + + if (j->code_bits < 16) stbi__grow_buffer_unsafe(j); + + if (j->succ_high == 0) { + // first scan for DC coefficient, must be first + memset(data,0,64*sizeof(data[0])); // 0 all the ac values now + t = stbi__jpeg_huff_decode(j, hdc); + if (t < 0 || t > 15) return stbi__err("can't merge dc and ac", "Corrupt JPEG"); + diff = t ? stbi__extend_receive(j, t) : 0; + + if (!stbi__addints_valid(j->img_comp[b].dc_pred, diff)) return stbi__err("bad delta", "Corrupt JPEG"); + dc = j->img_comp[b].dc_pred + diff; + j->img_comp[b].dc_pred = dc; + if (!stbi__mul2shorts_valid(dc, 1 << j->succ_low)) return stbi__err("can't merge dc and ac", "Corrupt JPEG"); + data[0] = (short) (dc * (1 << j->succ_low)); + } else { + // refinement scan for DC coefficient + if (stbi__jpeg_get_bit(j)) + data[0] += (short) (1 << j->succ_low); + } + return 1; +} + +// @OPTIMIZE: store non-zigzagged during the decode passes, +// and only de-zigzag when dequantizing +static int stbi__jpeg_decode_block_prog_ac(stbi__jpeg *j, short data[64], stbi__huffman *hac, stbi__int16 *fac) +{ + int k; + if (j->spec_start == 0) return stbi__err("can't merge dc and ac", "Corrupt JPEG"); + + if (j->succ_high == 0) { + int shift = j->succ_low; + + if (j->eob_run) { + --j->eob_run; + return 1; + } + + k = j->spec_start; + do { + unsigned int zig; + int c,r,s; + if (j->code_bits < 16) stbi__grow_buffer_unsafe(j); + c = (j->code_buffer >> (32 - FAST_BITS)) & ((1 << FAST_BITS)-1); + r = fac[c]; + if (r) { // fast-AC path + k += (r >> 4) & 15; // run + s = r & 15; // combined length + if (s > j->code_bits) return stbi__err("bad huffman code", "Combined length longer than code bits available"); + j->code_buffer <<= s; + j->code_bits -= s; + zig = stbi__jpeg_dezigzag[k++]; + data[zig] = (short) ((r >> 8) * (1 << shift)); + } else { + int rs = stbi__jpeg_huff_decode(j, hac); + if (rs < 0) return stbi__err("bad huffman code","Corrupt JPEG"); + s = rs & 15; + r = rs >> 4; + if (s == 0) { + if (r < 15) { + j->eob_run = (1 << r); + if (r) + j->eob_run += stbi__jpeg_get_bits(j, r); + --j->eob_run; + break; + } + k += 16; + } else { + k += r; + zig = stbi__jpeg_dezigzag[k++]; + data[zig] = (short) (stbi__extend_receive(j,s) * (1 << shift)); + } + } + } while (k <= j->spec_end); + } else { + // refinement scan for these AC coefficients + + short bit = (short) (1 << j->succ_low); + + if (j->eob_run) { + --j->eob_run; + for (k = j->spec_start; k <= j->spec_end; ++k) { + short *p = &data[stbi__jpeg_dezigzag[k]]; + if (*p != 0) + if (stbi__jpeg_get_bit(j)) + if ((*p & bit)==0) { + if (*p > 0) + *p += bit; + else + *p -= bit; + } + } + } else { + k = j->spec_start; + do { + int r,s; + int rs = stbi__jpeg_huff_decode(j, hac); // @OPTIMIZE see if we can use the fast path here, advance-by-r is so slow, eh + if (rs < 0) return stbi__err("bad huffman code","Corrupt JPEG"); + s = rs & 15; + r = rs >> 4; + if (s == 0) { + if (r < 15) { + j->eob_run = (1 << r) - 1; + if (r) + j->eob_run += stbi__jpeg_get_bits(j, r); + r = 64; // force end of block + } else { + // r=15 s=0 should write 16 0s, so we just do + // a run of 15 0s and then write s (which is 0), + // so we don't have to do anything special here + } + } else { + if (s != 1) return stbi__err("bad huffman code", "Corrupt JPEG"); + // sign bit + if (stbi__jpeg_get_bit(j)) + s = bit; + else + s = -bit; + } + + // advance by r + while (k <= j->spec_end) { + short *p = &data[stbi__jpeg_dezigzag[k++]]; + if (*p != 0) { + if (stbi__jpeg_get_bit(j)) + if ((*p & bit)==0) { + if (*p > 0) + *p += bit; + else + *p -= bit; + } + } else { + if (r == 0) { + *p = (short) s; + break; + } + --r; + } + } + } while (k <= j->spec_end); + } + } + return 1; +} + +// take a -128..127 value and stbi__clamp it and convert to 0..255 +stbi_inline static stbi_uc stbi__clamp(int x) +{ + // trick to use a single test to catch both cases + if ((unsigned int) x > 255) { + if (x < 0) return 0; + if (x > 255) return 255; + } + return (stbi_uc) x; +} + +#define stbi__f2f(x) ((int) (((x) * 4096 + 0.5))) +#define stbi__fsh(x) ((x) * 4096) + +// derived from jidctint -- DCT_ISLOW +#define STBI__IDCT_1D(s0,s1,s2,s3,s4,s5,s6,s7) \ + int t0,t1,t2,t3,p1,p2,p3,p4,p5,x0,x1,x2,x3; \ + p2 = s2; \ + p3 = s6; \ + p1 = (p2+p3) * stbi__f2f(0.5411961f); \ + t2 = p1 + p3*stbi__f2f(-1.847759065f); \ + t3 = p1 + p2*stbi__f2f( 0.765366865f); \ + p2 = s0; \ + p3 = s4; \ + t0 = stbi__fsh(p2+p3); \ + t1 = stbi__fsh(p2-p3); \ + x0 = t0+t3; \ + x3 = t0-t3; \ + x1 = t1+t2; \ + x2 = t1-t2; \ + t0 = s7; \ + t1 = s5; \ + t2 = s3; \ + t3 = s1; \ + p3 = t0+t2; \ + p4 = t1+t3; \ + p1 = t0+t3; \ + p2 = t1+t2; \ + p5 = (p3+p4)*stbi__f2f( 1.175875602f); \ + t0 = t0*stbi__f2f( 0.298631336f); \ + t1 = t1*stbi__f2f( 2.053119869f); \ + t2 = t2*stbi__f2f( 3.072711026f); \ + t3 = t3*stbi__f2f( 1.501321110f); \ + p1 = p5 + p1*stbi__f2f(-0.899976223f); \ + p2 = p5 + p2*stbi__f2f(-2.562915447f); \ + p3 = p3*stbi__f2f(-1.961570560f); \ + p4 = p4*stbi__f2f(-0.390180644f); \ + t3 += p1+p4; \ + t2 += p2+p3; \ + t1 += p2+p4; \ + t0 += p1+p3; + +static void stbi__idct_block(stbi_uc *out, int out_stride, short data[64]) +{ + int i,val[64],*v=val; + stbi_uc *o; + short *d = data; + + // columns + for (i=0; i < 8; ++i,++d, ++v) { + // if all zeroes, shortcut -- this avoids dequantizing 0s and IDCTing + if (d[ 8]==0 && d[16]==0 && d[24]==0 && d[32]==0 + && d[40]==0 && d[48]==0 && d[56]==0) { + // no shortcut 0 seconds + // (1|2|3|4|5|6|7)==0 0 seconds + // all separate -0.047 seconds + // 1 && 2|3 && 4|5 && 6|7: -0.047 seconds + int dcterm = d[0]*4; + v[0] = v[8] = v[16] = v[24] = v[32] = v[40] = v[48] = v[56] = dcterm; + } else { + STBI__IDCT_1D(d[ 0],d[ 8],d[16],d[24],d[32],d[40],d[48],d[56]) + // constants scaled things up by 1<<12; let's bring them back + // down, but keep 2 extra bits of precision + x0 += 512; x1 += 512; x2 += 512; x3 += 512; + v[ 0] = (x0+t3) >> 10; + v[56] = (x0-t3) >> 10; + v[ 8] = (x1+t2) >> 10; + v[48] = (x1-t2) >> 10; + v[16] = (x2+t1) >> 10; + v[40] = (x2-t1) >> 10; + v[24] = (x3+t0) >> 10; + v[32] = (x3-t0) >> 10; + } + } + + for (i=0, v=val, o=out; i < 8; ++i,v+=8,o+=out_stride) { + // no fast case since the first 1D IDCT spread components out + STBI__IDCT_1D(v[0],v[1],v[2],v[3],v[4],v[5],v[6],v[7]) + // constants scaled things up by 1<<12, plus we had 1<<2 from first + // loop, plus horizontal and vertical each scale by sqrt(8) so together + // we've got an extra 1<<3, so 1<<17 total we need to remove. + // so we want to round that, which means adding 0.5 * 1<<17, + // aka 65536. Also, we'll end up with -128 to 127 that we want + // to encode as 0..255 by adding 128, so we'll add that before the shift + x0 += 65536 + (128<<17); + x1 += 65536 + (128<<17); + x2 += 65536 + (128<<17); + x3 += 65536 + (128<<17); + // tried computing the shifts into temps, or'ing the temps to see + // if any were out of range, but that was slower + o[0] = stbi__clamp((x0+t3) >> 17); + o[7] = stbi__clamp((x0-t3) >> 17); + o[1] = stbi__clamp((x1+t2) >> 17); + o[6] = stbi__clamp((x1-t2) >> 17); + o[2] = stbi__clamp((x2+t1) >> 17); + o[5] = stbi__clamp((x2-t1) >> 17); + o[3] = stbi__clamp((x3+t0) >> 17); + o[4] = stbi__clamp((x3-t0) >> 17); + } +} + +#ifdef STBI_SSE2 +// sse2 integer IDCT. not the fastest possible implementation but it +// produces bit-identical results to the generic C version so it's +// fully "transparent". +static void stbi__idct_simd(stbi_uc *out, int out_stride, short data[64]) +{ + // This is constructed to match our regular (generic) integer IDCT exactly. + __m128i row0, row1, row2, row3, row4, row5, row6, row7; + __m128i tmp; + + // dot product constant: even elems=x, odd elems=y + #define dct_const(x,y) _mm_setr_epi16((x),(y),(x),(y),(x),(y),(x),(y)) + + // out(0) = c0[even]*x + c0[odd]*y (c0, x, y 16-bit, out 32-bit) + // out(1) = c1[even]*x + c1[odd]*y + #define dct_rot(out0,out1, x,y,c0,c1) \ + __m128i c0##lo = _mm_unpacklo_epi16((x),(y)); \ + __m128i c0##hi = _mm_unpackhi_epi16((x),(y)); \ + __m128i out0##_l = _mm_madd_epi16(c0##lo, c0); \ + __m128i out0##_h = _mm_madd_epi16(c0##hi, c0); \ + __m128i out1##_l = _mm_madd_epi16(c0##lo, c1); \ + __m128i out1##_h = _mm_madd_epi16(c0##hi, c1) + + // out = in << 12 (in 16-bit, out 32-bit) + #define dct_widen(out, in) \ + __m128i out##_l = _mm_srai_epi32(_mm_unpacklo_epi16(_mm_setzero_si128(), (in)), 4); \ + __m128i out##_h = _mm_srai_epi32(_mm_unpackhi_epi16(_mm_setzero_si128(), (in)), 4) + + // wide add + #define dct_wadd(out, a, b) \ + __m128i out##_l = _mm_add_epi32(a##_l, b##_l); \ + __m128i out##_h = _mm_add_epi32(a##_h, b##_h) + + // wide sub + #define dct_wsub(out, a, b) \ + __m128i out##_l = _mm_sub_epi32(a##_l, b##_l); \ + __m128i out##_h = _mm_sub_epi32(a##_h, b##_h) + + // butterfly a/b, add bias, then shift by "s" and pack + #define dct_bfly32o(out0, out1, a,b,bias,s) \ + { \ + __m128i abiased_l = _mm_add_epi32(a##_l, bias); \ + __m128i abiased_h = _mm_add_epi32(a##_h, bias); \ + dct_wadd(sum, abiased, b); \ + dct_wsub(dif, abiased, b); \ + out0 = _mm_packs_epi32(_mm_srai_epi32(sum_l, s), _mm_srai_epi32(sum_h, s)); \ + out1 = _mm_packs_epi32(_mm_srai_epi32(dif_l, s), _mm_srai_epi32(dif_h, s)); \ + } + + // 8-bit interleave step (for transposes) + #define dct_interleave8(a, b) \ + tmp = a; \ + a = _mm_unpacklo_epi8(a, b); \ + b = _mm_unpackhi_epi8(tmp, b) + + // 16-bit interleave step (for transposes) + #define dct_interleave16(a, b) \ + tmp = a; \ + a = _mm_unpacklo_epi16(a, b); \ + b = _mm_unpackhi_epi16(tmp, b) + + #define dct_pass(bias,shift) \ + { \ + /* even part */ \ + dct_rot(t2e,t3e, row2,row6, rot0_0,rot0_1); \ + __m128i sum04 = _mm_add_epi16(row0, row4); \ + __m128i dif04 = _mm_sub_epi16(row0, row4); \ + dct_widen(t0e, sum04); \ + dct_widen(t1e, dif04); \ + dct_wadd(x0, t0e, t3e); \ + dct_wsub(x3, t0e, t3e); \ + dct_wadd(x1, t1e, t2e); \ + dct_wsub(x2, t1e, t2e); \ + /* odd part */ \ + dct_rot(y0o,y2o, row7,row3, rot2_0,rot2_1); \ + dct_rot(y1o,y3o, row5,row1, rot3_0,rot3_1); \ + __m128i sum17 = _mm_add_epi16(row1, row7); \ + __m128i sum35 = _mm_add_epi16(row3, row5); \ + dct_rot(y4o,y5o, sum17,sum35, rot1_0,rot1_1); \ + dct_wadd(x4, y0o, y4o); \ + dct_wadd(x5, y1o, y5o); \ + dct_wadd(x6, y2o, y5o); \ + dct_wadd(x7, y3o, y4o); \ + dct_bfly32o(row0,row7, x0,x7,bias,shift); \ + dct_bfly32o(row1,row6, x1,x6,bias,shift); \ + dct_bfly32o(row2,row5, x2,x5,bias,shift); \ + dct_bfly32o(row3,row4, x3,x4,bias,shift); \ + } + + __m128i rot0_0 = dct_const(stbi__f2f(0.5411961f), stbi__f2f(0.5411961f) + stbi__f2f(-1.847759065f)); + __m128i rot0_1 = dct_const(stbi__f2f(0.5411961f) + stbi__f2f( 0.765366865f), stbi__f2f(0.5411961f)); + __m128i rot1_0 = dct_const(stbi__f2f(1.175875602f) + stbi__f2f(-0.899976223f), stbi__f2f(1.175875602f)); + __m128i rot1_1 = dct_const(stbi__f2f(1.175875602f), stbi__f2f(1.175875602f) + stbi__f2f(-2.562915447f)); + __m128i rot2_0 = dct_const(stbi__f2f(-1.961570560f) + stbi__f2f( 0.298631336f), stbi__f2f(-1.961570560f)); + __m128i rot2_1 = dct_const(stbi__f2f(-1.961570560f), stbi__f2f(-1.961570560f) + stbi__f2f( 3.072711026f)); + __m128i rot3_0 = dct_const(stbi__f2f(-0.390180644f) + stbi__f2f( 2.053119869f), stbi__f2f(-0.390180644f)); + __m128i rot3_1 = dct_const(stbi__f2f(-0.390180644f), stbi__f2f(-0.390180644f) + stbi__f2f( 1.501321110f)); + + // rounding biases in column/row passes, see stbi__idct_block for explanation. + __m128i bias_0 = _mm_set1_epi32(512); + __m128i bias_1 = _mm_set1_epi32(65536 + (128<<17)); + + // load + row0 = _mm_load_si128((const __m128i *) (data + 0*8)); + row1 = _mm_load_si128((const __m128i *) (data + 1*8)); + row2 = _mm_load_si128((const __m128i *) (data + 2*8)); + row3 = _mm_load_si128((const __m128i *) (data + 3*8)); + row4 = _mm_load_si128((const __m128i *) (data + 4*8)); + row5 = _mm_load_si128((const __m128i *) (data + 5*8)); + row6 = _mm_load_si128((const __m128i *) (data + 6*8)); + row7 = _mm_load_si128((const __m128i *) (data + 7*8)); + + // column pass + dct_pass(bias_0, 10); + + { + // 16bit 8x8 transpose pass 1 + dct_interleave16(row0, row4); + dct_interleave16(row1, row5); + dct_interleave16(row2, row6); + dct_interleave16(row3, row7); + + // transpose pass 2 + dct_interleave16(row0, row2); + dct_interleave16(row1, row3); + dct_interleave16(row4, row6); + dct_interleave16(row5, row7); + + // transpose pass 3 + dct_interleave16(row0, row1); + dct_interleave16(row2, row3); + dct_interleave16(row4, row5); + dct_interleave16(row6, row7); + } + + // row pass + dct_pass(bias_1, 17); + + { + // pack + __m128i p0 = _mm_packus_epi16(row0, row1); // a0a1a2a3...a7b0b1b2b3...b7 + __m128i p1 = _mm_packus_epi16(row2, row3); + __m128i p2 = _mm_packus_epi16(row4, row5); + __m128i p3 = _mm_packus_epi16(row6, row7); + + // 8bit 8x8 transpose pass 1 + dct_interleave8(p0, p2); // a0e0a1e1... + dct_interleave8(p1, p3); // c0g0c1g1... + + // transpose pass 2 + dct_interleave8(p0, p1); // a0c0e0g0... + dct_interleave8(p2, p3); // b0d0f0h0... + + // transpose pass 3 + dct_interleave8(p0, p2); // a0b0c0d0... + dct_interleave8(p1, p3); // a4b4c4d4... + + // store + _mm_storel_epi64((__m128i *) out, p0); out += out_stride; + _mm_storel_epi64((__m128i *) out, _mm_shuffle_epi32(p0, 0x4e)); out += out_stride; + _mm_storel_epi64((__m128i *) out, p2); out += out_stride; + _mm_storel_epi64((__m128i *) out, _mm_shuffle_epi32(p2, 0x4e)); out += out_stride; + _mm_storel_epi64((__m128i *) out, p1); out += out_stride; + _mm_storel_epi64((__m128i *) out, _mm_shuffle_epi32(p1, 0x4e)); out += out_stride; + _mm_storel_epi64((__m128i *) out, p3); out += out_stride; + _mm_storel_epi64((__m128i *) out, _mm_shuffle_epi32(p3, 0x4e)); + } + +#undef dct_const +#undef dct_rot +#undef dct_widen +#undef dct_wadd +#undef dct_wsub +#undef dct_bfly32o +#undef dct_interleave8 +#undef dct_interleave16 +#undef dct_pass +} + +#endif // STBI_SSE2 + +#ifdef STBI_NEON + +// NEON integer IDCT. should produce bit-identical +// results to the generic C version. +static void stbi__idct_simd(stbi_uc *out, int out_stride, short data[64]) +{ + int16x8_t row0, row1, row2, row3, row4, row5, row6, row7; + + int16x4_t rot0_0 = vdup_n_s16(stbi__f2f(0.5411961f)); + int16x4_t rot0_1 = vdup_n_s16(stbi__f2f(-1.847759065f)); + int16x4_t rot0_2 = vdup_n_s16(stbi__f2f( 0.765366865f)); + int16x4_t rot1_0 = vdup_n_s16(stbi__f2f( 1.175875602f)); + int16x4_t rot1_1 = vdup_n_s16(stbi__f2f(-0.899976223f)); + int16x4_t rot1_2 = vdup_n_s16(stbi__f2f(-2.562915447f)); + int16x4_t rot2_0 = vdup_n_s16(stbi__f2f(-1.961570560f)); + int16x4_t rot2_1 = vdup_n_s16(stbi__f2f(-0.390180644f)); + int16x4_t rot3_0 = vdup_n_s16(stbi__f2f( 0.298631336f)); + int16x4_t rot3_1 = vdup_n_s16(stbi__f2f( 2.053119869f)); + int16x4_t rot3_2 = vdup_n_s16(stbi__f2f( 3.072711026f)); + int16x4_t rot3_3 = vdup_n_s16(stbi__f2f( 1.501321110f)); + +#define dct_long_mul(out, inq, coeff) \ + int32x4_t out##_l = vmull_s16(vget_low_s16(inq), coeff); \ + int32x4_t out##_h = vmull_s16(vget_high_s16(inq), coeff) + +#define dct_long_mac(out, acc, inq, coeff) \ + int32x4_t out##_l = vmlal_s16(acc##_l, vget_low_s16(inq), coeff); \ + int32x4_t out##_h = vmlal_s16(acc##_h, vget_high_s16(inq), coeff) + +#define dct_widen(out, inq) \ + int32x4_t out##_l = vshll_n_s16(vget_low_s16(inq), 12); \ + int32x4_t out##_h = vshll_n_s16(vget_high_s16(inq), 12) + +// wide add +#define dct_wadd(out, a, b) \ + int32x4_t out##_l = vaddq_s32(a##_l, b##_l); \ + int32x4_t out##_h = vaddq_s32(a##_h, b##_h) + +// wide sub +#define dct_wsub(out, a, b) \ + int32x4_t out##_l = vsubq_s32(a##_l, b##_l); \ + int32x4_t out##_h = vsubq_s32(a##_h, b##_h) + +// butterfly a/b, then shift using "shiftop" by "s" and pack +#define dct_bfly32o(out0,out1, a,b,shiftop,s) \ + { \ + dct_wadd(sum, a, b); \ + dct_wsub(dif, a, b); \ + out0 = vcombine_s16(shiftop(sum_l, s), shiftop(sum_h, s)); \ + out1 = vcombine_s16(shiftop(dif_l, s), shiftop(dif_h, s)); \ + } + +#define dct_pass(shiftop, shift) \ + { \ + /* even part */ \ + int16x8_t sum26 = vaddq_s16(row2, row6); \ + dct_long_mul(p1e, sum26, rot0_0); \ + dct_long_mac(t2e, p1e, row6, rot0_1); \ + dct_long_mac(t3e, p1e, row2, rot0_2); \ + int16x8_t sum04 = vaddq_s16(row0, row4); \ + int16x8_t dif04 = vsubq_s16(row0, row4); \ + dct_widen(t0e, sum04); \ + dct_widen(t1e, dif04); \ + dct_wadd(x0, t0e, t3e); \ + dct_wsub(x3, t0e, t3e); \ + dct_wadd(x1, t1e, t2e); \ + dct_wsub(x2, t1e, t2e); \ + /* odd part */ \ + int16x8_t sum15 = vaddq_s16(row1, row5); \ + int16x8_t sum17 = vaddq_s16(row1, row7); \ + int16x8_t sum35 = vaddq_s16(row3, row5); \ + int16x8_t sum37 = vaddq_s16(row3, row7); \ + int16x8_t sumodd = vaddq_s16(sum17, sum35); \ + dct_long_mul(p5o, sumodd, rot1_0); \ + dct_long_mac(p1o, p5o, sum17, rot1_1); \ + dct_long_mac(p2o, p5o, sum35, rot1_2); \ + dct_long_mul(p3o, sum37, rot2_0); \ + dct_long_mul(p4o, sum15, rot2_1); \ + dct_wadd(sump13o, p1o, p3o); \ + dct_wadd(sump24o, p2o, p4o); \ + dct_wadd(sump23o, p2o, p3o); \ + dct_wadd(sump14o, p1o, p4o); \ + dct_long_mac(x4, sump13o, row7, rot3_0); \ + dct_long_mac(x5, sump24o, row5, rot3_1); \ + dct_long_mac(x6, sump23o, row3, rot3_2); \ + dct_long_mac(x7, sump14o, row1, rot3_3); \ + dct_bfly32o(row0,row7, x0,x7,shiftop,shift); \ + dct_bfly32o(row1,row6, x1,x6,shiftop,shift); \ + dct_bfly32o(row2,row5, x2,x5,shiftop,shift); \ + dct_bfly32o(row3,row4, x3,x4,shiftop,shift); \ + } + + // load + row0 = vld1q_s16(data + 0*8); + row1 = vld1q_s16(data + 1*8); + row2 = vld1q_s16(data + 2*8); + row3 = vld1q_s16(data + 3*8); + row4 = vld1q_s16(data + 4*8); + row5 = vld1q_s16(data + 5*8); + row6 = vld1q_s16(data + 6*8); + row7 = vld1q_s16(data + 7*8); + + // add DC bias + row0 = vaddq_s16(row0, vsetq_lane_s16(1024, vdupq_n_s16(0), 0)); + + // column pass + dct_pass(vrshrn_n_s32, 10); + + // 16bit 8x8 transpose + { +// these three map to a single VTRN.16, VTRN.32, and VSWP, respectively. +// whether compilers actually get this is another story, sadly. +#define dct_trn16(x, y) { int16x8x2_t t = vtrnq_s16(x, y); x = t.val[0]; y = t.val[1]; } +#define dct_trn32(x, y) { int32x4x2_t t = vtrnq_s32(vreinterpretq_s32_s16(x), vreinterpretq_s32_s16(y)); x = vreinterpretq_s16_s32(t.val[0]); y = vreinterpretq_s16_s32(t.val[1]); } +#define dct_trn64(x, y) { int16x8_t x0 = x; int16x8_t y0 = y; x = vcombine_s16(vget_low_s16(x0), vget_low_s16(y0)); y = vcombine_s16(vget_high_s16(x0), vget_high_s16(y0)); } + + // pass 1 + dct_trn16(row0, row1); // a0b0a2b2a4b4a6b6 + dct_trn16(row2, row3); + dct_trn16(row4, row5); + dct_trn16(row6, row7); + + // pass 2 + dct_trn32(row0, row2); // a0b0c0d0a4b4c4d4 + dct_trn32(row1, row3); + dct_trn32(row4, row6); + dct_trn32(row5, row7); + + // pass 3 + dct_trn64(row0, row4); // a0b0c0d0e0f0g0h0 + dct_trn64(row1, row5); + dct_trn64(row2, row6); + dct_trn64(row3, row7); + +#undef dct_trn16 +#undef dct_trn32 +#undef dct_trn64 + } + + // row pass + // vrshrn_n_s32 only supports shifts up to 16, we need + // 17. so do a non-rounding shift of 16 first then follow + // up with a rounding shift by 1. + dct_pass(vshrn_n_s32, 16); + + { + // pack and round + uint8x8_t p0 = vqrshrun_n_s16(row0, 1); + uint8x8_t p1 = vqrshrun_n_s16(row1, 1); + uint8x8_t p2 = vqrshrun_n_s16(row2, 1); + uint8x8_t p3 = vqrshrun_n_s16(row3, 1); + uint8x8_t p4 = vqrshrun_n_s16(row4, 1); + uint8x8_t p5 = vqrshrun_n_s16(row5, 1); + uint8x8_t p6 = vqrshrun_n_s16(row6, 1); + uint8x8_t p7 = vqrshrun_n_s16(row7, 1); + + // again, these can translate into one instruction, but often don't. +#define dct_trn8_8(x, y) { uint8x8x2_t t = vtrn_u8(x, y); x = t.val[0]; y = t.val[1]; } +#define dct_trn8_16(x, y) { uint16x4x2_t t = vtrn_u16(vreinterpret_u16_u8(x), vreinterpret_u16_u8(y)); x = vreinterpret_u8_u16(t.val[0]); y = vreinterpret_u8_u16(t.val[1]); } +#define dct_trn8_32(x, y) { uint32x2x2_t t = vtrn_u32(vreinterpret_u32_u8(x), vreinterpret_u32_u8(y)); x = vreinterpret_u8_u32(t.val[0]); y = vreinterpret_u8_u32(t.val[1]); } + + // sadly can't use interleaved stores here since we only write + // 8 bytes to each scan line! + + // 8x8 8-bit transpose pass 1 + dct_trn8_8(p0, p1); + dct_trn8_8(p2, p3); + dct_trn8_8(p4, p5); + dct_trn8_8(p6, p7); + + // pass 2 + dct_trn8_16(p0, p2); + dct_trn8_16(p1, p3); + dct_trn8_16(p4, p6); + dct_trn8_16(p5, p7); + + // pass 3 + dct_trn8_32(p0, p4); + dct_trn8_32(p1, p5); + dct_trn8_32(p2, p6); + dct_trn8_32(p3, p7); + + // store + vst1_u8(out, p0); out += out_stride; + vst1_u8(out, p1); out += out_stride; + vst1_u8(out, p2); out += out_stride; + vst1_u8(out, p3); out += out_stride; + vst1_u8(out, p4); out += out_stride; + vst1_u8(out, p5); out += out_stride; + vst1_u8(out, p6); out += out_stride; + vst1_u8(out, p7); + +#undef dct_trn8_8 +#undef dct_trn8_16 +#undef dct_trn8_32 + } + +#undef dct_long_mul +#undef dct_long_mac +#undef dct_widen +#undef dct_wadd +#undef dct_wsub +#undef dct_bfly32o +#undef dct_pass +} + +#endif // STBI_NEON + +#define STBI__MARKER_none 0xff +// if there's a pending marker from the entropy stream, return that +// otherwise, fetch from the stream and get a marker. if there's no +// marker, return 0xff, which is never a valid marker value +static stbi_uc stbi__get_marker(stbi__jpeg *j) +{ + stbi_uc x; + if (j->marker != STBI__MARKER_none) { x = j->marker; j->marker = STBI__MARKER_none; return x; } + x = stbi__get8(j->s); + if (x != 0xff) return STBI__MARKER_none; + while (x == 0xff) + x = stbi__get8(j->s); // consume repeated 0xff fill bytes + return x; +} + +// in each scan, we'll have scan_n components, and the order +// of the components is specified by order[] +#define STBI__RESTART(x) ((x) >= 0xd0 && (x) <= 0xd7) + +// after a restart interval, stbi__jpeg_reset the entropy decoder and +// the dc prediction +static void stbi__jpeg_reset(stbi__jpeg *j) +{ + j->code_bits = 0; + j->code_buffer = 0; + j->nomore = 0; + j->img_comp[0].dc_pred = j->img_comp[1].dc_pred = j->img_comp[2].dc_pred = j->img_comp[3].dc_pred = 0; + j->marker = STBI__MARKER_none; + j->todo = j->restart_interval ? j->restart_interval : 0x7fffffff; + j->eob_run = 0; + // no more than 1<<31 MCUs if no restart_interal? that's plenty safe, + // since we don't even allow 1<<30 pixels +} + +static int stbi__parse_entropy_coded_data(stbi__jpeg *z) +{ + stbi__jpeg_reset(z); + if (!z->progressive) { + if (z->scan_n == 1) { + int i,j; + STBI_SIMD_ALIGN(short, data[64]); + int n = z->order[0]; + // non-interleaved data, we just need to process one block at a time, + // in trivial scanline order + // number of blocks to do just depends on how many actual "pixels" this + // component has, independent of interleaved MCU blocking and such + int w = (z->img_comp[n].x+7) >> 3; + int h = (z->img_comp[n].y+7) >> 3; + for (j=0; j < h; ++j) { + for (i=0; i < w; ++i) { + int ha = z->img_comp[n].ha; + if (!stbi__jpeg_decode_block(z, data, z->huff_dc+z->img_comp[n].hd, z->huff_ac+ha, z->fast_ac[ha], n, z->dequant[z->img_comp[n].tq])) return 0; + z->idct_block_kernel(z->img_comp[n].data+z->img_comp[n].w2*j*8+i*8, z->img_comp[n].w2, data); + // every data block is an MCU, so countdown the restart interval + if (--z->todo <= 0) { + if (z->code_bits < 24) stbi__grow_buffer_unsafe(z); + // if it's NOT a restart, then just bail, so we get corrupt data + // rather than no data + if (!STBI__RESTART(z->marker)) return 1; + stbi__jpeg_reset(z); + } + } + } + return 1; + } else { // interleaved + int i,j,k,x,y; + STBI_SIMD_ALIGN(short, data[64]); + for (j=0; j < z->img_mcu_y; ++j) { + for (i=0; i < z->img_mcu_x; ++i) { + // scan an interleaved mcu... process scan_n components in order + for (k=0; k < z->scan_n; ++k) { + int n = z->order[k]; + // scan out an mcu's worth of this component; that's just determined + // by the basic H and V specified for the component + for (y=0; y < z->img_comp[n].v; ++y) { + for (x=0; x < z->img_comp[n].h; ++x) { + int x2 = (i*z->img_comp[n].h + x)*8; + int y2 = (j*z->img_comp[n].v + y)*8; + int ha = z->img_comp[n].ha; + if (!stbi__jpeg_decode_block(z, data, z->huff_dc+z->img_comp[n].hd, z->huff_ac+ha, z->fast_ac[ha], n, z->dequant[z->img_comp[n].tq])) return 0; + z->idct_block_kernel(z->img_comp[n].data+z->img_comp[n].w2*y2+x2, z->img_comp[n].w2, data); + } + } + } + // after all interleaved components, that's an interleaved MCU, + // so now count down the restart interval + if (--z->todo <= 0) { + if (z->code_bits < 24) stbi__grow_buffer_unsafe(z); + if (!STBI__RESTART(z->marker)) return 1; + stbi__jpeg_reset(z); + } + } + } + return 1; + } + } else { + if (z->scan_n == 1) { + int i,j; + int n = z->order[0]; + // non-interleaved data, we just need to process one block at a time, + // in trivial scanline order + // number of blocks to do just depends on how many actual "pixels" this + // component has, independent of interleaved MCU blocking and such + int w = (z->img_comp[n].x+7) >> 3; + int h = (z->img_comp[n].y+7) >> 3; + for (j=0; j < h; ++j) { + for (i=0; i < w; ++i) { + short *data = z->img_comp[n].coeff + 64 * (i + j * z->img_comp[n].coeff_w); + if (z->spec_start == 0) { + if (!stbi__jpeg_decode_block_prog_dc(z, data, &z->huff_dc[z->img_comp[n].hd], n)) + return 0; + } else { + int ha = z->img_comp[n].ha; + if (!stbi__jpeg_decode_block_prog_ac(z, data, &z->huff_ac[ha], z->fast_ac[ha])) + return 0; + } + // every data block is an MCU, so countdown the restart interval + if (--z->todo <= 0) { + if (z->code_bits < 24) stbi__grow_buffer_unsafe(z); + if (!STBI__RESTART(z->marker)) return 1; + stbi__jpeg_reset(z); + } + } + } + return 1; + } else { // interleaved + int i,j,k,x,y; + for (j=0; j < z->img_mcu_y; ++j) { + for (i=0; i < z->img_mcu_x; ++i) { + // scan an interleaved mcu... process scan_n components in order + for (k=0; k < z->scan_n; ++k) { + int n = z->order[k]; + // scan out an mcu's worth of this component; that's just determined + // by the basic H and V specified for the component + for (y=0; y < z->img_comp[n].v; ++y) { + for (x=0; x < z->img_comp[n].h; ++x) { + int x2 = (i*z->img_comp[n].h + x); + int y2 = (j*z->img_comp[n].v + y); + short *data = z->img_comp[n].coeff + 64 * (x2 + y2 * z->img_comp[n].coeff_w); + if (!stbi__jpeg_decode_block_prog_dc(z, data, &z->huff_dc[z->img_comp[n].hd], n)) + return 0; + } + } + } + // after all interleaved components, that's an interleaved MCU, + // so now count down the restart interval + if (--z->todo <= 0) { + if (z->code_bits < 24) stbi__grow_buffer_unsafe(z); + if (!STBI__RESTART(z->marker)) return 1; + stbi__jpeg_reset(z); + } + } + } + return 1; + } + } +} + +static void stbi__jpeg_dequantize(short *data, stbi__uint16 *dequant) +{ + int i; + for (i=0; i < 64; ++i) + data[i] *= dequant[i]; +} + +static void stbi__jpeg_finish(stbi__jpeg *z) +{ + if (z->progressive) { + // dequantize and idct the data + int i,j,n; + for (n=0; n < z->s->img_n; ++n) { + int w = (z->img_comp[n].x+7) >> 3; + int h = (z->img_comp[n].y+7) >> 3; + for (j=0; j < h; ++j) { + for (i=0; i < w; ++i) { + short *data = z->img_comp[n].coeff + 64 * (i + j * z->img_comp[n].coeff_w); + stbi__jpeg_dequantize(data, z->dequant[z->img_comp[n].tq]); + z->idct_block_kernel(z->img_comp[n].data+z->img_comp[n].w2*j*8+i*8, z->img_comp[n].w2, data); + } + } + } + } +} + +static int stbi__process_marker(stbi__jpeg *z, int m) +{ + int L; + switch (m) { + case STBI__MARKER_none: // no marker found + return stbi__err("expected marker","Corrupt JPEG"); + + case 0xDD: // DRI - specify restart interval + if (stbi__get16be(z->s) != 4) return stbi__err("bad DRI len","Corrupt JPEG"); + z->restart_interval = stbi__get16be(z->s); + return 1; + + case 0xDB: // DQT - define quantization table + L = stbi__get16be(z->s)-2; + while (L > 0) { + int q = stbi__get8(z->s); + int p = q >> 4, sixteen = (p != 0); + int t = q & 15,i; + if (p != 0 && p != 1) return stbi__err("bad DQT type","Corrupt JPEG"); + if (t > 3) return stbi__err("bad DQT table","Corrupt JPEG"); + + for (i=0; i < 64; ++i) + z->dequant[t][stbi__jpeg_dezigzag[i]] = (stbi__uint16)(sixteen ? stbi__get16be(z->s) : stbi__get8(z->s)); + L -= (sixteen ? 129 : 65); + } + return L==0; + + case 0xC4: // DHT - define huffman table + L = stbi__get16be(z->s)-2; + while (L > 0) { + stbi_uc *v; + int sizes[16],i,n=0; + int q = stbi__get8(z->s); + int tc = q >> 4; + int th = q & 15; + if (tc > 1 || th > 3) return stbi__err("bad DHT header","Corrupt JPEG"); + for (i=0; i < 16; ++i) { + sizes[i] = stbi__get8(z->s); + n += sizes[i]; + } + if(n > 256) return stbi__err("bad DHT header","Corrupt JPEG"); // Loop over i < n would write past end of values! + L -= 17; + if (tc == 0) { + if (!stbi__build_huffman(z->huff_dc+th, sizes)) return 0; + v = z->huff_dc[th].values; + } else { + if (!stbi__build_huffman(z->huff_ac+th, sizes)) return 0; + v = z->huff_ac[th].values; + } + for (i=0; i < n; ++i) + v[i] = stbi__get8(z->s); + if (tc != 0) + stbi__build_fast_ac(z->fast_ac[th], z->huff_ac + th); + L -= n; + } + return L==0; + } + + // check for comment block or APP blocks + if ((m >= 0xE0 && m <= 0xEF) || m == 0xFE) { + L = stbi__get16be(z->s); + if (L < 2) { + if (m == 0xFE) + return stbi__err("bad COM len","Corrupt JPEG"); + else + return stbi__err("bad APP len","Corrupt JPEG"); + } + L -= 2; + + if (m == 0xE0 && L >= 5) { // JFIF APP0 segment + static const unsigned char tag[5] = {'J','F','I','F','\0'}; + int ok = 1; + int i; + for (i=0; i < 5; ++i) + if (stbi__get8(z->s) != tag[i]) + ok = 0; + L -= 5; + if (ok) + z->jfif = 1; + } else if (m == 0xEE && L >= 12) { // Adobe APP14 segment + static const unsigned char tag[6] = {'A','d','o','b','e','\0'}; + int ok = 1; + int i; + for (i=0; i < 6; ++i) + if (stbi__get8(z->s) != tag[i]) + ok = 0; + L -= 6; + if (ok) { + stbi__get8(z->s); // version + stbi__get16be(z->s); // flags0 + stbi__get16be(z->s); // flags1 + z->app14_color_transform = stbi__get8(z->s); // color transform + L -= 6; + } + } + + stbi__skip(z->s, L); + return 1; + } + + return stbi__err("unknown marker","Corrupt JPEG"); +} + +// after we see SOS +static int stbi__process_scan_header(stbi__jpeg *z) +{ + int i; + int Ls = stbi__get16be(z->s); + z->scan_n = stbi__get8(z->s); + if (z->scan_n < 1 || z->scan_n > 4 || z->scan_n > (int) z->s->img_n) return stbi__err("bad SOS component count","Corrupt JPEG"); + if (Ls != 6+2*z->scan_n) return stbi__err("bad SOS len","Corrupt JPEG"); + for (i=0; i < z->scan_n; ++i) { + int id = stbi__get8(z->s), which; + int q = stbi__get8(z->s); + for (which = 0; which < z->s->img_n; ++which) + if (z->img_comp[which].id == id) + break; + if (which == z->s->img_n) return 0; // no match + z->img_comp[which].hd = q >> 4; if (z->img_comp[which].hd > 3) return stbi__err("bad DC huff","Corrupt JPEG"); + z->img_comp[which].ha = q & 15; if (z->img_comp[which].ha > 3) return stbi__err("bad AC huff","Corrupt JPEG"); + z->order[i] = which; + } + + { + int aa; + z->spec_start = stbi__get8(z->s); + z->spec_end = stbi__get8(z->s); // should be 63, but might be 0 + aa = stbi__get8(z->s); + z->succ_high = (aa >> 4); + z->succ_low = (aa & 15); + if (z->progressive) { + if (z->spec_start > 63 || z->spec_end > 63 || z->spec_start > z->spec_end || z->succ_high > 13 || z->succ_low > 13) + return stbi__err("bad SOS", "Corrupt JPEG"); + } else { + if (z->spec_start != 0) return stbi__err("bad SOS","Corrupt JPEG"); + if (z->succ_high != 0 || z->succ_low != 0) return stbi__err("bad SOS","Corrupt JPEG"); + z->spec_end = 63; + } + } + + return 1; +} + +static int stbi__free_jpeg_components(stbi__jpeg *z, int ncomp, int why) +{ + int i; + for (i=0; i < ncomp; ++i) { + if (z->img_comp[i].raw_data) { + STBI_FREE(z->img_comp[i].raw_data); + z->img_comp[i].raw_data = NULL; + z->img_comp[i].data = NULL; + } + if (z->img_comp[i].raw_coeff) { + STBI_FREE(z->img_comp[i].raw_coeff); + z->img_comp[i].raw_coeff = 0; + z->img_comp[i].coeff = 0; + } + if (z->img_comp[i].linebuf) { + STBI_FREE(z->img_comp[i].linebuf); + z->img_comp[i].linebuf = NULL; + } + } + return why; +} + +static int stbi__process_frame_header(stbi__jpeg *z, int scan) +{ + stbi__context *s = z->s; + int Lf,p,i,q, h_max=1,v_max=1,c; + Lf = stbi__get16be(s); if (Lf < 11) return stbi__err("bad SOF len","Corrupt JPEG"); // JPEG + p = stbi__get8(s); if (p != 8) return stbi__err("only 8-bit","JPEG format not supported: 8-bit only"); // JPEG baseline + s->img_y = stbi__get16be(s); if (s->img_y == 0) return stbi__err("no header height", "JPEG format not supported: delayed height"); // Legal, but we don't handle it--but neither does IJG + s->img_x = stbi__get16be(s); if (s->img_x == 0) return stbi__err("0 width","Corrupt JPEG"); // JPEG requires + if (s->img_y > STBI_MAX_DIMENSIONS) return stbi__err("too large","Very large image (corrupt?)"); + if (s->img_x > STBI_MAX_DIMENSIONS) return stbi__err("too large","Very large image (corrupt?)"); + c = stbi__get8(s); + if (c != 3 && c != 1 && c != 4) return stbi__err("bad component count","Corrupt JPEG"); + s->img_n = c; + for (i=0; i < c; ++i) { + z->img_comp[i].data = NULL; + z->img_comp[i].linebuf = NULL; + } + + if (Lf != 8+3*s->img_n) return stbi__err("bad SOF len","Corrupt JPEG"); + + z->rgb = 0; + for (i=0; i < s->img_n; ++i) { + static const unsigned char rgb[3] = { 'R', 'G', 'B' }; + z->img_comp[i].id = stbi__get8(s); + if (s->img_n == 3 && z->img_comp[i].id == rgb[i]) + ++z->rgb; + q = stbi__get8(s); + z->img_comp[i].h = (q >> 4); if (!z->img_comp[i].h || z->img_comp[i].h > 4) return stbi__err("bad H","Corrupt JPEG"); + z->img_comp[i].v = q & 15; if (!z->img_comp[i].v || z->img_comp[i].v > 4) return stbi__err("bad V","Corrupt JPEG"); + z->img_comp[i].tq = stbi__get8(s); if (z->img_comp[i].tq > 3) return stbi__err("bad TQ","Corrupt JPEG"); + } + + if (scan != STBI__SCAN_load) return 1; + + if (!stbi__mad3sizes_valid(s->img_x, s->img_y, s->img_n, 0)) return stbi__err("too large", "Image too large to decode"); + + for (i=0; i < s->img_n; ++i) { + if (z->img_comp[i].h > h_max) h_max = z->img_comp[i].h; + if (z->img_comp[i].v > v_max) v_max = z->img_comp[i].v; + } + + // check that plane subsampling factors are integer ratios; our resamplers can't deal with fractional ratios + // and I've never seen a non-corrupted JPEG file actually use them + for (i=0; i < s->img_n; ++i) { + if (h_max % z->img_comp[i].h != 0) return stbi__err("bad H","Corrupt JPEG"); + if (v_max % z->img_comp[i].v != 0) return stbi__err("bad V","Corrupt JPEG"); + } + + // compute interleaved mcu info + z->img_h_max = h_max; + z->img_v_max = v_max; + z->img_mcu_w = h_max * 8; + z->img_mcu_h = v_max * 8; + // these sizes can't be more than 17 bits + z->img_mcu_x = (s->img_x + z->img_mcu_w-1) / z->img_mcu_w; + z->img_mcu_y = (s->img_y + z->img_mcu_h-1) / z->img_mcu_h; + + for (i=0; i < s->img_n; ++i) { + // number of effective pixels (e.g. for non-interleaved MCU) + z->img_comp[i].x = (s->img_x * z->img_comp[i].h + h_max-1) / h_max; + z->img_comp[i].y = (s->img_y * z->img_comp[i].v + v_max-1) / v_max; + // to simplify generation, we'll allocate enough memory to decode + // the bogus oversized data from using interleaved MCUs and their + // big blocks (e.g. a 16x16 iMCU on an image of width 33); we won't + // discard the extra data until colorspace conversion + // + // img_mcu_x, img_mcu_y: <=17 bits; comp[i].h and .v are <=4 (checked earlier) + // so these muls can't overflow with 32-bit ints (which we require) + z->img_comp[i].w2 = z->img_mcu_x * z->img_comp[i].h * 8; + z->img_comp[i].h2 = z->img_mcu_y * z->img_comp[i].v * 8; + z->img_comp[i].coeff = 0; + z->img_comp[i].raw_coeff = 0; + z->img_comp[i].linebuf = NULL; + z->img_comp[i].raw_data = stbi__malloc_mad2(z->img_comp[i].w2, z->img_comp[i].h2, 15); + if (z->img_comp[i].raw_data == NULL) + return stbi__free_jpeg_components(z, i+1, stbi__err("outofmem", "Out of memory")); + // align blocks for idct using mmx/sse + z->img_comp[i].data = (stbi_uc*) (((size_t) z->img_comp[i].raw_data + 15) & ~15); + if (z->progressive) { + // w2, h2 are multiples of 8 (see above) + z->img_comp[i].coeff_w = z->img_comp[i].w2 / 8; + z->img_comp[i].coeff_h = z->img_comp[i].h2 / 8; + z->img_comp[i].raw_coeff = stbi__malloc_mad3(z->img_comp[i].w2, z->img_comp[i].h2, sizeof(short), 15); + if (z->img_comp[i].raw_coeff == NULL) + return stbi__free_jpeg_components(z, i+1, stbi__err("outofmem", "Out of memory")); + z->img_comp[i].coeff = (short*) (((size_t) z->img_comp[i].raw_coeff + 15) & ~15); + } + } + + return 1; +} + +// use comparisons since in some cases we handle more than one case (e.g. SOF) +#define stbi__DNL(x) ((x) == 0xdc) +#define stbi__SOI(x) ((x) == 0xd8) +#define stbi__EOI(x) ((x) == 0xd9) +#define stbi__SOF(x) ((x) == 0xc0 || (x) == 0xc1 || (x) == 0xc2) +#define stbi__SOS(x) ((x) == 0xda) + +#define stbi__SOF_progressive(x) ((x) == 0xc2) + +static int stbi__decode_jpeg_header(stbi__jpeg *z, int scan) +{ + int m; + z->jfif = 0; + z->app14_color_transform = -1; // valid values are 0,1,2 + z->marker = STBI__MARKER_none; // initialize cached marker to empty + m = stbi__get_marker(z); + if (!stbi__SOI(m)) return stbi__err("no SOI","Corrupt JPEG"); + if (scan == STBI__SCAN_type) return 1; + m = stbi__get_marker(z); + while (!stbi__SOF(m)) { + if (!stbi__process_marker(z,m)) return 0; + m = stbi__get_marker(z); + while (m == STBI__MARKER_none) { + // some files have extra padding after their blocks, so ok, we'll scan + if (stbi__at_eof(z->s)) return stbi__err("no SOF", "Corrupt JPEG"); + m = stbi__get_marker(z); + } + } + z->progressive = stbi__SOF_progressive(m); + if (!stbi__process_frame_header(z, scan)) return 0; + return 1; +} + +static int stbi__skip_jpeg_junk_at_end(stbi__jpeg *j) +{ + // some JPEGs have junk at end, skip over it but if we find what looks + // like a valid marker, resume there + while (!stbi__at_eof(j->s)) { + int x = stbi__get8(j->s); + while (x == 255) { // might be a marker + if (stbi__at_eof(j->s)) return STBI__MARKER_none; + x = stbi__get8(j->s); + if (x != 0x00 && x != 0xff) { + // not a stuffed zero or lead-in to another marker, looks + // like an actual marker, return it + return x; + } + // stuffed zero has x=0 now which ends the loop, meaning we go + // back to regular scan loop. + // repeated 0xff keeps trying to read the next byte of the marker. + } + } + return STBI__MARKER_none; +} + +// decode image to YCbCr format +static int stbi__decode_jpeg_image(stbi__jpeg *j) +{ + int m; + for (m = 0; m < 4; m++) { + j->img_comp[m].raw_data = NULL; + j->img_comp[m].raw_coeff = NULL; + } + j->restart_interval = 0; + if (!stbi__decode_jpeg_header(j, STBI__SCAN_load)) return 0; + m = stbi__get_marker(j); + while (!stbi__EOI(m)) { + if (stbi__SOS(m)) { + if (!stbi__process_scan_header(j)) return 0; + if (!stbi__parse_entropy_coded_data(j)) return 0; + if (j->marker == STBI__MARKER_none ) { + j->marker = stbi__skip_jpeg_junk_at_end(j); + // if we reach eof without hitting a marker, stbi__get_marker() below will fail and we'll eventually return 0 + } + m = stbi__get_marker(j); + if (STBI__RESTART(m)) + m = stbi__get_marker(j); + } else if (stbi__DNL(m)) { + int Ld = stbi__get16be(j->s); + stbi__uint32 NL = stbi__get16be(j->s); + if (Ld != 4) return stbi__err("bad DNL len", "Corrupt JPEG"); + if (NL != j->s->img_y) return stbi__err("bad DNL height", "Corrupt JPEG"); + m = stbi__get_marker(j); + } else { + if (!stbi__process_marker(j, m)) return 1; + m = stbi__get_marker(j); + } + } + if (j->progressive) + stbi__jpeg_finish(j); + return 1; +} + +// static jfif-centered resampling (across block boundaries) + +typedef stbi_uc *(*resample_row_func)(stbi_uc *out, stbi_uc *in0, stbi_uc *in1, + int w, int hs); + +#define stbi__div4(x) ((stbi_uc) ((x) >> 2)) + +static stbi_uc *resample_row_1(stbi_uc *out, stbi_uc *in_near, stbi_uc *in_far, int w, int hs) +{ + STBI_NOTUSED(out); + STBI_NOTUSED(in_far); + STBI_NOTUSED(w); + STBI_NOTUSED(hs); + return in_near; +} + +static stbi_uc* stbi__resample_row_v_2(stbi_uc *out, stbi_uc *in_near, stbi_uc *in_far, int w, int hs) +{ + // need to generate two samples vertically for every one in input + int i; + STBI_NOTUSED(hs); + for (i=0; i < w; ++i) + out[i] = stbi__div4(3*in_near[i] + in_far[i] + 2); + return out; +} + +static stbi_uc* stbi__resample_row_h_2(stbi_uc *out, stbi_uc *in_near, stbi_uc *in_far, int w, int hs) +{ + // need to generate two samples horizontally for every one in input + int i; + stbi_uc *input = in_near; + + if (w == 1) { + // if only one sample, can't do any interpolation + out[0] = out[1] = input[0]; + return out; + } + + out[0] = input[0]; + out[1] = stbi__div4(input[0]*3 + input[1] + 2); + for (i=1; i < w-1; ++i) { + int n = 3*input[i]+2; + out[i*2+0] = stbi__div4(n+input[i-1]); + out[i*2+1] = stbi__div4(n+input[i+1]); + } + out[i*2+0] = stbi__div4(input[w-2]*3 + input[w-1] + 2); + out[i*2+1] = input[w-1]; + + STBI_NOTUSED(in_far); + STBI_NOTUSED(hs); + + return out; +} + +#define stbi__div16(x) ((stbi_uc) ((x) >> 4)) + +static stbi_uc *stbi__resample_row_hv_2(stbi_uc *out, stbi_uc *in_near, stbi_uc *in_far, int w, int hs) +{ + // need to generate 2x2 samples for every one in input + int i,t0,t1; + if (w == 1) { + out[0] = out[1] = stbi__div4(3*in_near[0] + in_far[0] + 2); + return out; + } + + t1 = 3*in_near[0] + in_far[0]; + out[0] = stbi__div4(t1+2); + for (i=1; i < w; ++i) { + t0 = t1; + t1 = 3*in_near[i]+in_far[i]; + out[i*2-1] = stbi__div16(3*t0 + t1 + 8); + out[i*2 ] = stbi__div16(3*t1 + t0 + 8); + } + out[w*2-1] = stbi__div4(t1+2); + + STBI_NOTUSED(hs); + + return out; +} + +#if defined(STBI_SSE2) || defined(STBI_NEON) +static stbi_uc *stbi__resample_row_hv_2_simd(stbi_uc *out, stbi_uc *in_near, stbi_uc *in_far, int w, int hs) +{ + // need to generate 2x2 samples for every one in input + int i=0,t0,t1; + + if (w == 1) { + out[0] = out[1] = stbi__div4(3*in_near[0] + in_far[0] + 2); + return out; + } + + t1 = 3*in_near[0] + in_far[0]; + // process groups of 8 pixels for as long as we can. + // note we can't handle the last pixel in a row in this loop + // because we need to handle the filter boundary conditions. + for (; i < ((w-1) & ~7); i += 8) { +#if defined(STBI_SSE2) + // load and perform the vertical filtering pass + // this uses 3*x + y = 4*x + (y - x) + __m128i zero = _mm_setzero_si128(); + __m128i farb = _mm_loadl_epi64((__m128i *) (in_far + i)); + __m128i nearb = _mm_loadl_epi64((__m128i *) (in_near + i)); + __m128i farw = _mm_unpacklo_epi8(farb, zero); + __m128i nearw = _mm_unpacklo_epi8(nearb, zero); + __m128i diff = _mm_sub_epi16(farw, nearw); + __m128i nears = _mm_slli_epi16(nearw, 2); + __m128i curr = _mm_add_epi16(nears, diff); // current row + + // horizontal filter works the same based on shifted vers of current + // row. "prev" is current row shifted right by 1 pixel; we need to + // insert the previous pixel value (from t1). + // "next" is current row shifted left by 1 pixel, with first pixel + // of next block of 8 pixels added in. + __m128i prv0 = _mm_slli_si128(curr, 2); + __m128i nxt0 = _mm_srli_si128(curr, 2); + __m128i prev = _mm_insert_epi16(prv0, t1, 0); + __m128i next = _mm_insert_epi16(nxt0, 3*in_near[i+8] + in_far[i+8], 7); + + // horizontal filter, polyphase implementation since it's convenient: + // even pixels = 3*cur + prev = cur*4 + (prev - cur) + // odd pixels = 3*cur + next = cur*4 + (next - cur) + // note the shared term. + __m128i bias = _mm_set1_epi16(8); + __m128i curs = _mm_slli_epi16(curr, 2); + __m128i prvd = _mm_sub_epi16(prev, curr); + __m128i nxtd = _mm_sub_epi16(next, curr); + __m128i curb = _mm_add_epi16(curs, bias); + __m128i even = _mm_add_epi16(prvd, curb); + __m128i odd = _mm_add_epi16(nxtd, curb); + + // interleave even and odd pixels, then undo scaling. + __m128i int0 = _mm_unpacklo_epi16(even, odd); + __m128i int1 = _mm_unpackhi_epi16(even, odd); + __m128i de0 = _mm_srli_epi16(int0, 4); + __m128i de1 = _mm_srli_epi16(int1, 4); + + // pack and write output + __m128i outv = _mm_packus_epi16(de0, de1); + _mm_storeu_si128((__m128i *) (out + i*2), outv); +#elif defined(STBI_NEON) + // load and perform the vertical filtering pass + // this uses 3*x + y = 4*x + (y - x) + uint8x8_t farb = vld1_u8(in_far + i); + uint8x8_t nearb = vld1_u8(in_near + i); + int16x8_t diff = vreinterpretq_s16_u16(vsubl_u8(farb, nearb)); + int16x8_t nears = vreinterpretq_s16_u16(vshll_n_u8(nearb, 2)); + int16x8_t curr = vaddq_s16(nears, diff); // current row + + // horizontal filter works the same based on shifted vers of current + // row. "prev" is current row shifted right by 1 pixel; we need to + // insert the previous pixel value (from t1). + // "next" is current row shifted left by 1 pixel, with first pixel + // of next block of 8 pixels added in. + int16x8_t prv0 = vextq_s16(curr, curr, 7); + int16x8_t nxt0 = vextq_s16(curr, curr, 1); + int16x8_t prev = vsetq_lane_s16(t1, prv0, 0); + int16x8_t next = vsetq_lane_s16(3*in_near[i+8] + in_far[i+8], nxt0, 7); + + // horizontal filter, polyphase implementation since it's convenient: + // even pixels = 3*cur + prev = cur*4 + (prev - cur) + // odd pixels = 3*cur + next = cur*4 + (next - cur) + // note the shared term. + int16x8_t curs = vshlq_n_s16(curr, 2); + int16x8_t prvd = vsubq_s16(prev, curr); + int16x8_t nxtd = vsubq_s16(next, curr); + int16x8_t even = vaddq_s16(curs, prvd); + int16x8_t odd = vaddq_s16(curs, nxtd); + + // undo scaling and round, then store with even/odd phases interleaved + uint8x8x2_t o; + o.val[0] = vqrshrun_n_s16(even, 4); + o.val[1] = vqrshrun_n_s16(odd, 4); + vst2_u8(out + i*2, o); +#endif + + // "previous" value for next iter + t1 = 3*in_near[i+7] + in_far[i+7]; + } + + t0 = t1; + t1 = 3*in_near[i] + in_far[i]; + out[i*2] = stbi__div16(3*t1 + t0 + 8); + + for (++i; i < w; ++i) { + t0 = t1; + t1 = 3*in_near[i]+in_far[i]; + out[i*2-1] = stbi__div16(3*t0 + t1 + 8); + out[i*2 ] = stbi__div16(3*t1 + t0 + 8); + } + out[w*2-1] = stbi__div4(t1+2); + + STBI_NOTUSED(hs); + + return out; +} +#endif + +static stbi_uc *stbi__resample_row_generic(stbi_uc *out, stbi_uc *in_near, stbi_uc *in_far, int w, int hs) +{ + // resample with nearest-neighbor + int i,j; + STBI_NOTUSED(in_far); + for (i=0; i < w; ++i) + for (j=0; j < hs; ++j) + out[i*hs+j] = in_near[i]; + return out; +} + +// this is a reduced-precision calculation of YCbCr-to-RGB introduced +// to make sure the code produces the same results in both SIMD and scalar +#define stbi__float2fixed(x) (((int) ((x) * 4096.0f + 0.5f)) << 8) +static void stbi__YCbCr_to_RGB_row(stbi_uc *out, const stbi_uc *y, const stbi_uc *pcb, const stbi_uc *pcr, int count, int step) +{ + int i; + for (i=0; i < count; ++i) { + int y_fixed = (y[i] << 20) + (1<<19); // rounding + int r,g,b; + int cr = pcr[i] - 128; + int cb = pcb[i] - 128; + r = y_fixed + cr* stbi__float2fixed(1.40200f); + g = y_fixed + (cr*-stbi__float2fixed(0.71414f)) + ((cb*-stbi__float2fixed(0.34414f)) & 0xffff0000); + b = y_fixed + cb* stbi__float2fixed(1.77200f); + r >>= 20; + g >>= 20; + b >>= 20; + if ((unsigned) r > 255) { if (r < 0) r = 0; else r = 255; } + if ((unsigned) g > 255) { if (g < 0) g = 0; else g = 255; } + if ((unsigned) b > 255) { if (b < 0) b = 0; else b = 255; } + out[0] = (stbi_uc)r; + out[1] = (stbi_uc)g; + out[2] = (stbi_uc)b; + out[3] = 255; + out += step; + } +} + +#if defined(STBI_SSE2) || defined(STBI_NEON) +static void stbi__YCbCr_to_RGB_simd(stbi_uc *out, stbi_uc const *y, stbi_uc const *pcb, stbi_uc const *pcr, int count, int step) +{ + int i = 0; + +#ifdef STBI_SSE2 + // step == 3 is pretty ugly on the final interleave, and i'm not convinced + // it's useful in practice (you wouldn't use it for textures, for example). + // so just accelerate step == 4 case. + if (step == 4) { + // this is a fairly straightforward implementation and not super-optimized. + __m128i signflip = _mm_set1_epi8(-0x80); + __m128i cr_const0 = _mm_set1_epi16( (short) ( 1.40200f*4096.0f+0.5f)); + __m128i cr_const1 = _mm_set1_epi16( - (short) ( 0.71414f*4096.0f+0.5f)); + __m128i cb_const0 = _mm_set1_epi16( - (short) ( 0.34414f*4096.0f+0.5f)); + __m128i cb_const1 = _mm_set1_epi16( (short) ( 1.77200f*4096.0f+0.5f)); + __m128i y_bias = _mm_set1_epi8((char) (unsigned char) 128); + __m128i xw = _mm_set1_epi16(255); // alpha channel + + for (; i+7 < count; i += 8) { + // load + __m128i y_bytes = _mm_loadl_epi64((__m128i *) (y+i)); + __m128i cr_bytes = _mm_loadl_epi64((__m128i *) (pcr+i)); + __m128i cb_bytes = _mm_loadl_epi64((__m128i *) (pcb+i)); + __m128i cr_biased = _mm_xor_si128(cr_bytes, signflip); // -128 + __m128i cb_biased = _mm_xor_si128(cb_bytes, signflip); // -128 + + // unpack to short (and left-shift cr, cb by 8) + __m128i yw = _mm_unpacklo_epi8(y_bias, y_bytes); + __m128i crw = _mm_unpacklo_epi8(_mm_setzero_si128(), cr_biased); + __m128i cbw = _mm_unpacklo_epi8(_mm_setzero_si128(), cb_biased); + + // color transform + __m128i yws = _mm_srli_epi16(yw, 4); + __m128i cr0 = _mm_mulhi_epi16(cr_const0, crw); + __m128i cb0 = _mm_mulhi_epi16(cb_const0, cbw); + __m128i cb1 = _mm_mulhi_epi16(cbw, cb_const1); + __m128i cr1 = _mm_mulhi_epi16(crw, cr_const1); + __m128i rws = _mm_add_epi16(cr0, yws); + __m128i gwt = _mm_add_epi16(cb0, yws); + __m128i bws = _mm_add_epi16(yws, cb1); + __m128i gws = _mm_add_epi16(gwt, cr1); + + // descale + __m128i rw = _mm_srai_epi16(rws, 4); + __m128i bw = _mm_srai_epi16(bws, 4); + __m128i gw = _mm_srai_epi16(gws, 4); + + // back to byte, set up for transpose + __m128i brb = _mm_packus_epi16(rw, bw); + __m128i gxb = _mm_packus_epi16(gw, xw); + + // transpose to interleave channels + __m128i t0 = _mm_unpacklo_epi8(brb, gxb); + __m128i t1 = _mm_unpackhi_epi8(brb, gxb); + __m128i o0 = _mm_unpacklo_epi16(t0, t1); + __m128i o1 = _mm_unpackhi_epi16(t0, t1); + + // store + _mm_storeu_si128((__m128i *) (out + 0), o0); + _mm_storeu_si128((__m128i *) (out + 16), o1); + out += 32; + } + } +#endif + +#ifdef STBI_NEON + // in this version, step=3 support would be easy to add. but is there demand? + if (step == 4) { + // this is a fairly straightforward implementation and not super-optimized. + uint8x8_t signflip = vdup_n_u8(0x80); + int16x8_t cr_const0 = vdupq_n_s16( (short) ( 1.40200f*4096.0f+0.5f)); + int16x8_t cr_const1 = vdupq_n_s16( - (short) ( 0.71414f*4096.0f+0.5f)); + int16x8_t cb_const0 = vdupq_n_s16( - (short) ( 0.34414f*4096.0f+0.5f)); + int16x8_t cb_const1 = vdupq_n_s16( (short) ( 1.77200f*4096.0f+0.5f)); + + for (; i+7 < count; i += 8) { + // load + uint8x8_t y_bytes = vld1_u8(y + i); + uint8x8_t cr_bytes = vld1_u8(pcr + i); + uint8x8_t cb_bytes = vld1_u8(pcb + i); + int8x8_t cr_biased = vreinterpret_s8_u8(vsub_u8(cr_bytes, signflip)); + int8x8_t cb_biased = vreinterpret_s8_u8(vsub_u8(cb_bytes, signflip)); + + // expand to s16 + int16x8_t yws = vreinterpretq_s16_u16(vshll_n_u8(y_bytes, 4)); + int16x8_t crw = vshll_n_s8(cr_biased, 7); + int16x8_t cbw = vshll_n_s8(cb_biased, 7); + + // color transform + int16x8_t cr0 = vqdmulhq_s16(crw, cr_const0); + int16x8_t cb0 = vqdmulhq_s16(cbw, cb_const0); + int16x8_t cr1 = vqdmulhq_s16(crw, cr_const1); + int16x8_t cb1 = vqdmulhq_s16(cbw, cb_const1); + int16x8_t rws = vaddq_s16(yws, cr0); + int16x8_t gws = vaddq_s16(vaddq_s16(yws, cb0), cr1); + int16x8_t bws = vaddq_s16(yws, cb1); + + // undo scaling, round, convert to byte + uint8x8x4_t o; + o.val[0] = vqrshrun_n_s16(rws, 4); + o.val[1] = vqrshrun_n_s16(gws, 4); + o.val[2] = vqrshrun_n_s16(bws, 4); + o.val[3] = vdup_n_u8(255); + + // store, interleaving r/g/b/a + vst4_u8(out, o); + out += 8*4; + } + } +#endif + + for (; i < count; ++i) { + int y_fixed = (y[i] << 20) + (1<<19); // rounding + int r,g,b; + int cr = pcr[i] - 128; + int cb = pcb[i] - 128; + r = y_fixed + cr* stbi__float2fixed(1.40200f); + g = y_fixed + cr*-stbi__float2fixed(0.71414f) + ((cb*-stbi__float2fixed(0.34414f)) & 0xffff0000); + b = y_fixed + cb* stbi__float2fixed(1.77200f); + r >>= 20; + g >>= 20; + b >>= 20; + if ((unsigned) r > 255) { if (r < 0) r = 0; else r = 255; } + if ((unsigned) g > 255) { if (g < 0) g = 0; else g = 255; } + if ((unsigned) b > 255) { if (b < 0) b = 0; else b = 255; } + out[0] = (stbi_uc)r; + out[1] = (stbi_uc)g; + out[2] = (stbi_uc)b; + out[3] = 255; + out += step; + } +} +#endif + +// set up the kernels +static void stbi__setup_jpeg(stbi__jpeg *j) +{ + j->idct_block_kernel = stbi__idct_block; + j->YCbCr_to_RGB_kernel = stbi__YCbCr_to_RGB_row; + j->resample_row_hv_2_kernel = stbi__resample_row_hv_2; + +#ifdef STBI_SSE2 + if (stbi__sse2_available()) { + j->idct_block_kernel = stbi__idct_simd; + j->YCbCr_to_RGB_kernel = stbi__YCbCr_to_RGB_simd; + j->resample_row_hv_2_kernel = stbi__resample_row_hv_2_simd; + } +#endif + +#ifdef STBI_NEON + j->idct_block_kernel = stbi__idct_simd; + j->YCbCr_to_RGB_kernel = stbi__YCbCr_to_RGB_simd; + j->resample_row_hv_2_kernel = stbi__resample_row_hv_2_simd; +#endif +} + +// clean up the temporary component buffers +static void stbi__cleanup_jpeg(stbi__jpeg *j) +{ + stbi__free_jpeg_components(j, j->s->img_n, 0); +} + +typedef struct +{ + resample_row_func resample; + stbi_uc *line0,*line1; + int hs,vs; // expansion factor in each axis + int w_lores; // horizontal pixels pre-expansion + int ystep; // how far through vertical expansion we are + int ypos; // which pre-expansion row we're on +} stbi__resample; + +// fast 0..255 * 0..255 => 0..255 rounded multiplication +static stbi_uc stbi__blinn_8x8(stbi_uc x, stbi_uc y) +{ + unsigned int t = x*y + 128; + return (stbi_uc) ((t + (t >>8)) >> 8); +} + +static stbi_uc *load_jpeg_image(stbi__jpeg *z, int *out_x, int *out_y, int *comp, int req_comp) +{ + int n, decode_n, is_rgb; + z->s->img_n = 0; // make stbi__cleanup_jpeg safe + + // validate req_comp + if (req_comp < 0 || req_comp > 4) return stbi__errpuc("bad req_comp", "Internal error"); + + // load a jpeg image from whichever source, but leave in YCbCr format + if (!stbi__decode_jpeg_image(z)) { stbi__cleanup_jpeg(z); return NULL; } + + // determine actual number of components to generate + n = req_comp ? req_comp : z->s->img_n >= 3 ? 3 : 1; + + is_rgb = z->s->img_n == 3 && (z->rgb == 3 || (z->app14_color_transform == 0 && !z->jfif)); + + if (z->s->img_n == 3 && n < 3 && !is_rgb) + decode_n = 1; + else + decode_n = z->s->img_n; + + // nothing to do if no components requested; check this now to avoid + // accessing uninitialized coutput[0] later + if (decode_n <= 0) { stbi__cleanup_jpeg(z); return NULL; } + + // resample and color-convert + { + int k; + unsigned int i,j; + stbi_uc *output; + stbi_uc *coutput[4] = { NULL, NULL, NULL, NULL }; + + stbi__resample res_comp[4]; + + for (k=0; k < decode_n; ++k) { + stbi__resample *r = &res_comp[k]; + + // allocate line buffer big enough for upsampling off the edges + // with upsample factor of 4 + z->img_comp[k].linebuf = (stbi_uc *) stbi__malloc(z->s->img_x + 3); + if (!z->img_comp[k].linebuf) { stbi__cleanup_jpeg(z); return stbi__errpuc("outofmem", "Out of memory"); } + + r->hs = z->img_h_max / z->img_comp[k].h; + r->vs = z->img_v_max / z->img_comp[k].v; + r->ystep = r->vs >> 1; + r->w_lores = (z->s->img_x + r->hs-1) / r->hs; + r->ypos = 0; + r->line0 = r->line1 = z->img_comp[k].data; + + if (r->hs == 1 && r->vs == 1) r->resample = resample_row_1; + else if (r->hs == 1 && r->vs == 2) r->resample = stbi__resample_row_v_2; + else if (r->hs == 2 && r->vs == 1) r->resample = stbi__resample_row_h_2; + else if (r->hs == 2 && r->vs == 2) r->resample = z->resample_row_hv_2_kernel; + else r->resample = stbi__resample_row_generic; + } + + // can't error after this so, this is safe + output = (stbi_uc *) stbi__malloc_mad3(n, z->s->img_x, z->s->img_y, 1); + if (!output) { stbi__cleanup_jpeg(z); return stbi__errpuc("outofmem", "Out of memory"); } + + // now go ahead and resample + for (j=0; j < z->s->img_y; ++j) { + stbi_uc *out = output + n * z->s->img_x * j; + for (k=0; k < decode_n; ++k) { + stbi__resample *r = &res_comp[k]; + int y_bot = r->ystep >= (r->vs >> 1); + coutput[k] = r->resample(z->img_comp[k].linebuf, + y_bot ? r->line1 : r->line0, + y_bot ? r->line0 : r->line1, + r->w_lores, r->hs); + if (++r->ystep >= r->vs) { + r->ystep = 0; + r->line0 = r->line1; + if (++r->ypos < z->img_comp[k].y) + r->line1 += z->img_comp[k].w2; + } + } + if (n >= 3) { + stbi_uc *y = coutput[0]; + if (z->s->img_n == 3) { + if (is_rgb) { + for (i=0; i < z->s->img_x; ++i) { + out[0] = y[i]; + out[1] = coutput[1][i]; + out[2] = coutput[2][i]; + out[3] = 255; + out += n; + } + } else { + z->YCbCr_to_RGB_kernel(out, y, coutput[1], coutput[2], z->s->img_x, n); + } + } else if (z->s->img_n == 4) { + if (z->app14_color_transform == 0) { // CMYK + for (i=0; i < z->s->img_x; ++i) { + stbi_uc m = coutput[3][i]; + out[0] = stbi__blinn_8x8(coutput[0][i], m); + out[1] = stbi__blinn_8x8(coutput[1][i], m); + out[2] = stbi__blinn_8x8(coutput[2][i], m); + out[3] = 255; + out += n; + } + } else if (z->app14_color_transform == 2) { // YCCK + z->YCbCr_to_RGB_kernel(out, y, coutput[1], coutput[2], z->s->img_x, n); + for (i=0; i < z->s->img_x; ++i) { + stbi_uc m = coutput[3][i]; + out[0] = stbi__blinn_8x8(255 - out[0], m); + out[1] = stbi__blinn_8x8(255 - out[1], m); + out[2] = stbi__blinn_8x8(255 - out[2], m); + out += n; + } + } else { // YCbCr + alpha? Ignore the fourth channel for now + z->YCbCr_to_RGB_kernel(out, y, coutput[1], coutput[2], z->s->img_x, n); + } + } else + for (i=0; i < z->s->img_x; ++i) { + out[0] = out[1] = out[2] = y[i]; + out[3] = 255; // not used if n==3 + out += n; + } + } else { + if (is_rgb) { + if (n == 1) + for (i=0; i < z->s->img_x; ++i) + *out++ = stbi__compute_y(coutput[0][i], coutput[1][i], coutput[2][i]); + else { + for (i=0; i < z->s->img_x; ++i, out += 2) { + out[0] = stbi__compute_y(coutput[0][i], coutput[1][i], coutput[2][i]); + out[1] = 255; + } + } + } else if (z->s->img_n == 4 && z->app14_color_transform == 0) { + for (i=0; i < z->s->img_x; ++i) { + stbi_uc m = coutput[3][i]; + stbi_uc r = stbi__blinn_8x8(coutput[0][i], m); + stbi_uc g = stbi__blinn_8x8(coutput[1][i], m); + stbi_uc b = stbi__blinn_8x8(coutput[2][i], m); + out[0] = stbi__compute_y(r, g, b); + out[1] = 255; + out += n; + } + } else if (z->s->img_n == 4 && z->app14_color_transform == 2) { + for (i=0; i < z->s->img_x; ++i) { + out[0] = stbi__blinn_8x8(255 - coutput[0][i], coutput[3][i]); + out[1] = 255; + out += n; + } + } else { + stbi_uc *y = coutput[0]; + if (n == 1) + for (i=0; i < z->s->img_x; ++i) out[i] = y[i]; + else + for (i=0; i < z->s->img_x; ++i) { *out++ = y[i]; *out++ = 255; } + } + } + } + stbi__cleanup_jpeg(z); + *out_x = z->s->img_x; + *out_y = z->s->img_y; + if (comp) *comp = z->s->img_n >= 3 ? 3 : 1; // report original components, not output + return output; + } +} + +static void *stbi__jpeg_load(stbi__context *s, int *x, int *y, int *comp, int req_comp, stbi__result_info *ri) +{ + unsigned char* result; + stbi__jpeg* j = (stbi__jpeg*) stbi__malloc(sizeof(stbi__jpeg)); + if (!j) return stbi__errpuc("outofmem", "Out of memory"); + memset(j, 0, sizeof(stbi__jpeg)); + STBI_NOTUSED(ri); + j->s = s; + stbi__setup_jpeg(j); + result = load_jpeg_image(j, x,y,comp,req_comp); + STBI_FREE(j); + return result; +} + +static int stbi__jpeg_test(stbi__context *s) +{ + int r; + stbi__jpeg* j = (stbi__jpeg*)stbi__malloc(sizeof(stbi__jpeg)); + if (!j) return stbi__err("outofmem", "Out of memory"); + memset(j, 0, sizeof(stbi__jpeg)); + j->s = s; + stbi__setup_jpeg(j); + r = stbi__decode_jpeg_header(j, STBI__SCAN_type); + stbi__rewind(s); + STBI_FREE(j); + return r; +} + +static int stbi__jpeg_info_raw(stbi__jpeg *j, int *x, int *y, int *comp) +{ + if (!stbi__decode_jpeg_header(j, STBI__SCAN_header)) { + stbi__rewind( j->s ); + return 0; + } + if (x) *x = j->s->img_x; + if (y) *y = j->s->img_y; + if (comp) *comp = j->s->img_n >= 3 ? 3 : 1; + return 1; +} + +static int stbi__jpeg_info(stbi__context *s, int *x, int *y, int *comp) +{ + int result; + stbi__jpeg* j = (stbi__jpeg*) (stbi__malloc(sizeof(stbi__jpeg))); + if (!j) return stbi__err("outofmem", "Out of memory"); + memset(j, 0, sizeof(stbi__jpeg)); + j->s = s; + result = stbi__jpeg_info_raw(j, x, y, comp); + STBI_FREE(j); + return result; +} +#endif + +// public domain zlib decode v0.2 Sean Barrett 2006-11-18 +// simple implementation +// - all input must be provided in an upfront buffer +// - all output is written to a single output buffer (can malloc/realloc) +// performance +// - fast huffman + +#ifndef STBI_NO_ZLIB + +// fast-way is faster to check than jpeg huffman, but slow way is slower +#define STBI__ZFAST_BITS 9 // accelerate all cases in default tables +#define STBI__ZFAST_MASK ((1 << STBI__ZFAST_BITS) - 1) +#define STBI__ZNSYMS 288 // number of symbols in literal/length alphabet + +// zlib-style huffman encoding +// (jpegs packs from left, zlib from right, so can't share code) +typedef struct +{ + stbi__uint16 fast[1 << STBI__ZFAST_BITS]; + stbi__uint16 firstcode[16]; + int maxcode[17]; + stbi__uint16 firstsymbol[16]; + stbi_uc size[STBI__ZNSYMS]; + stbi__uint16 value[STBI__ZNSYMS]; +} stbi__zhuffman; + +stbi_inline static int stbi__bitreverse16(int n) +{ + n = ((n & 0xAAAA) >> 1) | ((n & 0x5555) << 1); + n = ((n & 0xCCCC) >> 2) | ((n & 0x3333) << 2); + n = ((n & 0xF0F0) >> 4) | ((n & 0x0F0F) << 4); + n = ((n & 0xFF00) >> 8) | ((n & 0x00FF) << 8); + return n; +} + +stbi_inline static int stbi__bit_reverse(int v, int bits) +{ + STBI_ASSERT(bits <= 16); + // to bit reverse n bits, reverse 16 and shift + // e.g. 11 bits, bit reverse and shift away 5 + return stbi__bitreverse16(v) >> (16-bits); +} + +static int stbi__zbuild_huffman(stbi__zhuffman *z, const stbi_uc *sizelist, int num) +{ + int i,k=0; + int code, next_code[16], sizes[17]; + + // DEFLATE spec for generating codes + memset(sizes, 0, sizeof(sizes)); + memset(z->fast, 0, sizeof(z->fast)); + for (i=0; i < num; ++i) + ++sizes[sizelist[i]]; + sizes[0] = 0; + for (i=1; i < 16; ++i) + if (sizes[i] > (1 << i)) + return stbi__err("bad sizes", "Corrupt PNG"); + code = 0; + for (i=1; i < 16; ++i) { + next_code[i] = code; + z->firstcode[i] = (stbi__uint16) code; + z->firstsymbol[i] = (stbi__uint16) k; + code = (code + sizes[i]); + if (sizes[i]) + if (code-1 >= (1 << i)) return stbi__err("bad codelengths","Corrupt PNG"); + z->maxcode[i] = code << (16-i); // preshift for inner loop + code <<= 1; + k += sizes[i]; + } + z->maxcode[16] = 0x10000; // sentinel + for (i=0; i < num; ++i) { + int s = sizelist[i]; + if (s) { + int c = next_code[s] - z->firstcode[s] + z->firstsymbol[s]; + stbi__uint16 fastv = (stbi__uint16) ((s << 9) | i); + z->size [c] = (stbi_uc ) s; + z->value[c] = (stbi__uint16) i; + if (s <= STBI__ZFAST_BITS) { + int j = stbi__bit_reverse(next_code[s],s); + while (j < (1 << STBI__ZFAST_BITS)) { + z->fast[j] = fastv; + j += (1 << s); + } + } + ++next_code[s]; + } + } + return 1; +} + +// zlib-from-memory implementation for PNG reading +// because PNG allows splitting the zlib stream arbitrarily, +// and it's annoying structurally to have PNG call ZLIB call PNG, +// we require PNG read all the IDATs and combine them into a single +// memory buffer + +typedef struct +{ + stbi_uc *zbuffer, *zbuffer_end; + int num_bits; + stbi__uint32 code_buffer; + + char *zout; + char *zout_start; + char *zout_end; + int z_expandable; + + stbi__zhuffman z_length, z_distance; +} stbi__zbuf; + +stbi_inline static int stbi__zeof(stbi__zbuf *z) +{ + return (z->zbuffer >= z->zbuffer_end); +} + +stbi_inline static stbi_uc stbi__zget8(stbi__zbuf *z) +{ + return stbi__zeof(z) ? 0 : *z->zbuffer++; +} + +static void stbi__fill_bits(stbi__zbuf *z) +{ + do { + if (z->code_buffer >= (1U << z->num_bits)) { + z->zbuffer = z->zbuffer_end; /* treat this as EOF so we fail. */ + return; + } + z->code_buffer |= (unsigned int) stbi__zget8(z) << z->num_bits; + z->num_bits += 8; + } while (z->num_bits <= 24); +} + +stbi_inline static unsigned int stbi__zreceive(stbi__zbuf *z, int n) +{ + unsigned int k; + if (z->num_bits < n) stbi__fill_bits(z); + k = z->code_buffer & ((1 << n) - 1); + z->code_buffer >>= n; + z->num_bits -= n; + return k; +} + +static int stbi__zhuffman_decode_slowpath(stbi__zbuf *a, stbi__zhuffman *z) +{ + int b,s,k; + // not resolved by fast table, so compute it the slow way + // use jpeg approach, which requires MSbits at top + k = stbi__bit_reverse(a->code_buffer, 16); + for (s=STBI__ZFAST_BITS+1; ; ++s) + if (k < z->maxcode[s]) + break; + if (s >= 16) return -1; // invalid code! + // code size is s, so: + b = (k >> (16-s)) - z->firstcode[s] + z->firstsymbol[s]; + if (b >= STBI__ZNSYMS) return -1; // some data was corrupt somewhere! + if (z->size[b] != s) return -1; // was originally an assert, but report failure instead. + a->code_buffer >>= s; + a->num_bits -= s; + return z->value[b]; +} + +stbi_inline static int stbi__zhuffman_decode(stbi__zbuf *a, stbi__zhuffman *z) +{ + int b,s; + if (a->num_bits < 16) { + if (stbi__zeof(a)) { + return -1; /* report error for unexpected end of data. */ + } + stbi__fill_bits(a); + } + b = z->fast[a->code_buffer & STBI__ZFAST_MASK]; + if (b) { + s = b >> 9; + a->code_buffer >>= s; + a->num_bits -= s; + return b & 511; + } + return stbi__zhuffman_decode_slowpath(a, z); +} + +static int stbi__zexpand(stbi__zbuf *z, char *zout, int n) // need to make room for n bytes +{ + char *q; + unsigned int cur, limit, old_limit; + z->zout = zout; + if (!z->z_expandable) return stbi__err("output buffer limit","Corrupt PNG"); + cur = (unsigned int) (z->zout - z->zout_start); + limit = old_limit = (unsigned) (z->zout_end - z->zout_start); + if (UINT_MAX - cur < (unsigned) n) return stbi__err("outofmem", "Out of memory"); + while (cur + n > limit) { + if(limit > UINT_MAX / 2) return stbi__err("outofmem", "Out of memory"); + limit *= 2; + } + q = (char *) STBI_REALLOC_SIZED(z->zout_start, old_limit, limit); + STBI_NOTUSED(old_limit); + if (q == NULL) return stbi__err("outofmem", "Out of memory"); + z->zout_start = q; + z->zout = q + cur; + z->zout_end = q + limit; + return 1; +} + +static const int stbi__zlength_base[31] = { + 3,4,5,6,7,8,9,10,11,13, + 15,17,19,23,27,31,35,43,51,59, + 67,83,99,115,131,163,195,227,258,0,0 }; + +static const int stbi__zlength_extra[31]= +{ 0,0,0,0,0,0,0,0,1,1,1,1,2,2,2,2,3,3,3,3,4,4,4,4,5,5,5,5,0,0,0 }; + +static const int stbi__zdist_base[32] = { 1,2,3,4,5,7,9,13,17,25,33,49,65,97,129,193, +257,385,513,769,1025,1537,2049,3073,4097,6145,8193,12289,16385,24577,0,0}; + +static const int stbi__zdist_extra[32] = +{ 0,0,0,0,1,1,2,2,3,3,4,4,5,5,6,6,7,7,8,8,9,9,10,10,11,11,12,12,13,13}; + +static int stbi__parse_huffman_block(stbi__zbuf *a) +{ + char *zout = a->zout; + for(;;) { + int z = stbi__zhuffman_decode(a, &a->z_length); + if (z < 256) { + if (z < 0) return stbi__err("bad huffman code","Corrupt PNG"); // error in huffman codes + if (zout >= a->zout_end) { + if (!stbi__zexpand(a, zout, 1)) return 0; + zout = a->zout; + } + *zout++ = (char) z; + } else { + stbi_uc *p; + int len,dist; + if (z == 256) { + a->zout = zout; + return 1; + } + if (z >= 286) return stbi__err("bad huffman code","Corrupt PNG"); // per DEFLATE, length codes 286 and 287 must not appear in compressed data + z -= 257; + len = stbi__zlength_base[z]; + if (stbi__zlength_extra[z]) len += stbi__zreceive(a, stbi__zlength_extra[z]); + z = stbi__zhuffman_decode(a, &a->z_distance); + if (z < 0 || z >= 30) return stbi__err("bad huffman code","Corrupt PNG"); // per DEFLATE, distance codes 30 and 31 must not appear in compressed data + dist = stbi__zdist_base[z]; + if (stbi__zdist_extra[z]) dist += stbi__zreceive(a, stbi__zdist_extra[z]); + if (zout - a->zout_start < dist) return stbi__err("bad dist","Corrupt PNG"); + if (zout + len > a->zout_end) { + if (!stbi__zexpand(a, zout, len)) return 0; + zout = a->zout; + } + p = (stbi_uc *) (zout - dist); + if (dist == 1) { // run of one byte; common in images. + stbi_uc v = *p; + if (len) { do *zout++ = v; while (--len); } + } else { + if (len) { do *zout++ = *p++; while (--len); } + } + } + } +} + +static int stbi__compute_huffman_codes(stbi__zbuf *a) +{ + static const stbi_uc length_dezigzag[19] = { 16,17,18,0,8,7,9,6,10,5,11,4,12,3,13,2,14,1,15 }; + stbi__zhuffman z_codelength; + stbi_uc lencodes[286+32+137];//padding for maximum single op + stbi_uc codelength_sizes[19]; + int i,n; + + int hlit = stbi__zreceive(a,5) + 257; + int hdist = stbi__zreceive(a,5) + 1; + int hclen = stbi__zreceive(a,4) + 4; + int ntot = hlit + hdist; + + memset(codelength_sizes, 0, sizeof(codelength_sizes)); + for (i=0; i < hclen; ++i) { + int s = stbi__zreceive(a,3); + codelength_sizes[length_dezigzag[i]] = (stbi_uc) s; + } + if (!stbi__zbuild_huffman(&z_codelength, codelength_sizes, 19)) return 0; + + n = 0; + while (n < ntot) { + int c = stbi__zhuffman_decode(a, &z_codelength); + if (c < 0 || c >= 19) return stbi__err("bad codelengths", "Corrupt PNG"); + if (c < 16) + lencodes[n++] = (stbi_uc) c; + else { + stbi_uc fill = 0; + if (c == 16) { + c = stbi__zreceive(a,2)+3; + if (n == 0) return stbi__err("bad codelengths", "Corrupt PNG"); + fill = lencodes[n-1]; + } else if (c == 17) { + c = stbi__zreceive(a,3)+3; + } else if (c == 18) { + c = stbi__zreceive(a,7)+11; + } else { + return stbi__err("bad codelengths", "Corrupt PNG"); + } + if (ntot - n < c) return stbi__err("bad codelengths", "Corrupt PNG"); + memset(lencodes+n, fill, c); + n += c; + } + } + if (n != ntot) return stbi__err("bad codelengths","Corrupt PNG"); + if (!stbi__zbuild_huffman(&a->z_length, lencodes, hlit)) return 0; + if (!stbi__zbuild_huffman(&a->z_distance, lencodes+hlit, hdist)) return 0; + return 1; +} + +static int stbi__parse_uncompressed_block(stbi__zbuf *a) +{ + stbi_uc header[4]; + int len,nlen,k; + if (a->num_bits & 7) + stbi__zreceive(a, a->num_bits & 7); // discard + // drain the bit-packed data into header + k = 0; + while (a->num_bits > 0) { + header[k++] = (stbi_uc) (a->code_buffer & 255); // suppress MSVC run-time check + a->code_buffer >>= 8; + a->num_bits -= 8; + } + if (a->num_bits < 0) return stbi__err("zlib corrupt","Corrupt PNG"); + // now fill header the normal way + while (k < 4) + header[k++] = stbi__zget8(a); + len = header[1] * 256 + header[0]; + nlen = header[3] * 256 + header[2]; + if (nlen != (len ^ 0xffff)) return stbi__err("zlib corrupt","Corrupt PNG"); + if (a->zbuffer + len > a->zbuffer_end) return stbi__err("read past buffer","Corrupt PNG"); + if (a->zout + len > a->zout_end) + if (!stbi__zexpand(a, a->zout, len)) return 0; + memcpy(a->zout, a->zbuffer, len); + a->zbuffer += len; + a->zout += len; + return 1; +} + +static int stbi__parse_zlib_header(stbi__zbuf *a) +{ + int cmf = stbi__zget8(a); + int cm = cmf & 15; + /* int cinfo = cmf >> 4; */ + int flg = stbi__zget8(a); + if (stbi__zeof(a)) return stbi__err("bad zlib header","Corrupt PNG"); // zlib spec + if ((cmf*256+flg) % 31 != 0) return stbi__err("bad zlib header","Corrupt PNG"); // zlib spec + if (flg & 32) return stbi__err("no preset dict","Corrupt PNG"); // preset dictionary not allowed in png + if (cm != 8) return stbi__err("bad compression","Corrupt PNG"); // DEFLATE required for png + // window = 1 << (8 + cinfo)... but who cares, we fully buffer output + return 1; +} + +static const stbi_uc stbi__zdefault_length[STBI__ZNSYMS] = +{ + 8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8, 8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8, + 8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8, 8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8, + 8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8, 8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8, + 8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8, 8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8, + 8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8, 9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9, + 9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9, 9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9, + 9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9, 9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9, + 9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9, 9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9, + 7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7, 7,7,7,7,7,7,7,7,8,8,8,8,8,8,8,8 +}; +static const stbi_uc stbi__zdefault_distance[32] = +{ + 5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5 +}; +/* +Init algorithm: +{ + int i; // use <= to match clearly with spec + for (i=0; i <= 143; ++i) stbi__zdefault_length[i] = 8; + for ( ; i <= 255; ++i) stbi__zdefault_length[i] = 9; + for ( ; i <= 279; ++i) stbi__zdefault_length[i] = 7; + for ( ; i <= 287; ++i) stbi__zdefault_length[i] = 8; + + for (i=0; i <= 31; ++i) stbi__zdefault_distance[i] = 5; +} +*/ + +static int stbi__parse_zlib(stbi__zbuf *a, int parse_header) +{ + int final, type; + if (parse_header) + if (!stbi__parse_zlib_header(a)) return 0; + a->num_bits = 0; + a->code_buffer = 0; + do { + final = stbi__zreceive(a,1); + type = stbi__zreceive(a,2); + if (type == 0) { + if (!stbi__parse_uncompressed_block(a)) return 0; + } else if (type == 3) { + return 0; + } else { + if (type == 1) { + // use fixed code lengths + if (!stbi__zbuild_huffman(&a->z_length , stbi__zdefault_length , STBI__ZNSYMS)) return 0; + if (!stbi__zbuild_huffman(&a->z_distance, stbi__zdefault_distance, 32)) return 0; + } else { + if (!stbi__compute_huffman_codes(a)) return 0; + } + if (!stbi__parse_huffman_block(a)) return 0; + } + } while (!final); + return 1; +} + +static int stbi__do_zlib(stbi__zbuf *a, char *obuf, int olen, int exp, int parse_header) +{ + a->zout_start = obuf; + a->zout = obuf; + a->zout_end = obuf + olen; + a->z_expandable = exp; + + return stbi__parse_zlib(a, parse_header); +} + +STBIDEF char *stbi_zlib_decode_malloc_guesssize(const char *buffer, int len, int initial_size, int *outlen) +{ + stbi__zbuf a; + char *p = (char *) stbi__malloc(initial_size); + if (p == NULL) return NULL; + a.zbuffer = (stbi_uc *) buffer; + a.zbuffer_end = (stbi_uc *) buffer + len; + if (stbi__do_zlib(&a, p, initial_size, 1, 1)) { + if (outlen) *outlen = (int) (a.zout - a.zout_start); + return a.zout_start; + } else { + STBI_FREE(a.zout_start); + return NULL; + } +} + +STBIDEF char *stbi_zlib_decode_malloc(char const *buffer, int len, int *outlen) +{ + return stbi_zlib_decode_malloc_guesssize(buffer, len, 16384, outlen); +} + +STBIDEF char *stbi_zlib_decode_malloc_guesssize_headerflag(const char *buffer, int len, int initial_size, int *outlen, int parse_header) +{ + stbi__zbuf a; + char *p = (char *) stbi__malloc(initial_size); + if (p == NULL) return NULL; + a.zbuffer = (stbi_uc *) buffer; + a.zbuffer_end = (stbi_uc *) buffer + len; + if (stbi__do_zlib(&a, p, initial_size, 1, parse_header)) { + if (outlen) *outlen = (int) (a.zout - a.zout_start); + return a.zout_start; + } else { + STBI_FREE(a.zout_start); + return NULL; + } +} + +STBIDEF int stbi_zlib_decode_buffer(char *obuffer, int olen, char const *ibuffer, int ilen) +{ + stbi__zbuf a; + a.zbuffer = (stbi_uc *) ibuffer; + a.zbuffer_end = (stbi_uc *) ibuffer + ilen; + if (stbi__do_zlib(&a, obuffer, olen, 0, 1)) + return (int) (a.zout - a.zout_start); + else + return -1; +} + +STBIDEF char *stbi_zlib_decode_noheader_malloc(char const *buffer, int len, int *outlen) +{ + stbi__zbuf a; + char *p = (char *) stbi__malloc(16384); + if (p == NULL) return NULL; + a.zbuffer = (stbi_uc *) buffer; + a.zbuffer_end = (stbi_uc *) buffer+len; + if (stbi__do_zlib(&a, p, 16384, 1, 0)) { + if (outlen) *outlen = (int) (a.zout - a.zout_start); + return a.zout_start; + } else { + STBI_FREE(a.zout_start); + return NULL; + } +} + +STBIDEF int stbi_zlib_decode_noheader_buffer(char *obuffer, int olen, const char *ibuffer, int ilen) +{ + stbi__zbuf a; + a.zbuffer = (stbi_uc *) ibuffer; + a.zbuffer_end = (stbi_uc *) ibuffer + ilen; + if (stbi__do_zlib(&a, obuffer, olen, 0, 0)) + return (int) (a.zout - a.zout_start); + else + return -1; +} +#endif + +// public domain "baseline" PNG decoder v0.10 Sean Barrett 2006-11-18 +// simple implementation +// - only 8-bit samples +// - no CRC checking +// - allocates lots of intermediate memory +// - avoids problem of streaming data between subsystems +// - avoids explicit window management +// performance +// - uses stb_zlib, a PD zlib implementation with fast huffman decoding + +#ifndef STBI_NO_PNG +typedef struct +{ + stbi__uint32 length; + stbi__uint32 type; +} stbi__pngchunk; + +static stbi__pngchunk stbi__get_chunk_header(stbi__context *s) +{ + stbi__pngchunk c; + c.length = stbi__get32be(s); + c.type = stbi__get32be(s); + return c; +} + +static int stbi__check_png_header(stbi__context *s) +{ + static const stbi_uc png_sig[8] = { 137,80,78,71,13,10,26,10 }; + int i; + for (i=0; i < 8; ++i) + if (stbi__get8(s) != png_sig[i]) return stbi__err("bad png sig","Not a PNG"); + return 1; +} + +typedef struct +{ + stbi__context *s; + stbi_uc *idata, *expanded, *out; + int depth; +} stbi__png; + + +enum { + STBI__F_none=0, + STBI__F_sub=1, + STBI__F_up=2, + STBI__F_avg=3, + STBI__F_paeth=4, + // synthetic filters used for first scanline to avoid needing a dummy row of 0s + STBI__F_avg_first, + STBI__F_paeth_first +}; + +static stbi_uc first_row_filter[5] = +{ + STBI__F_none, + STBI__F_sub, + STBI__F_none, + STBI__F_avg_first, + STBI__F_paeth_first +}; + +static int stbi__paeth(int a, int b, int c) +{ + int p = a + b - c; + int pa = abs(p-a); + int pb = abs(p-b); + int pc = abs(p-c); + if (pa <= pb && pa <= pc) return a; + if (pb <= pc) return b; + return c; +} + +static const stbi_uc stbi__depth_scale_table[9] = { 0, 0xff, 0x55, 0, 0x11, 0,0,0, 0x01 }; + +// create the png data from post-deflated data +static int stbi__create_png_image_raw(stbi__png *a, stbi_uc *raw, stbi__uint32 raw_len, int out_n, stbi__uint32 x, stbi__uint32 y, int depth, int color) +{ + int bytes = (depth == 16? 2 : 1); + stbi__context *s = a->s; + stbi__uint32 i,j,stride = x*out_n*bytes; + stbi__uint32 img_len, img_width_bytes; + int k; + int img_n = s->img_n; // copy it into a local for later + + int output_bytes = out_n*bytes; + int filter_bytes = img_n*bytes; + int width = x; + + STBI_ASSERT(out_n == s->img_n || out_n == s->img_n+1); + a->out = (stbi_uc *) stbi__malloc_mad3(x, y, output_bytes, 0); // extra bytes to write off the end into + if (!a->out) return stbi__err("outofmem", "Out of memory"); + + if (!stbi__mad3sizes_valid(img_n, x, depth, 7)) return stbi__err("too large", "Corrupt PNG"); + img_width_bytes = (((img_n * x * depth) + 7) >> 3); + img_len = (img_width_bytes + 1) * y; + + // we used to check for exact match between raw_len and img_len on non-interlaced PNGs, + // but issue #276 reported a PNG in the wild that had extra data at the end (all zeros), + // so just check for raw_len < img_len always. + if (raw_len < img_len) return stbi__err("not enough pixels","Corrupt PNG"); + + for (j=0; j < y; ++j) { + stbi_uc *cur = a->out + stride*j; + stbi_uc *prior; + int filter = *raw++; + + if (filter > 4) + return stbi__err("invalid filter","Corrupt PNG"); + + if (depth < 8) { + if (img_width_bytes > x) return stbi__err("invalid width","Corrupt PNG"); + cur += x*out_n - img_width_bytes; // store output to the rightmost img_len bytes, so we can decode in place + filter_bytes = 1; + width = img_width_bytes; + } + prior = cur - stride; // bugfix: need to compute this after 'cur +=' computation above + + // if first row, use special filter that doesn't sample previous row + if (j == 0) filter = first_row_filter[filter]; + + // handle first byte explicitly + for (k=0; k < filter_bytes; ++k) { + switch (filter) { + case STBI__F_none : cur[k] = raw[k]; break; + case STBI__F_sub : cur[k] = raw[k]; break; + case STBI__F_up : cur[k] = STBI__BYTECAST(raw[k] + prior[k]); break; + case STBI__F_avg : cur[k] = STBI__BYTECAST(raw[k] + (prior[k]>>1)); break; + case STBI__F_paeth : cur[k] = STBI__BYTECAST(raw[k] + stbi__paeth(0,prior[k],0)); break; + case STBI__F_avg_first : cur[k] = raw[k]; break; + case STBI__F_paeth_first: cur[k] = raw[k]; break; + } + } + + if (depth == 8) { + if (img_n != out_n) + cur[img_n] = 255; // first pixel + raw += img_n; + cur += out_n; + prior += out_n; + } else if (depth == 16) { + if (img_n != out_n) { + cur[filter_bytes] = 255; // first pixel top byte + cur[filter_bytes+1] = 255; // first pixel bottom byte + } + raw += filter_bytes; + cur += output_bytes; + prior += output_bytes; + } else { + raw += 1; + cur += 1; + prior += 1; + } + + // this is a little gross, so that we don't switch per-pixel or per-component + if (depth < 8 || img_n == out_n) { + int nk = (width - 1)*filter_bytes; + #define STBI__CASE(f) \ + case f: \ + for (k=0; k < nk; ++k) + switch (filter) { + // "none" filter turns into a memcpy here; make that explicit. + case STBI__F_none: memcpy(cur, raw, nk); break; + STBI__CASE(STBI__F_sub) { cur[k] = STBI__BYTECAST(raw[k] + cur[k-filter_bytes]); } break; + STBI__CASE(STBI__F_up) { cur[k] = STBI__BYTECAST(raw[k] + prior[k]); } break; + STBI__CASE(STBI__F_avg) { cur[k] = STBI__BYTECAST(raw[k] + ((prior[k] + cur[k-filter_bytes])>>1)); } break; + STBI__CASE(STBI__F_paeth) { cur[k] = STBI__BYTECAST(raw[k] + stbi__paeth(cur[k-filter_bytes],prior[k],prior[k-filter_bytes])); } break; + STBI__CASE(STBI__F_avg_first) { cur[k] = STBI__BYTECAST(raw[k] + (cur[k-filter_bytes] >> 1)); } break; + STBI__CASE(STBI__F_paeth_first) { cur[k] = STBI__BYTECAST(raw[k] + stbi__paeth(cur[k-filter_bytes],0,0)); } break; + } + #undef STBI__CASE + raw += nk; + } else { + STBI_ASSERT(img_n+1 == out_n); + #define STBI__CASE(f) \ + case f: \ + for (i=x-1; i >= 1; --i, cur[filter_bytes]=255,raw+=filter_bytes,cur+=output_bytes,prior+=output_bytes) \ + for (k=0; k < filter_bytes; ++k) + switch (filter) { + STBI__CASE(STBI__F_none) { cur[k] = raw[k]; } break; + STBI__CASE(STBI__F_sub) { cur[k] = STBI__BYTECAST(raw[k] + cur[k- output_bytes]); } break; + STBI__CASE(STBI__F_up) { cur[k] = STBI__BYTECAST(raw[k] + prior[k]); } break; + STBI__CASE(STBI__F_avg) { cur[k] = STBI__BYTECAST(raw[k] + ((prior[k] + cur[k- output_bytes])>>1)); } break; + STBI__CASE(STBI__F_paeth) { cur[k] = STBI__BYTECAST(raw[k] + stbi__paeth(cur[k- output_bytes],prior[k],prior[k- output_bytes])); } break; + STBI__CASE(STBI__F_avg_first) { cur[k] = STBI__BYTECAST(raw[k] + (cur[k- output_bytes] >> 1)); } break; + STBI__CASE(STBI__F_paeth_first) { cur[k] = STBI__BYTECAST(raw[k] + stbi__paeth(cur[k- output_bytes],0,0)); } break; + } + #undef STBI__CASE + + // the loop above sets the high byte of the pixels' alpha, but for + // 16 bit png files we also need the low byte set. we'll do that here. + if (depth == 16) { + cur = a->out + stride*j; // start at the beginning of the row again + for (i=0; i < x; ++i,cur+=output_bytes) { + cur[filter_bytes+1] = 255; + } + } + } + } + + // we make a separate pass to expand bits to pixels; for performance, + // this could run two scanlines behind the above code, so it won't + // intefere with filtering but will still be in the cache. + if (depth < 8) { + for (j=0; j < y; ++j) { + stbi_uc *cur = a->out + stride*j; + stbi_uc *in = a->out + stride*j + x*out_n - img_width_bytes; + // unpack 1/2/4-bit into a 8-bit buffer. allows us to keep the common 8-bit path optimal at minimal cost for 1/2/4-bit + // png guarante byte alignment, if width is not multiple of 8/4/2 we'll decode dummy trailing data that will be skipped in the later loop + stbi_uc scale = (color == 0) ? stbi__depth_scale_table[depth] : 1; // scale grayscale values to 0..255 range + + // note that the final byte might overshoot and write more data than desired. + // we can allocate enough data that this never writes out of memory, but it + // could also overwrite the next scanline. can it overwrite non-empty data + // on the next scanline? yes, consider 1-pixel-wide scanlines with 1-bit-per-pixel. + // so we need to explicitly clamp the final ones + + if (depth == 4) { + for (k=x*img_n; k >= 2; k-=2, ++in) { + *cur++ = scale * ((*in >> 4) ); + *cur++ = scale * ((*in ) & 0x0f); + } + if (k > 0) *cur++ = scale * ((*in >> 4) ); + } else if (depth == 2) { + for (k=x*img_n; k >= 4; k-=4, ++in) { + *cur++ = scale * ((*in >> 6) ); + *cur++ = scale * ((*in >> 4) & 0x03); + *cur++ = scale * ((*in >> 2) & 0x03); + *cur++ = scale * ((*in ) & 0x03); + } + if (k > 0) *cur++ = scale * ((*in >> 6) ); + if (k > 1) *cur++ = scale * ((*in >> 4) & 0x03); + if (k > 2) *cur++ = scale * ((*in >> 2) & 0x03); + } else if (depth == 1) { + for (k=x*img_n; k >= 8; k-=8, ++in) { + *cur++ = scale * ((*in >> 7) ); + *cur++ = scale * ((*in >> 6) & 0x01); + *cur++ = scale * ((*in >> 5) & 0x01); + *cur++ = scale * ((*in >> 4) & 0x01); + *cur++ = scale * ((*in >> 3) & 0x01); + *cur++ = scale * ((*in >> 2) & 0x01); + *cur++ = scale * ((*in >> 1) & 0x01); + *cur++ = scale * ((*in ) & 0x01); + } + if (k > 0) *cur++ = scale * ((*in >> 7) ); + if (k > 1) *cur++ = scale * ((*in >> 6) & 0x01); + if (k > 2) *cur++ = scale * ((*in >> 5) & 0x01); + if (k > 3) *cur++ = scale * ((*in >> 4) & 0x01); + if (k > 4) *cur++ = scale * ((*in >> 3) & 0x01); + if (k > 5) *cur++ = scale * ((*in >> 2) & 0x01); + if (k > 6) *cur++ = scale * ((*in >> 1) & 0x01); + } + if (img_n != out_n) { + int q; + // insert alpha = 255 + cur = a->out + stride*j; + if (img_n == 1) { + for (q=x-1; q >= 0; --q) { + cur[q*2+1] = 255; + cur[q*2+0] = cur[q]; + } + } else { + STBI_ASSERT(img_n == 3); + for (q=x-1; q >= 0; --q) { + cur[q*4+3] = 255; + cur[q*4+2] = cur[q*3+2]; + cur[q*4+1] = cur[q*3+1]; + cur[q*4+0] = cur[q*3+0]; + } + } + } + } + } else if (depth == 16) { + // force the image data from big-endian to platform-native. + // this is done in a separate pass due to the decoding relying + // on the data being untouched, but could probably be done + // per-line during decode if care is taken. + stbi_uc *cur = a->out; + stbi__uint16 *cur16 = (stbi__uint16*)cur; + + for(i=0; i < x*y*out_n; ++i,cur16++,cur+=2) { + *cur16 = (cur[0] << 8) | cur[1]; + } + } + + return 1; +} + +static int stbi__create_png_image(stbi__png *a, stbi_uc *image_data, stbi__uint32 image_data_len, int out_n, int depth, int color, int interlaced) +{ + int bytes = (depth == 16 ? 2 : 1); + int out_bytes = out_n * bytes; + stbi_uc *final; + int p; + if (!interlaced) + return stbi__create_png_image_raw(a, image_data, image_data_len, out_n, a->s->img_x, a->s->img_y, depth, color); + + // de-interlacing + final = (stbi_uc *) stbi__malloc_mad3(a->s->img_x, a->s->img_y, out_bytes, 0); + if (!final) return stbi__err("outofmem", "Out of memory"); + for (p=0; p < 7; ++p) { + int xorig[] = { 0,4,0,2,0,1,0 }; + int yorig[] = { 0,0,4,0,2,0,1 }; + int xspc[] = { 8,8,4,4,2,2,1 }; + int yspc[] = { 8,8,8,4,4,2,2 }; + int i,j,x,y; + // pass1_x[4] = 0, pass1_x[5] = 1, pass1_x[12] = 1 + x = (a->s->img_x - xorig[p] + xspc[p]-1) / xspc[p]; + y = (a->s->img_y - yorig[p] + yspc[p]-1) / yspc[p]; + if (x && y) { + stbi__uint32 img_len = ((((a->s->img_n * x * depth) + 7) >> 3) + 1) * y; + if (!stbi__create_png_image_raw(a, image_data, image_data_len, out_n, x, y, depth, color)) { + STBI_FREE(final); + return 0; + } + for (j=0; j < y; ++j) { + for (i=0; i < x; ++i) { + int out_y = j*yspc[p]+yorig[p]; + int out_x = i*xspc[p]+xorig[p]; + memcpy(final + out_y*a->s->img_x*out_bytes + out_x*out_bytes, + a->out + (j*x+i)*out_bytes, out_bytes); + } + } + STBI_FREE(a->out); + image_data += img_len; + image_data_len -= img_len; + } + } + a->out = final; + + return 1; +} + +static int stbi__compute_transparency(stbi__png *z, stbi_uc tc[3], int out_n) +{ + stbi__context *s = z->s; + stbi__uint32 i, pixel_count = s->img_x * s->img_y; + stbi_uc *p = z->out; + + // compute color-based transparency, assuming we've + // already got 255 as the alpha value in the output + STBI_ASSERT(out_n == 2 || out_n == 4); + + if (out_n == 2) { + for (i=0; i < pixel_count; ++i) { + p[1] = (p[0] == tc[0] ? 0 : 255); + p += 2; + } + } else { + for (i=0; i < pixel_count; ++i) { + if (p[0] == tc[0] && p[1] == tc[1] && p[2] == tc[2]) + p[3] = 0; + p += 4; + } + } + return 1; +} + +static int stbi__compute_transparency16(stbi__png *z, stbi__uint16 tc[3], int out_n) +{ + stbi__context *s = z->s; + stbi__uint32 i, pixel_count = s->img_x * s->img_y; + stbi__uint16 *p = (stbi__uint16*) z->out; + + // compute color-based transparency, assuming we've + // already got 65535 as the alpha value in the output + STBI_ASSERT(out_n == 2 || out_n == 4); + + if (out_n == 2) { + for (i = 0; i < pixel_count; ++i) { + p[1] = (p[0] == tc[0] ? 0 : 65535); + p += 2; + } + } else { + for (i = 0; i < pixel_count; ++i) { + if (p[0] == tc[0] && p[1] == tc[1] && p[2] == tc[2]) + p[3] = 0; + p += 4; + } + } + return 1; +} + +static int stbi__expand_png_palette(stbi__png *a, stbi_uc *palette, int len, int pal_img_n) +{ + stbi__uint32 i, pixel_count = a->s->img_x * a->s->img_y; + stbi_uc *p, *temp_out, *orig = a->out; + + p = (stbi_uc *) stbi__malloc_mad2(pixel_count, pal_img_n, 0); + if (p == NULL) return stbi__err("outofmem", "Out of memory"); + + // between here and free(out) below, exitting would leak + temp_out = p; + + if (pal_img_n == 3) { + for (i=0; i < pixel_count; ++i) { + int n = orig[i]*4; + p[0] = palette[n ]; + p[1] = palette[n+1]; + p[2] = palette[n+2]; + p += 3; + } + } else { + for (i=0; i < pixel_count; ++i) { + int n = orig[i]*4; + p[0] = palette[n ]; + p[1] = palette[n+1]; + p[2] = palette[n+2]; + p[3] = palette[n+3]; + p += 4; + } + } + STBI_FREE(a->out); + a->out = temp_out; + + STBI_NOTUSED(len); + + return 1; +} + +static int stbi__unpremultiply_on_load_global = 0; +static int stbi__de_iphone_flag_global = 0; + +STBIDEF void stbi_set_unpremultiply_on_load(int flag_true_if_should_unpremultiply) +{ + stbi__unpremultiply_on_load_global = flag_true_if_should_unpremultiply; +} + +STBIDEF void stbi_convert_iphone_png_to_rgb(int flag_true_if_should_convert) +{ + stbi__de_iphone_flag_global = flag_true_if_should_convert; +} + +#ifndef STBI_THREAD_LOCAL +#define stbi__unpremultiply_on_load stbi__unpremultiply_on_load_global +#define stbi__de_iphone_flag stbi__de_iphone_flag_global +#else +static STBI_THREAD_LOCAL int stbi__unpremultiply_on_load_local, stbi__unpremultiply_on_load_set; +static STBI_THREAD_LOCAL int stbi__de_iphone_flag_local, stbi__de_iphone_flag_set; + +STBIDEF void stbi_set_unpremultiply_on_load_thread(int flag_true_if_should_unpremultiply) +{ + stbi__unpremultiply_on_load_local = flag_true_if_should_unpremultiply; + stbi__unpremultiply_on_load_set = 1; +} + +STBIDEF void stbi_convert_iphone_png_to_rgb_thread(int flag_true_if_should_convert) +{ + stbi__de_iphone_flag_local = flag_true_if_should_convert; + stbi__de_iphone_flag_set = 1; +} + +#define stbi__unpremultiply_on_load (stbi__unpremultiply_on_load_set \ + ? stbi__unpremultiply_on_load_local \ + : stbi__unpremultiply_on_load_global) +#define stbi__de_iphone_flag (stbi__de_iphone_flag_set \ + ? stbi__de_iphone_flag_local \ + : stbi__de_iphone_flag_global) +#endif // STBI_THREAD_LOCAL + +static void stbi__de_iphone(stbi__png *z) +{ + stbi__context *s = z->s; + stbi__uint32 i, pixel_count = s->img_x * s->img_y; + stbi_uc *p = z->out; + + if (s->img_out_n == 3) { // convert bgr to rgb + for (i=0; i < pixel_count; ++i) { + stbi_uc t = p[0]; + p[0] = p[2]; + p[2] = t; + p += 3; + } + } else { + STBI_ASSERT(s->img_out_n == 4); + if (stbi__unpremultiply_on_load) { + // convert bgr to rgb and unpremultiply + for (i=0; i < pixel_count; ++i) { + stbi_uc a = p[3]; + stbi_uc t = p[0]; + if (a) { + stbi_uc half = a / 2; + p[0] = (p[2] * 255 + half) / a; + p[1] = (p[1] * 255 + half) / a; + p[2] = ( t * 255 + half) / a; + } else { + p[0] = p[2]; + p[2] = t; + } + p += 4; + } + } else { + // convert bgr to rgb + for (i=0; i < pixel_count; ++i) { + stbi_uc t = p[0]; + p[0] = p[2]; + p[2] = t; + p += 4; + } + } + } +} + +#define STBI__PNG_TYPE(a,b,c,d) (((unsigned) (a) << 24) + ((unsigned) (b) << 16) + ((unsigned) (c) << 8) + (unsigned) (d)) + +static int stbi__parse_png_file(stbi__png *z, int scan, int req_comp) +{ + stbi_uc palette[1024], pal_img_n=0; + stbi_uc has_trans=0, tc[3]={0}; + stbi__uint16 tc16[3]; + stbi__uint32 ioff=0, idata_limit=0, i, pal_len=0; + int first=1,k,interlace=0, color=0, is_iphone=0; + stbi__context *s = z->s; + + z->expanded = NULL; + z->idata = NULL; + z->out = NULL; + + if (!stbi__check_png_header(s)) return 0; + + if (scan == STBI__SCAN_type) return 1; + + for (;;) { + stbi__pngchunk c = stbi__get_chunk_header(s); + switch (c.type) { + case STBI__PNG_TYPE('C','g','B','I'): + is_iphone = 1; + stbi__skip(s, c.length); + break; + case STBI__PNG_TYPE('I','H','D','R'): { + int comp,filter; + if (!first) return stbi__err("multiple IHDR","Corrupt PNG"); + first = 0; + if (c.length != 13) return stbi__err("bad IHDR len","Corrupt PNG"); + s->img_x = stbi__get32be(s); + s->img_y = stbi__get32be(s); + if (s->img_y > STBI_MAX_DIMENSIONS) return stbi__err("too large","Very large image (corrupt?)"); + if (s->img_x > STBI_MAX_DIMENSIONS) return stbi__err("too large","Very large image (corrupt?)"); + z->depth = stbi__get8(s); if (z->depth != 1 && z->depth != 2 && z->depth != 4 && z->depth != 8 && z->depth != 16) return stbi__err("1/2/4/8/16-bit only","PNG not supported: 1/2/4/8/16-bit only"); + color = stbi__get8(s); if (color > 6) return stbi__err("bad ctype","Corrupt PNG"); + if (color == 3 && z->depth == 16) return stbi__err("bad ctype","Corrupt PNG"); + if (color == 3) pal_img_n = 3; else if (color & 1) return stbi__err("bad ctype","Corrupt PNG"); + comp = stbi__get8(s); if (comp) return stbi__err("bad comp method","Corrupt PNG"); + filter= stbi__get8(s); if (filter) return stbi__err("bad filter method","Corrupt PNG"); + interlace = stbi__get8(s); if (interlace>1) return stbi__err("bad interlace method","Corrupt PNG"); + if (!s->img_x || !s->img_y) return stbi__err("0-pixel image","Corrupt PNG"); + if (!pal_img_n) { + s->img_n = (color & 2 ? 3 : 1) + (color & 4 ? 1 : 0); + if ((1 << 30) / s->img_x / s->img_n < s->img_y) return stbi__err("too large", "Image too large to decode"); + } else { + // if paletted, then pal_n is our final components, and + // img_n is # components to decompress/filter. + s->img_n = 1; + if ((1 << 30) / s->img_x / 4 < s->img_y) return stbi__err("too large","Corrupt PNG"); + } + // even with SCAN_header, have to scan to see if we have a tRNS + break; + } + + case STBI__PNG_TYPE('P','L','T','E'): { + if (first) return stbi__err("first not IHDR", "Corrupt PNG"); + if (c.length > 256*3) return stbi__err("invalid PLTE","Corrupt PNG"); + pal_len = c.length / 3; + if (pal_len * 3 != c.length) return stbi__err("invalid PLTE","Corrupt PNG"); + for (i=0; i < pal_len; ++i) { + palette[i*4+0] = stbi__get8(s); + palette[i*4+1] = stbi__get8(s); + palette[i*4+2] = stbi__get8(s); + palette[i*4+3] = 255; + } + break; + } + + case STBI__PNG_TYPE('t','R','N','S'): { + if (first) return stbi__err("first not IHDR", "Corrupt PNG"); + if (z->idata) return stbi__err("tRNS after IDAT","Corrupt PNG"); + if (pal_img_n) { + if (scan == STBI__SCAN_header) { s->img_n = 4; return 1; } + if (pal_len == 0) return stbi__err("tRNS before PLTE","Corrupt PNG"); + if (c.length > pal_len) return stbi__err("bad tRNS len","Corrupt PNG"); + pal_img_n = 4; + for (i=0; i < c.length; ++i) + palette[i*4+3] = stbi__get8(s); + } else { + if (!(s->img_n & 1)) return stbi__err("tRNS with alpha","Corrupt PNG"); + if (c.length != (stbi__uint32) s->img_n*2) return stbi__err("bad tRNS len","Corrupt PNG"); + has_trans = 1; + // non-paletted with tRNS = constant alpha. if header-scanning, we can stop now. + if (scan == STBI__SCAN_header) { ++s->img_n; return 1; } + if (z->depth == 16) { + for (k = 0; k < s->img_n; ++k) tc16[k] = (stbi__uint16)stbi__get16be(s); // copy the values as-is + } else { + for (k = 0; k < s->img_n; ++k) tc[k] = (stbi_uc)(stbi__get16be(s) & 255) * stbi__depth_scale_table[z->depth]; // non 8-bit images will be larger + } + } + break; + } + + case STBI__PNG_TYPE('I','D','A','T'): { + if (first) return stbi__err("first not IHDR", "Corrupt PNG"); + if (pal_img_n && !pal_len) return stbi__err("no PLTE","Corrupt PNG"); + if (scan == STBI__SCAN_header) { + // header scan definitely stops at first IDAT + if (pal_img_n) + s->img_n = pal_img_n; + return 1; + } + if (c.length > (1u << 30)) return stbi__err("IDAT size limit", "IDAT section larger than 2^30 bytes"); + if ((int)(ioff + c.length) < (int)ioff) return 0; + if (ioff + c.length > idata_limit) { + stbi__uint32 idata_limit_old = idata_limit; + stbi_uc *p; + if (idata_limit == 0) idata_limit = c.length > 4096 ? c.length : 4096; + while (ioff + c.length > idata_limit) + idata_limit *= 2; + STBI_NOTUSED(idata_limit_old); + p = (stbi_uc *) STBI_REALLOC_SIZED(z->idata, idata_limit_old, idata_limit); if (p == NULL) return stbi__err("outofmem", "Out of memory"); + z->idata = p; + } + if (!stbi__getn(s, z->idata+ioff,c.length)) return stbi__err("outofdata","Corrupt PNG"); + ioff += c.length; + break; + } + + case STBI__PNG_TYPE('I','E','N','D'): { + stbi__uint32 raw_len, bpl; + if (first) return stbi__err("first not IHDR", "Corrupt PNG"); + if (scan != STBI__SCAN_load) return 1; + if (z->idata == NULL) return stbi__err("no IDAT","Corrupt PNG"); + // initial guess for decoded data size to avoid unnecessary reallocs + bpl = (s->img_x * z->depth + 7) / 8; // bytes per line, per component + raw_len = bpl * s->img_y * s->img_n /* pixels */ + s->img_y /* filter mode per row */; + z->expanded = (stbi_uc *) stbi_zlib_decode_malloc_guesssize_headerflag((char *) z->idata, ioff, raw_len, (int *) &raw_len, !is_iphone); + if (z->expanded == NULL) return 0; // zlib should set error + STBI_FREE(z->idata); z->idata = NULL; + if ((req_comp == s->img_n+1 && req_comp != 3 && !pal_img_n) || has_trans) + s->img_out_n = s->img_n+1; + else + s->img_out_n = s->img_n; + if (!stbi__create_png_image(z, z->expanded, raw_len, s->img_out_n, z->depth, color, interlace)) return 0; + if (has_trans) { + if (z->depth == 16) { + if (!stbi__compute_transparency16(z, tc16, s->img_out_n)) return 0; + } else { + if (!stbi__compute_transparency(z, tc, s->img_out_n)) return 0; + } + } + if (is_iphone && stbi__de_iphone_flag && s->img_out_n > 2) + stbi__de_iphone(z); + if (pal_img_n) { + // pal_img_n == 3 or 4 + s->img_n = pal_img_n; // record the actual colors we had + s->img_out_n = pal_img_n; + if (req_comp >= 3) s->img_out_n = req_comp; + if (!stbi__expand_png_palette(z, palette, pal_len, s->img_out_n)) + return 0; + } else if (has_trans) { + // non-paletted image with tRNS -> source image has (constant) alpha + ++s->img_n; + } + STBI_FREE(z->expanded); z->expanded = NULL; + // end of PNG chunk, read and skip CRC + stbi__get32be(s); + return 1; + } + + default: + // if critical, fail + if (first) return stbi__err("first not IHDR", "Corrupt PNG"); + if ((c.type & (1 << 29)) == 0) { + #ifndef STBI_NO_FAILURE_STRINGS + // not threadsafe + static char invalid_chunk[] = "XXXX PNG chunk not known"; + invalid_chunk[0] = STBI__BYTECAST(c.type >> 24); + invalid_chunk[1] = STBI__BYTECAST(c.type >> 16); + invalid_chunk[2] = STBI__BYTECAST(c.type >> 8); + invalid_chunk[3] = STBI__BYTECAST(c.type >> 0); + #endif + return stbi__err(invalid_chunk, "PNG not supported: unknown PNG chunk type"); + } + stbi__skip(s, c.length); + break; + } + // end of PNG chunk, read and skip CRC + stbi__get32be(s); + } +} + +static void *stbi__do_png(stbi__png *p, int *x, int *y, int *n, int req_comp, stbi__result_info *ri) +{ + void *result=NULL; + if (req_comp < 0 || req_comp > 4) return stbi__errpuc("bad req_comp", "Internal error"); + if (stbi__parse_png_file(p, STBI__SCAN_load, req_comp)) { + if (p->depth <= 8) + ri->bits_per_channel = 8; + else if (p->depth == 16) + ri->bits_per_channel = 16; + else + return stbi__errpuc("bad bits_per_channel", "PNG not supported: unsupported color depth"); + result = p->out; + p->out = NULL; + if (req_comp && req_comp != p->s->img_out_n) { + if (ri->bits_per_channel == 8) + result = stbi__convert_format((unsigned char *) result, p->s->img_out_n, req_comp, p->s->img_x, p->s->img_y); + else + result = stbi__convert_format16((stbi__uint16 *) result, p->s->img_out_n, req_comp, p->s->img_x, p->s->img_y); + p->s->img_out_n = req_comp; + if (result == NULL) return result; + } + *x = p->s->img_x; + *y = p->s->img_y; + if (n) *n = p->s->img_n; + } + STBI_FREE(p->out); p->out = NULL; + STBI_FREE(p->expanded); p->expanded = NULL; + STBI_FREE(p->idata); p->idata = NULL; + + return result; +} + +static void *stbi__png_load(stbi__context *s, int *x, int *y, int *comp, int req_comp, stbi__result_info *ri) +{ + stbi__png p; + p.s = s; + return stbi__do_png(&p, x,y,comp,req_comp, ri); +} + +static int stbi__png_test(stbi__context *s) +{ + int r; + r = stbi__check_png_header(s); + stbi__rewind(s); + return r; +} + +static int stbi__png_info_raw(stbi__png *p, int *x, int *y, int *comp) +{ + if (!stbi__parse_png_file(p, STBI__SCAN_header, 0)) { + stbi__rewind( p->s ); + return 0; + } + if (x) *x = p->s->img_x; + if (y) *y = p->s->img_y; + if (comp) *comp = p->s->img_n; + return 1; +} + +static int stbi__png_info(stbi__context *s, int *x, int *y, int *comp) +{ + stbi__png p; + p.s = s; + return stbi__png_info_raw(&p, x, y, comp); +} + +static int stbi__png_is16(stbi__context *s) +{ + stbi__png p; + p.s = s; + if (!stbi__png_info_raw(&p, NULL, NULL, NULL)) + return 0; + if (p.depth != 16) { + stbi__rewind(p.s); + return 0; + } + return 1; +} +#endif + +// Microsoft/Windows BMP image + +#ifndef STBI_NO_BMP +static int stbi__bmp_test_raw(stbi__context *s) +{ + int r; + int sz; + if (stbi__get8(s) != 'B') return 0; + if (stbi__get8(s) != 'M') return 0; + stbi__get32le(s); // discard filesize + stbi__get16le(s); // discard reserved + stbi__get16le(s); // discard reserved + stbi__get32le(s); // discard data offset + sz = stbi__get32le(s); + r = (sz == 12 || sz == 40 || sz == 56 || sz == 108 || sz == 124); + return r; +} + +static int stbi__bmp_test(stbi__context *s) +{ + int r = stbi__bmp_test_raw(s); + stbi__rewind(s); + return r; +} + + +// returns 0..31 for the highest set bit +static int stbi__high_bit(unsigned int z) +{ + int n=0; + if (z == 0) return -1; + if (z >= 0x10000) { n += 16; z >>= 16; } + if (z >= 0x00100) { n += 8; z >>= 8; } + if (z >= 0x00010) { n += 4; z >>= 4; } + if (z >= 0x00004) { n += 2; z >>= 2; } + if (z >= 0x00002) { n += 1;/* >>= 1;*/ } + return n; +} + +static int stbi__bitcount(unsigned int a) +{ + a = (a & 0x55555555) + ((a >> 1) & 0x55555555); // max 2 + a = (a & 0x33333333) + ((a >> 2) & 0x33333333); // max 4 + a = (a + (a >> 4)) & 0x0f0f0f0f; // max 8 per 4, now 8 bits + a = (a + (a >> 8)); // max 16 per 8 bits + a = (a + (a >> 16)); // max 32 per 8 bits + return a & 0xff; +} + +// extract an arbitrarily-aligned N-bit value (N=bits) +// from v, and then make it 8-bits long and fractionally +// extend it to full full range. +static int stbi__shiftsigned(unsigned int v, int shift, int bits) +{ + static unsigned int mul_table[9] = { + 0, + 0xff/*0b11111111*/, 0x55/*0b01010101*/, 0x49/*0b01001001*/, 0x11/*0b00010001*/, + 0x21/*0b00100001*/, 0x41/*0b01000001*/, 0x81/*0b10000001*/, 0x01/*0b00000001*/, + }; + static unsigned int shift_table[9] = { + 0, 0,0,1,0,2,4,6,0, + }; + if (shift < 0) + v <<= -shift; + else + v >>= shift; + STBI_ASSERT(v < 256); + v >>= (8-bits); + STBI_ASSERT(bits >= 0 && bits <= 8); + return (int) ((unsigned) v * mul_table[bits]) >> shift_table[bits]; +} + +typedef struct +{ + int bpp, offset, hsz; + unsigned int mr,mg,mb,ma, all_a; + int extra_read; +} stbi__bmp_data; + +static int stbi__bmp_set_mask_defaults(stbi__bmp_data *info, int compress) +{ + // BI_BITFIELDS specifies masks explicitly, don't override + if (compress == 3) + return 1; + + if (compress == 0) { + if (info->bpp == 16) { + info->mr = 31u << 10; + info->mg = 31u << 5; + info->mb = 31u << 0; + } else if (info->bpp == 32) { + info->mr = 0xffu << 16; + info->mg = 0xffu << 8; + info->mb = 0xffu << 0; + info->ma = 0xffu << 24; + info->all_a = 0; // if all_a is 0 at end, then we loaded alpha channel but it was all 0 + } else { + // otherwise, use defaults, which is all-0 + info->mr = info->mg = info->mb = info->ma = 0; + } + return 1; + } + return 0; // error +} + +static void *stbi__bmp_parse_header(stbi__context *s, stbi__bmp_data *info) +{ + int hsz; + if (stbi__get8(s) != 'B' || stbi__get8(s) != 'M') return stbi__errpuc("not BMP", "Corrupt BMP"); + stbi__get32le(s); // discard filesize + stbi__get16le(s); // discard reserved + stbi__get16le(s); // discard reserved + info->offset = stbi__get32le(s); + info->hsz = hsz = stbi__get32le(s); + info->mr = info->mg = info->mb = info->ma = 0; + info->extra_read = 14; + + if (info->offset < 0) return stbi__errpuc("bad BMP", "bad BMP"); + + if (hsz != 12 && hsz != 40 && hsz != 56 && hsz != 108 && hsz != 124) return stbi__errpuc("unknown BMP", "BMP type not supported: unknown"); + if (hsz == 12) { + s->img_x = stbi__get16le(s); + s->img_y = stbi__get16le(s); + } else { + s->img_x = stbi__get32le(s); + s->img_y = stbi__get32le(s); + } + if (stbi__get16le(s) != 1) return stbi__errpuc("bad BMP", "bad BMP"); + info->bpp = stbi__get16le(s); + if (hsz != 12) { + int compress = stbi__get32le(s); + if (compress == 1 || compress == 2) return stbi__errpuc("BMP RLE", "BMP type not supported: RLE"); + if (compress >= 4) return stbi__errpuc("BMP JPEG/PNG", "BMP type not supported: unsupported compression"); // this includes PNG/JPEG modes + if (compress == 3 && info->bpp != 16 && info->bpp != 32) return stbi__errpuc("bad BMP", "bad BMP"); // bitfields requires 16 or 32 bits/pixel + stbi__get32le(s); // discard sizeof + stbi__get32le(s); // discard hres + stbi__get32le(s); // discard vres + stbi__get32le(s); // discard colorsused + stbi__get32le(s); // discard max important + if (hsz == 40 || hsz == 56) { + if (hsz == 56) { + stbi__get32le(s); + stbi__get32le(s); + stbi__get32le(s); + stbi__get32le(s); + } + if (info->bpp == 16 || info->bpp == 32) { + if (compress == 0) { + stbi__bmp_set_mask_defaults(info, compress); + } else if (compress == 3) { + info->mr = stbi__get32le(s); + info->mg = stbi__get32le(s); + info->mb = stbi__get32le(s); + info->extra_read += 12; + // not documented, but generated by photoshop and handled by mspaint + if (info->mr == info->mg && info->mg == info->mb) { + // ?!?!? + return stbi__errpuc("bad BMP", "bad BMP"); + } + } else + return stbi__errpuc("bad BMP", "bad BMP"); + } + } else { + // V4/V5 header + int i; + if (hsz != 108 && hsz != 124) + return stbi__errpuc("bad BMP", "bad BMP"); + info->mr = stbi__get32le(s); + info->mg = stbi__get32le(s); + info->mb = stbi__get32le(s); + info->ma = stbi__get32le(s); + if (compress != 3) // override mr/mg/mb unless in BI_BITFIELDS mode, as per docs + stbi__bmp_set_mask_defaults(info, compress); + stbi__get32le(s); // discard color space + for (i=0; i < 12; ++i) + stbi__get32le(s); // discard color space parameters + if (hsz == 124) { + stbi__get32le(s); // discard rendering intent + stbi__get32le(s); // discard offset of profile data + stbi__get32le(s); // discard size of profile data + stbi__get32le(s); // discard reserved + } + } + } + return (void *) 1; +} + + +static void *stbi__bmp_load(stbi__context *s, int *x, int *y, int *comp, int req_comp, stbi__result_info *ri) +{ + stbi_uc *out; + unsigned int mr=0,mg=0,mb=0,ma=0, all_a; + stbi_uc pal[256][4]; + int psize=0,i,j,width; + int flip_vertically, pad, target; + stbi__bmp_data info; + STBI_NOTUSED(ri); + + info.all_a = 255; + if (stbi__bmp_parse_header(s, &info) == NULL) + return NULL; // error code already set + + flip_vertically = ((int) s->img_y) > 0; + s->img_y = abs((int) s->img_y); + + if (s->img_y > STBI_MAX_DIMENSIONS) return stbi__errpuc("too large","Very large image (corrupt?)"); + if (s->img_x > STBI_MAX_DIMENSIONS) return stbi__errpuc("too large","Very large image (corrupt?)"); + + mr = info.mr; + mg = info.mg; + mb = info.mb; + ma = info.ma; + all_a = info.all_a; + + if (info.hsz == 12) { + if (info.bpp < 24) + psize = (info.offset - info.extra_read - 24) / 3; + } else { + if (info.bpp < 16) + psize = (info.offset - info.extra_read - info.hsz) >> 2; + } + if (psize == 0) { + // accept some number of extra bytes after the header, but if the offset points either to before + // the header ends or implies a large amount of extra data, reject the file as malformed + int bytes_read_so_far = s->callback_already_read + (int)(s->img_buffer - s->img_buffer_original); + int header_limit = 1024; // max we actually read is below 256 bytes currently. + int extra_data_limit = 256*4; // what ordinarily goes here is a palette; 256 entries*4 bytes is its max size. + if (bytes_read_so_far <= 0 || bytes_read_so_far > header_limit) { + return stbi__errpuc("bad header", "Corrupt BMP"); + } + // we established that bytes_read_so_far is positive and sensible. + // the first half of this test rejects offsets that are either too small positives, or + // negative, and guarantees that info.offset >= bytes_read_so_far > 0. this in turn + // ensures the number computed in the second half of the test can't overflow. + if (info.offset < bytes_read_so_far || info.offset - bytes_read_so_far > extra_data_limit) { + return stbi__errpuc("bad offset", "Corrupt BMP"); + } else { + stbi__skip(s, info.offset - bytes_read_so_far); + } + } + + if (info.bpp == 24 && ma == 0xff000000) + s->img_n = 3; + else + s->img_n = ma ? 4 : 3; + if (req_comp && req_comp >= 3) // we can directly decode 3 or 4 + target = req_comp; + else + target = s->img_n; // if they want monochrome, we'll post-convert + + // sanity-check size + if (!stbi__mad3sizes_valid(target, s->img_x, s->img_y, 0)) + return stbi__errpuc("too large", "Corrupt BMP"); + + out = (stbi_uc *) stbi__malloc_mad3(target, s->img_x, s->img_y, 0); + if (!out) return stbi__errpuc("outofmem", "Out of memory"); + if (info.bpp < 16) { + int z=0; + if (psize == 0 || psize > 256) { STBI_FREE(out); return stbi__errpuc("invalid", "Corrupt BMP"); } + for (i=0; i < psize; ++i) { + pal[i][2] = stbi__get8(s); + pal[i][1] = stbi__get8(s); + pal[i][0] = stbi__get8(s); + if (info.hsz != 12) stbi__get8(s); + pal[i][3] = 255; + } + stbi__skip(s, info.offset - info.extra_read - info.hsz - psize * (info.hsz == 12 ? 3 : 4)); + if (info.bpp == 1) width = (s->img_x + 7) >> 3; + else if (info.bpp == 4) width = (s->img_x + 1) >> 1; + else if (info.bpp == 8) width = s->img_x; + else { STBI_FREE(out); return stbi__errpuc("bad bpp", "Corrupt BMP"); } + pad = (-width)&3; + if (info.bpp == 1) { + for (j=0; j < (int) s->img_y; ++j) { + int bit_offset = 7, v = stbi__get8(s); + for (i=0; i < (int) s->img_x; ++i) { + int color = (v>>bit_offset)&0x1; + out[z++] = pal[color][0]; + out[z++] = pal[color][1]; + out[z++] = pal[color][2]; + if (target == 4) out[z++] = 255; + if (i+1 == (int) s->img_x) break; + if((--bit_offset) < 0) { + bit_offset = 7; + v = stbi__get8(s); + } + } + stbi__skip(s, pad); + } + } else { + for (j=0; j < (int) s->img_y; ++j) { + for (i=0; i < (int) s->img_x; i += 2) { + int v=stbi__get8(s),v2=0; + if (info.bpp == 4) { + v2 = v & 15; + v >>= 4; + } + out[z++] = pal[v][0]; + out[z++] = pal[v][1]; + out[z++] = pal[v][2]; + if (target == 4) out[z++] = 255; + if (i+1 == (int) s->img_x) break; + v = (info.bpp == 8) ? stbi__get8(s) : v2; + out[z++] = pal[v][0]; + out[z++] = pal[v][1]; + out[z++] = pal[v][2]; + if (target == 4) out[z++] = 255; + } + stbi__skip(s, pad); + } + } + } else { + int rshift=0,gshift=0,bshift=0,ashift=0,rcount=0,gcount=0,bcount=0,acount=0; + int z = 0; + int easy=0; + stbi__skip(s, info.offset - info.extra_read - info.hsz); + if (info.bpp == 24) width = 3 * s->img_x; + else if (info.bpp == 16) width = 2*s->img_x; + else /* bpp = 32 and pad = 0 */ width=0; + pad = (-width) & 3; + if (info.bpp == 24) { + easy = 1; + } else if (info.bpp == 32) { + if (mb == 0xff && mg == 0xff00 && mr == 0x00ff0000 && ma == 0xff000000) + easy = 2; + } + if (!easy) { + if (!mr || !mg || !mb) { STBI_FREE(out); return stbi__errpuc("bad masks", "Corrupt BMP"); } + // right shift amt to put high bit in position #7 + rshift = stbi__high_bit(mr)-7; rcount = stbi__bitcount(mr); + gshift = stbi__high_bit(mg)-7; gcount = stbi__bitcount(mg); + bshift = stbi__high_bit(mb)-7; bcount = stbi__bitcount(mb); + ashift = stbi__high_bit(ma)-7; acount = stbi__bitcount(ma); + if (rcount > 8 || gcount > 8 || bcount > 8 || acount > 8) { STBI_FREE(out); return stbi__errpuc("bad masks", "Corrupt BMP"); } + } + for (j=0; j < (int) s->img_y; ++j) { + if (easy) { + for (i=0; i < (int) s->img_x; ++i) { + unsigned char a; + out[z+2] = stbi__get8(s); + out[z+1] = stbi__get8(s); + out[z+0] = stbi__get8(s); + z += 3; + a = (easy == 2 ? stbi__get8(s) : 255); + all_a |= a; + if (target == 4) out[z++] = a; + } + } else { + int bpp = info.bpp; + for (i=0; i < (int) s->img_x; ++i) { + stbi__uint32 v = (bpp == 16 ? (stbi__uint32) stbi__get16le(s) : stbi__get32le(s)); + unsigned int a; + out[z++] = STBI__BYTECAST(stbi__shiftsigned(v & mr, rshift, rcount)); + out[z++] = STBI__BYTECAST(stbi__shiftsigned(v & mg, gshift, gcount)); + out[z++] = STBI__BYTECAST(stbi__shiftsigned(v & mb, bshift, bcount)); + a = (ma ? stbi__shiftsigned(v & ma, ashift, acount) : 255); + all_a |= a; + if (target == 4) out[z++] = STBI__BYTECAST(a); + } + } + stbi__skip(s, pad); + } + } + + // if alpha channel is all 0s, replace with all 255s + if (target == 4 && all_a == 0) + for (i=4*s->img_x*s->img_y-1; i >= 0; i -= 4) + out[i] = 255; + + if (flip_vertically) { + stbi_uc t; + for (j=0; j < (int) s->img_y>>1; ++j) { + stbi_uc *p1 = out + j *s->img_x*target; + stbi_uc *p2 = out + (s->img_y-1-j)*s->img_x*target; + for (i=0; i < (int) s->img_x*target; ++i) { + t = p1[i]; p1[i] = p2[i]; p2[i] = t; + } + } + } + + if (req_comp && req_comp != target) { + out = stbi__convert_format(out, target, req_comp, s->img_x, s->img_y); + if (out == NULL) return out; // stbi__convert_format frees input on failure + } + + *x = s->img_x; + *y = s->img_y; + if (comp) *comp = s->img_n; + return out; +} +#endif + +// Targa Truevision - TGA +// by Jonathan Dummer +#ifndef STBI_NO_TGA +// returns STBI_rgb or whatever, 0 on error +static int stbi__tga_get_comp(int bits_per_pixel, int is_grey, int* is_rgb16) +{ + // only RGB or RGBA (incl. 16bit) or grey allowed + if (is_rgb16) *is_rgb16 = 0; + switch(bits_per_pixel) { + case 8: return STBI_grey; + case 16: if(is_grey) return STBI_grey_alpha; + // fallthrough + case 15: if(is_rgb16) *is_rgb16 = 1; + return STBI_rgb; + case 24: // fallthrough + case 32: return bits_per_pixel/8; + default: return 0; + } +} + +static int stbi__tga_info(stbi__context *s, int *x, int *y, int *comp) +{ + int tga_w, tga_h, tga_comp, tga_image_type, tga_bits_per_pixel, tga_colormap_bpp; + int sz, tga_colormap_type; + stbi__get8(s); // discard Offset + tga_colormap_type = stbi__get8(s); // colormap type + if( tga_colormap_type > 1 ) { + stbi__rewind(s); + return 0; // only RGB or indexed allowed + } + tga_image_type = stbi__get8(s); // image type + if ( tga_colormap_type == 1 ) { // colormapped (paletted) image + if (tga_image_type != 1 && tga_image_type != 9) { + stbi__rewind(s); + return 0; + } + stbi__skip(s,4); // skip index of first colormap entry and number of entries + sz = stbi__get8(s); // check bits per palette color entry + if ( (sz != 8) && (sz != 15) && (sz != 16) && (sz != 24) && (sz != 32) ) { + stbi__rewind(s); + return 0; + } + stbi__skip(s,4); // skip image x and y origin + tga_colormap_bpp = sz; + } else { // "normal" image w/o colormap - only RGB or grey allowed, +/- RLE + if ( (tga_image_type != 2) && (tga_image_type != 3) && (tga_image_type != 10) && (tga_image_type != 11) ) { + stbi__rewind(s); + return 0; // only RGB or grey allowed, +/- RLE + } + stbi__skip(s,9); // skip colormap specification and image x/y origin + tga_colormap_bpp = 0; + } + tga_w = stbi__get16le(s); + if( tga_w < 1 ) { + stbi__rewind(s); + return 0; // test width + } + tga_h = stbi__get16le(s); + if( tga_h < 1 ) { + stbi__rewind(s); + return 0; // test height + } + tga_bits_per_pixel = stbi__get8(s); // bits per pixel + stbi__get8(s); // ignore alpha bits + if (tga_colormap_bpp != 0) { + if((tga_bits_per_pixel != 8) && (tga_bits_per_pixel != 16)) { + // when using a colormap, tga_bits_per_pixel is the size of the indexes + // I don't think anything but 8 or 16bit indexes makes sense + stbi__rewind(s); + return 0; + } + tga_comp = stbi__tga_get_comp(tga_colormap_bpp, 0, NULL); + } else { + tga_comp = stbi__tga_get_comp(tga_bits_per_pixel, (tga_image_type == 3) || (tga_image_type == 11), NULL); + } + if(!tga_comp) { + stbi__rewind(s); + return 0; + } + if (x) *x = tga_w; + if (y) *y = tga_h; + if (comp) *comp = tga_comp; + return 1; // seems to have passed everything +} + +static int stbi__tga_test(stbi__context *s) +{ + int res = 0; + int sz, tga_color_type; + stbi__get8(s); // discard Offset + tga_color_type = stbi__get8(s); // color type + if ( tga_color_type > 1 ) goto errorEnd; // only RGB or indexed allowed + sz = stbi__get8(s); // image type + if ( tga_color_type == 1 ) { // colormapped (paletted) image + if (sz != 1 && sz != 9) goto errorEnd; // colortype 1 demands image type 1 or 9 + stbi__skip(s,4); // skip index of first colormap entry and number of entries + sz = stbi__get8(s); // check bits per palette color entry + if ( (sz != 8) && (sz != 15) && (sz != 16) && (sz != 24) && (sz != 32) ) goto errorEnd; + stbi__skip(s,4); // skip image x and y origin + } else { // "normal" image w/o colormap + if ( (sz != 2) && (sz != 3) && (sz != 10) && (sz != 11) ) goto errorEnd; // only RGB or grey allowed, +/- RLE + stbi__skip(s,9); // skip colormap specification and image x/y origin + } + if ( stbi__get16le(s) < 1 ) goto errorEnd; // test width + if ( stbi__get16le(s) < 1 ) goto errorEnd; // test height + sz = stbi__get8(s); // bits per pixel + if ( (tga_color_type == 1) && (sz != 8) && (sz != 16) ) goto errorEnd; // for colormapped images, bpp is size of an index + if ( (sz != 8) && (sz != 15) && (sz != 16) && (sz != 24) && (sz != 32) ) goto errorEnd; + + res = 1; // if we got this far, everything's good and we can return 1 instead of 0 + +errorEnd: + stbi__rewind(s); + return res; +} + +// read 16bit value and convert to 24bit RGB +static void stbi__tga_read_rgb16(stbi__context *s, stbi_uc* out) +{ + stbi__uint16 px = (stbi__uint16)stbi__get16le(s); + stbi__uint16 fiveBitMask = 31; + // we have 3 channels with 5bits each + int r = (px >> 10) & fiveBitMask; + int g = (px >> 5) & fiveBitMask; + int b = px & fiveBitMask; + // Note that this saves the data in RGB(A) order, so it doesn't need to be swapped later + out[0] = (stbi_uc)((r * 255)/31); + out[1] = (stbi_uc)((g * 255)/31); + out[2] = (stbi_uc)((b * 255)/31); + + // some people claim that the most significant bit might be used for alpha + // (possibly if an alpha-bit is set in the "image descriptor byte") + // but that only made 16bit test images completely translucent.. + // so let's treat all 15 and 16bit TGAs as RGB with no alpha. +} + +static void *stbi__tga_load(stbi__context *s, int *x, int *y, int *comp, int req_comp, stbi__result_info *ri) +{ + // read in the TGA header stuff + int tga_offset = stbi__get8(s); + int tga_indexed = stbi__get8(s); + int tga_image_type = stbi__get8(s); + int tga_is_RLE = 0; + int tga_palette_start = stbi__get16le(s); + int tga_palette_len = stbi__get16le(s); + int tga_palette_bits = stbi__get8(s); + int tga_x_origin = stbi__get16le(s); + int tga_y_origin = stbi__get16le(s); + int tga_width = stbi__get16le(s); + int tga_height = stbi__get16le(s); + int tga_bits_per_pixel = stbi__get8(s); + int tga_comp, tga_rgb16=0; + int tga_inverted = stbi__get8(s); + // int tga_alpha_bits = tga_inverted & 15; // the 4 lowest bits - unused (useless?) + // image data + unsigned char *tga_data; + unsigned char *tga_palette = NULL; + int i, j; + unsigned char raw_data[4] = {0}; + int RLE_count = 0; + int RLE_repeating = 0; + int read_next_pixel = 1; + STBI_NOTUSED(ri); + STBI_NOTUSED(tga_x_origin); // @TODO + STBI_NOTUSED(tga_y_origin); // @TODO + + if (tga_height > STBI_MAX_DIMENSIONS) return stbi__errpuc("too large","Very large image (corrupt?)"); + if (tga_width > STBI_MAX_DIMENSIONS) return stbi__errpuc("too large","Very large image (corrupt?)"); + + // do a tiny bit of precessing + if ( tga_image_type >= 8 ) + { + tga_image_type -= 8; + tga_is_RLE = 1; + } + tga_inverted = 1 - ((tga_inverted >> 5) & 1); + + // If I'm paletted, then I'll use the number of bits from the palette + if ( tga_indexed ) tga_comp = stbi__tga_get_comp(tga_palette_bits, 0, &tga_rgb16); + else tga_comp = stbi__tga_get_comp(tga_bits_per_pixel, (tga_image_type == 3), &tga_rgb16); + + if(!tga_comp) // shouldn't really happen, stbi__tga_test() should have ensured basic consistency + return stbi__errpuc("bad format", "Can't find out TGA pixelformat"); + + // tga info + *x = tga_width; + *y = tga_height; + if (comp) *comp = tga_comp; + + if (!stbi__mad3sizes_valid(tga_width, tga_height, tga_comp, 0)) + return stbi__errpuc("too large", "Corrupt TGA"); + + tga_data = (unsigned char*)stbi__malloc_mad3(tga_width, tga_height, tga_comp, 0); + if (!tga_data) return stbi__errpuc("outofmem", "Out of memory"); + + // skip to the data's starting position (offset usually = 0) + stbi__skip(s, tga_offset ); + + if ( !tga_indexed && !tga_is_RLE && !tga_rgb16 ) { + for (i=0; i < tga_height; ++i) { + int row = tga_inverted ? tga_height -i - 1 : i; + stbi_uc *tga_row = tga_data + row*tga_width*tga_comp; + stbi__getn(s, tga_row, tga_width * tga_comp); + } + } else { + // do I need to load a palette? + if ( tga_indexed) + { + if (tga_palette_len == 0) { /* you have to have at least one entry! */ + STBI_FREE(tga_data); + return stbi__errpuc("bad palette", "Corrupt TGA"); + } + + // any data to skip? (offset usually = 0) + stbi__skip(s, tga_palette_start ); + // load the palette + tga_palette = (unsigned char*)stbi__malloc_mad2(tga_palette_len, tga_comp, 0); + if (!tga_palette) { + STBI_FREE(tga_data); + return stbi__errpuc("outofmem", "Out of memory"); + } + if (tga_rgb16) { + stbi_uc *pal_entry = tga_palette; + STBI_ASSERT(tga_comp == STBI_rgb); + for (i=0; i < tga_palette_len; ++i) { + stbi__tga_read_rgb16(s, pal_entry); + pal_entry += tga_comp; + } + } else if (!stbi__getn(s, tga_palette, tga_palette_len * tga_comp)) { + STBI_FREE(tga_data); + STBI_FREE(tga_palette); + return stbi__errpuc("bad palette", "Corrupt TGA"); + } + } + // load the data + for (i=0; i < tga_width * tga_height; ++i) + { + // if I'm in RLE mode, do I need to get a RLE stbi__pngchunk? + if ( tga_is_RLE ) + { + if ( RLE_count == 0 ) + { + // yep, get the next byte as a RLE command + int RLE_cmd = stbi__get8(s); + RLE_count = 1 + (RLE_cmd & 127); + RLE_repeating = RLE_cmd >> 7; + read_next_pixel = 1; + } else if ( !RLE_repeating ) + { + read_next_pixel = 1; + } + } else + { + read_next_pixel = 1; + } + // OK, if I need to read a pixel, do it now + if ( read_next_pixel ) + { + // load however much data we did have + if ( tga_indexed ) + { + // read in index, then perform the lookup + int pal_idx = (tga_bits_per_pixel == 8) ? stbi__get8(s) : stbi__get16le(s); + if ( pal_idx >= tga_palette_len ) { + // invalid index + pal_idx = 0; + } + pal_idx *= tga_comp; + for (j = 0; j < tga_comp; ++j) { + raw_data[j] = tga_palette[pal_idx+j]; + } + } else if(tga_rgb16) { + STBI_ASSERT(tga_comp == STBI_rgb); + stbi__tga_read_rgb16(s, raw_data); + } else { + // read in the data raw + for (j = 0; j < tga_comp; ++j) { + raw_data[j] = stbi__get8(s); + } + } + // clear the reading flag for the next pixel + read_next_pixel = 0; + } // end of reading a pixel + + // copy data + for (j = 0; j < tga_comp; ++j) + tga_data[i*tga_comp+j] = raw_data[j]; + + // in case we're in RLE mode, keep counting down + --RLE_count; + } + // do I need to invert the image? + if ( tga_inverted ) + { + for (j = 0; j*2 < tga_height; ++j) + { + int index1 = j * tga_width * tga_comp; + int index2 = (tga_height - 1 - j) * tga_width * tga_comp; + for (i = tga_width * tga_comp; i > 0; --i) + { + unsigned char temp = tga_data[index1]; + tga_data[index1] = tga_data[index2]; + tga_data[index2] = temp; + ++index1; + ++index2; + } + } + } + // clear my palette, if I had one + if ( tga_palette != NULL ) + { + STBI_FREE( tga_palette ); + } + } + + // swap RGB - if the source data was RGB16, it already is in the right order + if (tga_comp >= 3 && !tga_rgb16) + { + unsigned char* tga_pixel = tga_data; + for (i=0; i < tga_width * tga_height; ++i) + { + unsigned char temp = tga_pixel[0]; + tga_pixel[0] = tga_pixel[2]; + tga_pixel[2] = temp; + tga_pixel += tga_comp; + } + } + + // convert to target component count + if (req_comp && req_comp != tga_comp) + tga_data = stbi__convert_format(tga_data, tga_comp, req_comp, tga_width, tga_height); + + // the things I do to get rid of an error message, and yet keep + // Microsoft's C compilers happy... [8^( + tga_palette_start = tga_palette_len = tga_palette_bits = + tga_x_origin = tga_y_origin = 0; + STBI_NOTUSED(tga_palette_start); + // OK, done + return tga_data; +} +#endif + +// ************************************************************************************************* +// Photoshop PSD loader -- PD by Thatcher Ulrich, integration by Nicolas Schulz, tweaked by STB + +#ifndef STBI_NO_PSD +static int stbi__psd_test(stbi__context *s) +{ + int r = (stbi__get32be(s) == 0x38425053); + stbi__rewind(s); + return r; +} + +static int stbi__psd_decode_rle(stbi__context *s, stbi_uc *p, int pixelCount) +{ + int count, nleft, len; + + count = 0; + while ((nleft = pixelCount - count) > 0) { + len = stbi__get8(s); + if (len == 128) { + // No-op. + } else if (len < 128) { + // Copy next len+1 bytes literally. + len++; + if (len > nleft) return 0; // corrupt data + count += len; + while (len) { + *p = stbi__get8(s); + p += 4; + len--; + } + } else if (len > 128) { + stbi_uc val; + // Next -len+1 bytes in the dest are replicated from next source byte. + // (Interpret len as a negative 8-bit int.) + len = 257 - len; + if (len > nleft) return 0; // corrupt data + val = stbi__get8(s); + count += len; + while (len) { + *p = val; + p += 4; + len--; + } + } + } + + return 1; +} + +static void *stbi__psd_load(stbi__context *s, int *x, int *y, int *comp, int req_comp, stbi__result_info *ri, int bpc) +{ + int pixelCount; + int channelCount, compression; + int channel, i; + int bitdepth; + int w,h; + stbi_uc *out; + STBI_NOTUSED(ri); + + // Check identifier + if (stbi__get32be(s) != 0x38425053) // "8BPS" + return stbi__errpuc("not PSD", "Corrupt PSD image"); + + // Check file type version. + if (stbi__get16be(s) != 1) + return stbi__errpuc("wrong version", "Unsupported version of PSD image"); + + // Skip 6 reserved bytes. + stbi__skip(s, 6 ); + + // Read the number of channels (R, G, B, A, etc). + channelCount = stbi__get16be(s); + if (channelCount < 0 || channelCount > 16) + return stbi__errpuc("wrong channel count", "Unsupported number of channels in PSD image"); + + // Read the rows and columns of the image. + h = stbi__get32be(s); + w = stbi__get32be(s); + + if (h > STBI_MAX_DIMENSIONS) return stbi__errpuc("too large","Very large image (corrupt?)"); + if (w > STBI_MAX_DIMENSIONS) return stbi__errpuc("too large","Very large image (corrupt?)"); + + // Make sure the depth is 8 bits. + bitdepth = stbi__get16be(s); + if (bitdepth != 8 && bitdepth != 16) + return stbi__errpuc("unsupported bit depth", "PSD bit depth is not 8 or 16 bit"); + + // Make sure the color mode is RGB. + // Valid options are: + // 0: Bitmap + // 1: Grayscale + // 2: Indexed color + // 3: RGB color + // 4: CMYK color + // 7: Multichannel + // 8: Duotone + // 9: Lab color + if (stbi__get16be(s) != 3) + return stbi__errpuc("wrong color format", "PSD is not in RGB color format"); + + // Skip the Mode Data. (It's the palette for indexed color; other info for other modes.) + stbi__skip(s,stbi__get32be(s) ); + + // Skip the image resources. (resolution, pen tool paths, etc) + stbi__skip(s, stbi__get32be(s) ); + + // Skip the reserved data. + stbi__skip(s, stbi__get32be(s) ); + + // Find out if the data is compressed. + // Known values: + // 0: no compression + // 1: RLE compressed + compression = stbi__get16be(s); + if (compression > 1) + return stbi__errpuc("bad compression", "PSD has an unknown compression format"); + + // Check size + if (!stbi__mad3sizes_valid(4, w, h, 0)) + return stbi__errpuc("too large", "Corrupt PSD"); + + // Create the destination image. + + if (!compression && bitdepth == 16 && bpc == 16) { + out = (stbi_uc *) stbi__malloc_mad3(8, w, h, 0); + ri->bits_per_channel = 16; + } else + out = (stbi_uc *) stbi__malloc(4 * w*h); + + if (!out) return stbi__errpuc("outofmem", "Out of memory"); + pixelCount = w*h; + + // Initialize the data to zero. + //memset( out, 0, pixelCount * 4 ); + + // Finally, the image data. + if (compression) { + // RLE as used by .PSD and .TIFF + // Loop until you get the number of unpacked bytes you are expecting: + // Read the next source byte into n. + // If n is between 0 and 127 inclusive, copy the next n+1 bytes literally. + // Else if n is between -127 and -1 inclusive, copy the next byte -n+1 times. + // Else if n is 128, noop. + // Endloop + + // The RLE-compressed data is preceded by a 2-byte data count for each row in the data, + // which we're going to just skip. + stbi__skip(s, h * channelCount * 2 ); + + // Read the RLE data by channel. + for (channel = 0; channel < 4; channel++) { + stbi_uc *p; + + p = out+channel; + if (channel >= channelCount) { + // Fill this channel with default data. + for (i = 0; i < pixelCount; i++, p += 4) + *p = (channel == 3 ? 255 : 0); + } else { + // Read the RLE data. + if (!stbi__psd_decode_rle(s, p, pixelCount)) { + STBI_FREE(out); + return stbi__errpuc("corrupt", "bad RLE data"); + } + } + } + + } else { + // We're at the raw image data. It's each channel in order (Red, Green, Blue, Alpha, ...) + // where each channel consists of an 8-bit (or 16-bit) value for each pixel in the image. + + // Read the data by channel. + for (channel = 0; channel < 4; channel++) { + if (channel >= channelCount) { + // Fill this channel with default data. + if (bitdepth == 16 && bpc == 16) { + stbi__uint16 *q = ((stbi__uint16 *) out) + channel; + stbi__uint16 val = channel == 3 ? 65535 : 0; + for (i = 0; i < pixelCount; i++, q += 4) + *q = val; + } else { + stbi_uc *p = out+channel; + stbi_uc val = channel == 3 ? 255 : 0; + for (i = 0; i < pixelCount; i++, p += 4) + *p = val; + } + } else { + if (ri->bits_per_channel == 16) { // output bpc + stbi__uint16 *q = ((stbi__uint16 *) out) + channel; + for (i = 0; i < pixelCount; i++, q += 4) + *q = (stbi__uint16) stbi__get16be(s); + } else { + stbi_uc *p = out+channel; + if (bitdepth == 16) { // input bpc + for (i = 0; i < pixelCount; i++, p += 4) + *p = (stbi_uc) (stbi__get16be(s) >> 8); + } else { + for (i = 0; i < pixelCount; i++, p += 4) + *p = stbi__get8(s); + } + } + } + } + } + + // remove weird white matte from PSD + if (channelCount >= 4) { + if (ri->bits_per_channel == 16) { + for (i=0; i < w*h; ++i) { + stbi__uint16 *pixel = (stbi__uint16 *) out + 4*i; + if (pixel[3] != 0 && pixel[3] != 65535) { + float a = pixel[3] / 65535.0f; + float ra = 1.0f / a; + float inv_a = 65535.0f * (1 - ra); + pixel[0] = (stbi__uint16) (pixel[0]*ra + inv_a); + pixel[1] = (stbi__uint16) (pixel[1]*ra + inv_a); + pixel[2] = (stbi__uint16) (pixel[2]*ra + inv_a); + } + } + } else { + for (i=0; i < w*h; ++i) { + unsigned char *pixel = out + 4*i; + if (pixel[3] != 0 && pixel[3] != 255) { + float a = pixel[3] / 255.0f; + float ra = 1.0f / a; + float inv_a = 255.0f * (1 - ra); + pixel[0] = (unsigned char) (pixel[0]*ra + inv_a); + pixel[1] = (unsigned char) (pixel[1]*ra + inv_a); + pixel[2] = (unsigned char) (pixel[2]*ra + inv_a); + } + } + } + } + + // convert to desired output format + if (req_comp && req_comp != 4) { + if (ri->bits_per_channel == 16) + out = (stbi_uc *) stbi__convert_format16((stbi__uint16 *) out, 4, req_comp, w, h); + else + out = stbi__convert_format(out, 4, req_comp, w, h); + if (out == NULL) return out; // stbi__convert_format frees input on failure + } + + if (comp) *comp = 4; + *y = h; + *x = w; + + return out; +} +#endif + +// ************************************************************************************************* +// Softimage PIC loader +// by Tom Seddon +// +// See http://softimage.wiki.softimage.com/index.php/INFO:_PIC_file_format +// See http://ozviz.wasp.uwa.edu.au/~pbourke/dataformats/softimagepic/ + +#ifndef STBI_NO_PIC +static int stbi__pic_is4(stbi__context *s,const char *str) +{ + int i; + for (i=0; i<4; ++i) + if (stbi__get8(s) != (stbi_uc)str[i]) + return 0; + + return 1; +} + +static int stbi__pic_test_core(stbi__context *s) +{ + int i; + + if (!stbi__pic_is4(s,"\x53\x80\xF6\x34")) + return 0; + + for(i=0;i<84;++i) + stbi__get8(s); + + if (!stbi__pic_is4(s,"PICT")) + return 0; + + return 1; +} + +typedef struct +{ + stbi_uc size,type,channel; +} stbi__pic_packet; + +static stbi_uc *stbi__readval(stbi__context *s, int channel, stbi_uc *dest) +{ + int mask=0x80, i; + + for (i=0; i<4; ++i, mask>>=1) { + if (channel & mask) { + if (stbi__at_eof(s)) return stbi__errpuc("bad file","PIC file too short"); + dest[i]=stbi__get8(s); + } + } + + return dest; +} + +static void stbi__copyval(int channel,stbi_uc *dest,const stbi_uc *src) +{ + int mask=0x80,i; + + for (i=0;i<4; ++i, mask>>=1) + if (channel&mask) + dest[i]=src[i]; +} + +static stbi_uc *stbi__pic_load_core(stbi__context *s,int width,int height,int *comp, stbi_uc *result) +{ + int act_comp=0,num_packets=0,y,chained; + stbi__pic_packet packets[10]; + + // this will (should...) cater for even some bizarre stuff like having data + // for the same channel in multiple packets. + do { + stbi__pic_packet *packet; + + if (num_packets==sizeof(packets)/sizeof(packets[0])) + return stbi__errpuc("bad format","too many packets"); + + packet = &packets[num_packets++]; + + chained = stbi__get8(s); + packet->size = stbi__get8(s); + packet->type = stbi__get8(s); + packet->channel = stbi__get8(s); + + act_comp |= packet->channel; + + if (stbi__at_eof(s)) return stbi__errpuc("bad file","file too short (reading packets)"); + if (packet->size != 8) return stbi__errpuc("bad format","packet isn't 8bpp"); + } while (chained); + + *comp = (act_comp & 0x10 ? 4 : 3); // has alpha channel? + + for(y=0; ytype) { + default: + return stbi__errpuc("bad format","packet has bad compression type"); + + case 0: {//uncompressed + int x; + + for(x=0;xchannel,dest)) + return 0; + break; + } + + case 1://Pure RLE + { + int left=width, i; + + while (left>0) { + stbi_uc count,value[4]; + + count=stbi__get8(s); + if (stbi__at_eof(s)) return stbi__errpuc("bad file","file too short (pure read count)"); + + if (count > left) + count = (stbi_uc) left; + + if (!stbi__readval(s,packet->channel,value)) return 0; + + for(i=0; ichannel,dest,value); + left -= count; + } + } + break; + + case 2: {//Mixed RLE + int left=width; + while (left>0) { + int count = stbi__get8(s), i; + if (stbi__at_eof(s)) return stbi__errpuc("bad file","file too short (mixed read count)"); + + if (count >= 128) { // Repeated + stbi_uc value[4]; + + if (count==128) + count = stbi__get16be(s); + else + count -= 127; + if (count > left) + return stbi__errpuc("bad file","scanline overrun"); + + if (!stbi__readval(s,packet->channel,value)) + return 0; + + for(i=0;ichannel,dest,value); + } else { // Raw + ++count; + if (count>left) return stbi__errpuc("bad file","scanline overrun"); + + for(i=0;ichannel,dest)) + return 0; + } + left-=count; + } + break; + } + } + } + } + + return result; +} + +static void *stbi__pic_load(stbi__context *s,int *px,int *py,int *comp,int req_comp, stbi__result_info *ri) +{ + stbi_uc *result; + int i, x,y, internal_comp; + STBI_NOTUSED(ri); + + if (!comp) comp = &internal_comp; + + for (i=0; i<92; ++i) + stbi__get8(s); + + x = stbi__get16be(s); + y = stbi__get16be(s); + + if (y > STBI_MAX_DIMENSIONS) return stbi__errpuc("too large","Very large image (corrupt?)"); + if (x > STBI_MAX_DIMENSIONS) return stbi__errpuc("too large","Very large image (corrupt?)"); + + if (stbi__at_eof(s)) return stbi__errpuc("bad file","file too short (pic header)"); + if (!stbi__mad3sizes_valid(x, y, 4, 0)) return stbi__errpuc("too large", "PIC image too large to decode"); + + stbi__get32be(s); //skip `ratio' + stbi__get16be(s); //skip `fields' + stbi__get16be(s); //skip `pad' + + // intermediate buffer is RGBA + result = (stbi_uc *) stbi__malloc_mad3(x, y, 4, 0); + if (!result) return stbi__errpuc("outofmem", "Out of memory"); + memset(result, 0xff, x*y*4); + + if (!stbi__pic_load_core(s,x,y,comp, result)) { + STBI_FREE(result); + result=0; + } + *px = x; + *py = y; + if (req_comp == 0) req_comp = *comp; + result=stbi__convert_format(result,4,req_comp,x,y); + + return result; +} + +static int stbi__pic_test(stbi__context *s) +{ + int r = stbi__pic_test_core(s); + stbi__rewind(s); + return r; +} +#endif + +// ************************************************************************************************* +// GIF loader -- public domain by Jean-Marc Lienher -- simplified/shrunk by stb + +#ifndef STBI_NO_GIF +typedef struct +{ + stbi__int16 prefix; + stbi_uc first; + stbi_uc suffix; +} stbi__gif_lzw; + +typedef struct +{ + int w,h; + stbi_uc *out; // output buffer (always 4 components) + stbi_uc *background; // The current "background" as far as a gif is concerned + stbi_uc *history; + int flags, bgindex, ratio, transparent, eflags; + stbi_uc pal[256][4]; + stbi_uc lpal[256][4]; + stbi__gif_lzw codes[8192]; + stbi_uc *color_table; + int parse, step; + int lflags; + int start_x, start_y; + int max_x, max_y; + int cur_x, cur_y; + int line_size; + int delay; +} stbi__gif; + +static int stbi__gif_test_raw(stbi__context *s) +{ + int sz; + if (stbi__get8(s) != 'G' || stbi__get8(s) != 'I' || stbi__get8(s) != 'F' || stbi__get8(s) != '8') return 0; + sz = stbi__get8(s); + if (sz != '9' && sz != '7') return 0; + if (stbi__get8(s) != 'a') return 0; + return 1; +} + +static int stbi__gif_test(stbi__context *s) +{ + int r = stbi__gif_test_raw(s); + stbi__rewind(s); + return r; +} + +static void stbi__gif_parse_colortable(stbi__context *s, stbi_uc pal[256][4], int num_entries, int transp) +{ + int i; + for (i=0; i < num_entries; ++i) { + pal[i][2] = stbi__get8(s); + pal[i][1] = stbi__get8(s); + pal[i][0] = stbi__get8(s); + pal[i][3] = transp == i ? 0 : 255; + } +} + +static int stbi__gif_header(stbi__context *s, stbi__gif *g, int *comp, int is_info) +{ + stbi_uc version; + if (stbi__get8(s) != 'G' || stbi__get8(s) != 'I' || stbi__get8(s) != 'F' || stbi__get8(s) != '8') + return stbi__err("not GIF", "Corrupt GIF"); + + version = stbi__get8(s); + if (version != '7' && version != '9') return stbi__err("not GIF", "Corrupt GIF"); + if (stbi__get8(s) != 'a') return stbi__err("not GIF", "Corrupt GIF"); + + stbi__g_failure_reason = ""; + g->w = stbi__get16le(s); + g->h = stbi__get16le(s); + g->flags = stbi__get8(s); + g->bgindex = stbi__get8(s); + g->ratio = stbi__get8(s); + g->transparent = -1; + + if (g->w > STBI_MAX_DIMENSIONS) return stbi__err("too large","Very large image (corrupt?)"); + if (g->h > STBI_MAX_DIMENSIONS) return stbi__err("too large","Very large image (corrupt?)"); + + if (comp != 0) *comp = 4; // can't actually tell whether it's 3 or 4 until we parse the comments + + if (is_info) return 1; + + if (g->flags & 0x80) + stbi__gif_parse_colortable(s,g->pal, 2 << (g->flags & 7), -1); + + return 1; +} + +static int stbi__gif_info_raw(stbi__context *s, int *x, int *y, int *comp) +{ + stbi__gif* g = (stbi__gif*) stbi__malloc(sizeof(stbi__gif)); + if (!g) return stbi__err("outofmem", "Out of memory"); + if (!stbi__gif_header(s, g, comp, 1)) { + STBI_FREE(g); + stbi__rewind( s ); + return 0; + } + if (x) *x = g->w; + if (y) *y = g->h; + STBI_FREE(g); + return 1; +} + +static void stbi__out_gif_code(stbi__gif *g, stbi__uint16 code) +{ + stbi_uc *p, *c; + int idx; + + // recurse to decode the prefixes, since the linked-list is backwards, + // and working backwards through an interleaved image would be nasty + if (g->codes[code].prefix >= 0) + stbi__out_gif_code(g, g->codes[code].prefix); + + if (g->cur_y >= g->max_y) return; + + idx = g->cur_x + g->cur_y; + p = &g->out[idx]; + g->history[idx / 4] = 1; + + c = &g->color_table[g->codes[code].suffix * 4]; + if (c[3] > 128) { // don't render transparent pixels; + p[0] = c[2]; + p[1] = c[1]; + p[2] = c[0]; + p[3] = c[3]; + } + g->cur_x += 4; + + if (g->cur_x >= g->max_x) { + g->cur_x = g->start_x; + g->cur_y += g->step; + + while (g->cur_y >= g->max_y && g->parse > 0) { + g->step = (1 << g->parse) * g->line_size; + g->cur_y = g->start_y + (g->step >> 1); + --g->parse; + } + } +} + +static stbi_uc *stbi__process_gif_raster(stbi__context *s, stbi__gif *g) +{ + stbi_uc lzw_cs; + stbi__int32 len, init_code; + stbi__uint32 first; + stbi__int32 codesize, codemask, avail, oldcode, bits, valid_bits, clear; + stbi__gif_lzw *p; + + lzw_cs = stbi__get8(s); + if (lzw_cs > 12) return NULL; + clear = 1 << lzw_cs; + first = 1; + codesize = lzw_cs + 1; + codemask = (1 << codesize) - 1; + bits = 0; + valid_bits = 0; + for (init_code = 0; init_code < clear; init_code++) { + g->codes[init_code].prefix = -1; + g->codes[init_code].first = (stbi_uc) init_code; + g->codes[init_code].suffix = (stbi_uc) init_code; + } + + // support no starting clear code + avail = clear+2; + oldcode = -1; + + len = 0; + for(;;) { + if (valid_bits < codesize) { + if (len == 0) { + len = stbi__get8(s); // start new block + if (len == 0) + return g->out; + } + --len; + bits |= (stbi__int32) stbi__get8(s) << valid_bits; + valid_bits += 8; + } else { + stbi__int32 code = bits & codemask; + bits >>= codesize; + valid_bits -= codesize; + // @OPTIMIZE: is there some way we can accelerate the non-clear path? + if (code == clear) { // clear code + codesize = lzw_cs + 1; + codemask = (1 << codesize) - 1; + avail = clear + 2; + oldcode = -1; + first = 0; + } else if (code == clear + 1) { // end of stream code + stbi__skip(s, len); + while ((len = stbi__get8(s)) > 0) + stbi__skip(s,len); + return g->out; + } else if (code <= avail) { + if (first) { + return stbi__errpuc("no clear code", "Corrupt GIF"); + } + + if (oldcode >= 0) { + p = &g->codes[avail++]; + if (avail > 8192) { + return stbi__errpuc("too many codes", "Corrupt GIF"); + } + + p->prefix = (stbi__int16) oldcode; + p->first = g->codes[oldcode].first; + p->suffix = (code == avail) ? p->first : g->codes[code].first; + } else if (code == avail) + return stbi__errpuc("illegal code in raster", "Corrupt GIF"); + + stbi__out_gif_code(g, (stbi__uint16) code); + + if ((avail & codemask) == 0 && avail <= 0x0FFF) { + codesize++; + codemask = (1 << codesize) - 1; + } + + oldcode = code; + } else { + return stbi__errpuc("illegal code in raster", "Corrupt GIF"); + } + } + } +} + +// this function is designed to support animated gifs, although stb_image doesn't support it +// two back is the image from two frames ago, used for a very specific disposal format +static stbi_uc *stbi__gif_load_next(stbi__context *s, stbi__gif *g, int *comp, int req_comp, stbi_uc *two_back) +{ + int dispose; + int first_frame; + int pi; + int pcount; + STBI_NOTUSED(req_comp); + + // on first frame, any non-written pixels get the background colour (non-transparent) + first_frame = 0; + if (g->out == 0) { + if (!stbi__gif_header(s, g, comp,0)) return 0; // stbi__g_failure_reason set by stbi__gif_header + if (!stbi__mad3sizes_valid(4, g->w, g->h, 0)) + return stbi__errpuc("too large", "GIF image is too large"); + pcount = g->w * g->h; + g->out = (stbi_uc *) stbi__malloc(4 * pcount); + g->background = (stbi_uc *) stbi__malloc(4 * pcount); + g->history = (stbi_uc *) stbi__malloc(pcount); + if (!g->out || !g->background || !g->history) + return stbi__errpuc("outofmem", "Out of memory"); + + // image is treated as "transparent" at the start - ie, nothing overwrites the current background; + // background colour is only used for pixels that are not rendered first frame, after that "background" + // color refers to the color that was there the previous frame. + memset(g->out, 0x00, 4 * pcount); + memset(g->background, 0x00, 4 * pcount); // state of the background (starts transparent) + memset(g->history, 0x00, pcount); // pixels that were affected previous frame + first_frame = 1; + } else { + // second frame - how do we dispose of the previous one? + dispose = (g->eflags & 0x1C) >> 2; + pcount = g->w * g->h; + + if ((dispose == 3) && (two_back == 0)) { + dispose = 2; // if I don't have an image to revert back to, default to the old background + } + + if (dispose == 3) { // use previous graphic + for (pi = 0; pi < pcount; ++pi) { + if (g->history[pi]) { + memcpy( &g->out[pi * 4], &two_back[pi * 4], 4 ); + } + } + } else if (dispose == 2) { + // restore what was changed last frame to background before that frame; + for (pi = 0; pi < pcount; ++pi) { + if (g->history[pi]) { + memcpy( &g->out[pi * 4], &g->background[pi * 4], 4 ); + } + } + } else { + // This is a non-disposal case eithe way, so just + // leave the pixels as is, and they will become the new background + // 1: do not dispose + // 0: not specified. + } + + // background is what out is after the undoing of the previou frame; + memcpy( g->background, g->out, 4 * g->w * g->h ); + } + + // clear my history; + memset( g->history, 0x00, g->w * g->h ); // pixels that were affected previous frame + + for (;;) { + int tag = stbi__get8(s); + switch (tag) { + case 0x2C: /* Image Descriptor */ + { + stbi__int32 x, y, w, h; + stbi_uc *o; + + x = stbi__get16le(s); + y = stbi__get16le(s); + w = stbi__get16le(s); + h = stbi__get16le(s); + if (((x + w) > (g->w)) || ((y + h) > (g->h))) + return stbi__errpuc("bad Image Descriptor", "Corrupt GIF"); + + g->line_size = g->w * 4; + g->start_x = x * 4; + g->start_y = y * g->line_size; + g->max_x = g->start_x + w * 4; + g->max_y = g->start_y + h * g->line_size; + g->cur_x = g->start_x; + g->cur_y = g->start_y; + + // if the width of the specified rectangle is 0, that means + // we may not see *any* pixels or the image is malformed; + // to make sure this is caught, move the current y down to + // max_y (which is what out_gif_code checks). + if (w == 0) + g->cur_y = g->max_y; + + g->lflags = stbi__get8(s); + + if (g->lflags & 0x40) { + g->step = 8 * g->line_size; // first interlaced spacing + g->parse = 3; + } else { + g->step = g->line_size; + g->parse = 0; + } + + if (g->lflags & 0x80) { + stbi__gif_parse_colortable(s,g->lpal, 2 << (g->lflags & 7), g->eflags & 0x01 ? g->transparent : -1); + g->color_table = (stbi_uc *) g->lpal; + } else if (g->flags & 0x80) { + g->color_table = (stbi_uc *) g->pal; + } else + return stbi__errpuc("missing color table", "Corrupt GIF"); + + o = stbi__process_gif_raster(s, g); + if (!o) return NULL; + + // if this was the first frame, + pcount = g->w * g->h; + if (first_frame && (g->bgindex > 0)) { + // if first frame, any pixel not drawn to gets the background color + for (pi = 0; pi < pcount; ++pi) { + if (g->history[pi] == 0) { + g->pal[g->bgindex][3] = 255; // just in case it was made transparent, undo that; It will be reset next frame if need be; + memcpy( &g->out[pi * 4], &g->pal[g->bgindex], 4 ); + } + } + } + + return o; + } + + case 0x21: // Comment Extension. + { + int len; + int ext = stbi__get8(s); + if (ext == 0xF9) { // Graphic Control Extension. + len = stbi__get8(s); + if (len == 4) { + g->eflags = stbi__get8(s); + g->delay = 10 * stbi__get16le(s); // delay - 1/100th of a second, saving as 1/1000ths. + + // unset old transparent + if (g->transparent >= 0) { + g->pal[g->transparent][3] = 255; + } + if (g->eflags & 0x01) { + g->transparent = stbi__get8(s); + if (g->transparent >= 0) { + g->pal[g->transparent][3] = 0; + } + } else { + // don't need transparent + stbi__skip(s, 1); + g->transparent = -1; + } + } else { + stbi__skip(s, len); + break; + } + } + while ((len = stbi__get8(s)) != 0) { + stbi__skip(s, len); + } + break; + } + + case 0x3B: // gif stream termination code + return (stbi_uc *) s; // using '1' causes warning on some compilers + + default: + return stbi__errpuc("unknown code", "Corrupt GIF"); + } + } +} + +static void *stbi__load_gif_main_outofmem(stbi__gif *g, stbi_uc *out, int **delays) +{ + STBI_FREE(g->out); + STBI_FREE(g->history); + STBI_FREE(g->background); + + if (out) STBI_FREE(out); + if (delays && *delays) STBI_FREE(*delays); + return stbi__errpuc("outofmem", "Out of memory"); +} + +static void *stbi__load_gif_main(stbi__context *s, int **delays, int *x, int *y, int *z, int *comp, int req_comp) +{ + if (stbi__gif_test(s)) { + int layers = 0; + stbi_uc *u = 0; + stbi_uc *out = 0; + stbi_uc *two_back = 0; + stbi__gif g; + int stride; + int out_size = 0; + int delays_size = 0; + + STBI_NOTUSED(out_size); + STBI_NOTUSED(delays_size); + + memset(&g, 0, sizeof(g)); + if (delays) { + *delays = 0; + } + + do { + u = stbi__gif_load_next(s, &g, comp, req_comp, two_back); + if (u == (stbi_uc *) s) u = 0; // end of animated gif marker + + if (u) { + *x = g.w; + *y = g.h; + ++layers; + stride = g.w * g.h * 4; + + if (out) { + void *tmp = (stbi_uc*) STBI_REALLOC_SIZED( out, out_size, layers * stride ); + if (!tmp) + return stbi__load_gif_main_outofmem(&g, out, delays); + else { + out = (stbi_uc*) tmp; + out_size = layers * stride; + } + + if (delays) { + int *new_delays = (int*) STBI_REALLOC_SIZED( *delays, delays_size, sizeof(int) * layers ); + if (!new_delays) + return stbi__load_gif_main_outofmem(&g, out, delays); + *delays = new_delays; + delays_size = layers * sizeof(int); + } + } else { + out = (stbi_uc*)stbi__malloc( layers * stride ); + if (!out) + return stbi__load_gif_main_outofmem(&g, out, delays); + out_size = layers * stride; + if (delays) { + *delays = (int*) stbi__malloc( layers * sizeof(int) ); + if (!*delays) + return stbi__load_gif_main_outofmem(&g, out, delays); + delays_size = layers * sizeof(int); + } + } + memcpy( out + ((layers - 1) * stride), u, stride ); + if (layers >= 2) { + two_back = out - 2 * stride; + } + + if (delays) { + (*delays)[layers - 1U] = g.delay; + } + } + } while (u != 0); + + // free temp buffer; + STBI_FREE(g.out); + STBI_FREE(g.history); + STBI_FREE(g.background); + + // do the final conversion after loading everything; + if (req_comp && req_comp != 4) + out = stbi__convert_format(out, 4, req_comp, layers * g.w, g.h); + + *z = layers; + return out; + } else { + return stbi__errpuc("not GIF", "Image was not as a gif type."); + } +} + +static void *stbi__gif_load(stbi__context *s, int *x, int *y, int *comp, int req_comp, stbi__result_info *ri) +{ + stbi_uc *u = 0; + stbi__gif g; + memset(&g, 0, sizeof(g)); + STBI_NOTUSED(ri); + + u = stbi__gif_load_next(s, &g, comp, req_comp, 0); + if (u == (stbi_uc *) s) u = 0; // end of animated gif marker + if (u) { + *x = g.w; + *y = g.h; + + // moved conversion to after successful load so that the same + // can be done for multiple frames. + if (req_comp && req_comp != 4) + u = stbi__convert_format(u, 4, req_comp, g.w, g.h); + } else if (g.out) { + // if there was an error and we allocated an image buffer, free it! + STBI_FREE(g.out); + } + + // free buffers needed for multiple frame loading; + STBI_FREE(g.history); + STBI_FREE(g.background); + + return u; +} + +static int stbi__gif_info(stbi__context *s, int *x, int *y, int *comp) +{ + return stbi__gif_info_raw(s,x,y,comp); +} +#endif + +// ************************************************************************************************* +// Radiance RGBE HDR loader +// originally by Nicolas Schulz +#ifndef STBI_NO_HDR +static int stbi__hdr_test_core(stbi__context *s, const char *signature) +{ + int i; + for (i=0; signature[i]; ++i) + if (stbi__get8(s) != signature[i]) + return 0; + stbi__rewind(s); + return 1; +} + +static int stbi__hdr_test(stbi__context* s) +{ + int r = stbi__hdr_test_core(s, "#?RADIANCE\n"); + stbi__rewind(s); + if(!r) { + r = stbi__hdr_test_core(s, "#?RGBE\n"); + stbi__rewind(s); + } + return r; +} + +#define STBI__HDR_BUFLEN 1024 +static char *stbi__hdr_gettoken(stbi__context *z, char *buffer) +{ + int len=0; + char c = '\0'; + + c = (char) stbi__get8(z); + + while (!stbi__at_eof(z) && c != '\n') { + buffer[len++] = c; + if (len == STBI__HDR_BUFLEN-1) { + // flush to end of line + while (!stbi__at_eof(z) && stbi__get8(z) != '\n') + ; + break; + } + c = (char) stbi__get8(z); + } + + buffer[len] = 0; + return buffer; +} + +static void stbi__hdr_convert(float *output, stbi_uc *input, int req_comp) +{ + if ( input[3] != 0 ) { + float f1; + // Exponent + f1 = (float) ldexp(1.0f, input[3] - (int)(128 + 8)); + if (req_comp <= 2) + output[0] = (input[0] + input[1] + input[2]) * f1 / 3; + else { + output[0] = input[0] * f1; + output[1] = input[1] * f1; + output[2] = input[2] * f1; + } + if (req_comp == 2) output[1] = 1; + if (req_comp == 4) output[3] = 1; + } else { + switch (req_comp) { + case 4: output[3] = 1; /* fallthrough */ + case 3: output[0] = output[1] = output[2] = 0; + break; + case 2: output[1] = 1; /* fallthrough */ + case 1: output[0] = 0; + break; + } + } +} + +static float *stbi__hdr_load(stbi__context *s, int *x, int *y, int *comp, int req_comp, stbi__result_info *ri) +{ + char buffer[STBI__HDR_BUFLEN]; + char *token; + int valid = 0; + int width, height; + stbi_uc *scanline; + float *hdr_data; + int len; + unsigned char count, value; + int i, j, k, c1,c2, z; + const char *headerToken; + STBI_NOTUSED(ri); + + // Check identifier + headerToken = stbi__hdr_gettoken(s,buffer); + if (strcmp(headerToken, "#?RADIANCE") != 0 && strcmp(headerToken, "#?RGBE") != 0) + return stbi__errpf("not HDR", "Corrupt HDR image"); + + // Parse header + for(;;) { + token = stbi__hdr_gettoken(s,buffer); + if (token[0] == 0) break; + if (strcmp(token, "FORMAT=32-bit_rle_rgbe") == 0) valid = 1; + } + + if (!valid) return stbi__errpf("unsupported format", "Unsupported HDR format"); + + // Parse width and height + // can't use sscanf() if we're not using stdio! + token = stbi__hdr_gettoken(s,buffer); + if (strncmp(token, "-Y ", 3)) return stbi__errpf("unsupported data layout", "Unsupported HDR format"); + token += 3; + height = (int) strtol(token, &token, 10); + while (*token == ' ') ++token; + if (strncmp(token, "+X ", 3)) return stbi__errpf("unsupported data layout", "Unsupported HDR format"); + token += 3; + width = (int) strtol(token, NULL, 10); + + if (height > STBI_MAX_DIMENSIONS) return stbi__errpf("too large","Very large image (corrupt?)"); + if (width > STBI_MAX_DIMENSIONS) return stbi__errpf("too large","Very large image (corrupt?)"); + + *x = width; + *y = height; + + if (comp) *comp = 3; + if (req_comp == 0) req_comp = 3; + + if (!stbi__mad4sizes_valid(width, height, req_comp, sizeof(float), 0)) + return stbi__errpf("too large", "HDR image is too large"); + + // Read data + hdr_data = (float *) stbi__malloc_mad4(width, height, req_comp, sizeof(float), 0); + if (!hdr_data) + return stbi__errpf("outofmem", "Out of memory"); + + // Load image data + // image data is stored as some number of sca + if ( width < 8 || width >= 32768) { + // Read flat data + for (j=0; j < height; ++j) { + for (i=0; i < width; ++i) { + stbi_uc rgbe[4]; + main_decode_loop: + stbi__getn(s, rgbe, 4); + stbi__hdr_convert(hdr_data + j * width * req_comp + i * req_comp, rgbe, req_comp); + } + } + } else { + // Read RLE-encoded data + scanline = NULL; + + for (j = 0; j < height; ++j) { + c1 = stbi__get8(s); + c2 = stbi__get8(s); + len = stbi__get8(s); + if (c1 != 2 || c2 != 2 || (len & 0x80)) { + // not run-length encoded, so we have to actually use THIS data as a decoded + // pixel (note this can't be a valid pixel--one of RGB must be >= 128) + stbi_uc rgbe[4]; + rgbe[0] = (stbi_uc) c1; + rgbe[1] = (stbi_uc) c2; + rgbe[2] = (stbi_uc) len; + rgbe[3] = (stbi_uc) stbi__get8(s); + stbi__hdr_convert(hdr_data, rgbe, req_comp); + i = 1; + j = 0; + STBI_FREE(scanline); + goto main_decode_loop; // yes, this makes no sense + } + len <<= 8; + len |= stbi__get8(s); + if (len != width) { STBI_FREE(hdr_data); STBI_FREE(scanline); return stbi__errpf("invalid decoded scanline length", "corrupt HDR"); } + if (scanline == NULL) { + scanline = (stbi_uc *) stbi__malloc_mad2(width, 4, 0); + if (!scanline) { + STBI_FREE(hdr_data); + return stbi__errpf("outofmem", "Out of memory"); + } + } + + for (k = 0; k < 4; ++k) { + int nleft; + i = 0; + while ((nleft = width - i) > 0) { + count = stbi__get8(s); + if (count > 128) { + // Run + value = stbi__get8(s); + count -= 128; + if ((count == 0) || (count > nleft)) { STBI_FREE(hdr_data); STBI_FREE(scanline); return stbi__errpf("corrupt", "bad RLE data in HDR"); } + for (z = 0; z < count; ++z) + scanline[i++ * 4 + k] = value; + } else { + // Dump + if ((count == 0) || (count > nleft)) { STBI_FREE(hdr_data); STBI_FREE(scanline); return stbi__errpf("corrupt", "bad RLE data in HDR"); } + for (z = 0; z < count; ++z) + scanline[i++ * 4 + k] = stbi__get8(s); + } + } + } + for (i=0; i < width; ++i) + stbi__hdr_convert(hdr_data+(j*width + i)*req_comp, scanline + i*4, req_comp); + } + if (scanline) + STBI_FREE(scanline); + } + + return hdr_data; +} + +static int stbi__hdr_info(stbi__context *s, int *x, int *y, int *comp) +{ + char buffer[STBI__HDR_BUFLEN]; + char *token; + int valid = 0; + int dummy; + + if (!x) x = &dummy; + if (!y) y = &dummy; + if (!comp) comp = &dummy; + + if (stbi__hdr_test(s) == 0) { + stbi__rewind( s ); + return 0; + } + + for(;;) { + token = stbi__hdr_gettoken(s,buffer); + if (token[0] == 0) break; + if (strcmp(token, "FORMAT=32-bit_rle_rgbe") == 0) valid = 1; + } + + if (!valid) { + stbi__rewind( s ); + return 0; + } + token = stbi__hdr_gettoken(s,buffer); + if (strncmp(token, "-Y ", 3)) { + stbi__rewind( s ); + return 0; + } + token += 3; + *y = (int) strtol(token, &token, 10); + while (*token == ' ') ++token; + if (strncmp(token, "+X ", 3)) { + stbi__rewind( s ); + return 0; + } + token += 3; + *x = (int) strtol(token, NULL, 10); + *comp = 3; + return 1; +} +#endif // STBI_NO_HDR + +#ifndef STBI_NO_BMP +static int stbi__bmp_info(stbi__context *s, int *x, int *y, int *comp) +{ + void *p; + stbi__bmp_data info; + + info.all_a = 255; + p = stbi__bmp_parse_header(s, &info); + if (p == NULL) { + stbi__rewind( s ); + return 0; + } + if (x) *x = s->img_x; + if (y) *y = s->img_y; + if (comp) { + if (info.bpp == 24 && info.ma == 0xff000000) + *comp = 3; + else + *comp = info.ma ? 4 : 3; + } + return 1; +} +#endif + +#ifndef STBI_NO_PSD +static int stbi__psd_info(stbi__context *s, int *x, int *y, int *comp) +{ + int channelCount, dummy, depth; + if (!x) x = &dummy; + if (!y) y = &dummy; + if (!comp) comp = &dummy; + if (stbi__get32be(s) != 0x38425053) { + stbi__rewind( s ); + return 0; + } + if (stbi__get16be(s) != 1) { + stbi__rewind( s ); + return 0; + } + stbi__skip(s, 6); + channelCount = stbi__get16be(s); + if (channelCount < 0 || channelCount > 16) { + stbi__rewind( s ); + return 0; + } + *y = stbi__get32be(s); + *x = stbi__get32be(s); + depth = stbi__get16be(s); + if (depth != 8 && depth != 16) { + stbi__rewind( s ); + return 0; + } + if (stbi__get16be(s) != 3) { + stbi__rewind( s ); + return 0; + } + *comp = 4; + return 1; +} + +static int stbi__psd_is16(stbi__context *s) +{ + int channelCount, depth; + if (stbi__get32be(s) != 0x38425053) { + stbi__rewind( s ); + return 0; + } + if (stbi__get16be(s) != 1) { + stbi__rewind( s ); + return 0; + } + stbi__skip(s, 6); + channelCount = stbi__get16be(s); + if (channelCount < 0 || channelCount > 16) { + stbi__rewind( s ); + return 0; + } + STBI_NOTUSED(stbi__get32be(s)); + STBI_NOTUSED(stbi__get32be(s)); + depth = stbi__get16be(s); + if (depth != 16) { + stbi__rewind( s ); + return 0; + } + return 1; +} +#endif + +#ifndef STBI_NO_PIC +static int stbi__pic_info(stbi__context *s, int *x, int *y, int *comp) +{ + int act_comp=0,num_packets=0,chained,dummy; + stbi__pic_packet packets[10]; + + if (!x) x = &dummy; + if (!y) y = &dummy; + if (!comp) comp = &dummy; + + if (!stbi__pic_is4(s,"\x53\x80\xF6\x34")) { + stbi__rewind(s); + return 0; + } + + stbi__skip(s, 88); + + *x = stbi__get16be(s); + *y = stbi__get16be(s); + if (stbi__at_eof(s)) { + stbi__rewind( s); + return 0; + } + if ( (*x) != 0 && (1 << 28) / (*x) < (*y)) { + stbi__rewind( s ); + return 0; + } + + stbi__skip(s, 8); + + do { + stbi__pic_packet *packet; + + if (num_packets==sizeof(packets)/sizeof(packets[0])) + return 0; + + packet = &packets[num_packets++]; + chained = stbi__get8(s); + packet->size = stbi__get8(s); + packet->type = stbi__get8(s); + packet->channel = stbi__get8(s); + act_comp |= packet->channel; + + if (stbi__at_eof(s)) { + stbi__rewind( s ); + return 0; + } + if (packet->size != 8) { + stbi__rewind( s ); + return 0; + } + } while (chained); + + *comp = (act_comp & 0x10 ? 4 : 3); + + return 1; +} +#endif + +// ************************************************************************************************* +// Portable Gray Map and Portable Pixel Map loader +// by Ken Miller +// +// PGM: http://netpbm.sourceforge.net/doc/pgm.html +// PPM: http://netpbm.sourceforge.net/doc/ppm.html +// +// Known limitations: +// Does not support comments in the header section +// Does not support ASCII image data (formats P2 and P3) + +#ifndef STBI_NO_PNM + +static int stbi__pnm_test(stbi__context *s) +{ + char p, t; + p = (char) stbi__get8(s); + t = (char) stbi__get8(s); + if (p != 'P' || (t != '5' && t != '6')) { + stbi__rewind( s ); + return 0; + } + return 1; +} + +static void *stbi__pnm_load(stbi__context *s, int *x, int *y, int *comp, int req_comp, stbi__result_info *ri) +{ + stbi_uc *out; + STBI_NOTUSED(ri); + + ri->bits_per_channel = stbi__pnm_info(s, (int *)&s->img_x, (int *)&s->img_y, (int *)&s->img_n); + if (ri->bits_per_channel == 0) + return 0; + + if (s->img_y > STBI_MAX_DIMENSIONS) return stbi__errpuc("too large","Very large image (corrupt?)"); + if (s->img_x > STBI_MAX_DIMENSIONS) return stbi__errpuc("too large","Very large image (corrupt?)"); + + *x = s->img_x; + *y = s->img_y; + if (comp) *comp = s->img_n; + + if (!stbi__mad4sizes_valid(s->img_n, s->img_x, s->img_y, ri->bits_per_channel / 8, 0)) + return stbi__errpuc("too large", "PNM too large"); + + out = (stbi_uc *) stbi__malloc_mad4(s->img_n, s->img_x, s->img_y, ri->bits_per_channel / 8, 0); + if (!out) return stbi__errpuc("outofmem", "Out of memory"); + if (!stbi__getn(s, out, s->img_n * s->img_x * s->img_y * (ri->bits_per_channel / 8))) { + STBI_FREE(out); + return stbi__errpuc("bad PNM", "PNM file truncated"); + } + + if (req_comp && req_comp != s->img_n) { + if (ri->bits_per_channel == 16) { + out = (stbi_uc *) stbi__convert_format16((stbi__uint16 *) out, s->img_n, req_comp, s->img_x, s->img_y); + } else { + out = stbi__convert_format(out, s->img_n, req_comp, s->img_x, s->img_y); + } + if (out == NULL) return out; // stbi__convert_format frees input on failure + } + return out; +} + +static int stbi__pnm_isspace(char c) +{ + return c == ' ' || c == '\t' || c == '\n' || c == '\v' || c == '\f' || c == '\r'; +} + +static void stbi__pnm_skip_whitespace(stbi__context *s, char *c) +{ + for (;;) { + while (!stbi__at_eof(s) && stbi__pnm_isspace(*c)) + *c = (char) stbi__get8(s); + + if (stbi__at_eof(s) || *c != '#') + break; + + while (!stbi__at_eof(s) && *c != '\n' && *c != '\r' ) + *c = (char) stbi__get8(s); + } +} + +static int stbi__pnm_isdigit(char c) +{ + return c >= '0' && c <= '9'; +} + +static int stbi__pnm_getinteger(stbi__context *s, char *c) +{ + int value = 0; + + while (!stbi__at_eof(s) && stbi__pnm_isdigit(*c)) { + value = value*10 + (*c - '0'); + *c = (char) stbi__get8(s); + if((value > 214748364) || (value == 214748364 && *c > '7')) + return stbi__err("integer parse overflow", "Parsing an integer in the PPM header overflowed a 32-bit int"); + } + + return value; +} + +static int stbi__pnm_info(stbi__context *s, int *x, int *y, int *comp) +{ + int maxv, dummy; + char c, p, t; + + if (!x) x = &dummy; + if (!y) y = &dummy; + if (!comp) comp = &dummy; + + stbi__rewind(s); + + // Get identifier + p = (char) stbi__get8(s); + t = (char) stbi__get8(s); + if (p != 'P' || (t != '5' && t != '6')) { + stbi__rewind(s); + return 0; + } + + *comp = (t == '6') ? 3 : 1; // '5' is 1-component .pgm; '6' is 3-component .ppm + + c = (char) stbi__get8(s); + stbi__pnm_skip_whitespace(s, &c); + + *x = stbi__pnm_getinteger(s, &c); // read width + if(*x == 0) + return stbi__err("invalid width", "PPM image header had zero or overflowing width"); + stbi__pnm_skip_whitespace(s, &c); + + *y = stbi__pnm_getinteger(s, &c); // read height + if (*y == 0) + return stbi__err("invalid width", "PPM image header had zero or overflowing width"); + stbi__pnm_skip_whitespace(s, &c); + + maxv = stbi__pnm_getinteger(s, &c); // read max value + if (maxv > 65535) + return stbi__err("max value > 65535", "PPM image supports only 8-bit and 16-bit images"); + else if (maxv > 255) + return 16; + else + return 8; +} + +static int stbi__pnm_is16(stbi__context *s) +{ + if (stbi__pnm_info(s, NULL, NULL, NULL) == 16) + return 1; + return 0; +} +#endif + +static int stbi__info_main(stbi__context *s, int *x, int *y, int *comp) +{ + #ifndef STBI_NO_JPEG + if (stbi__jpeg_info(s, x, y, comp)) return 1; + #endif + + #ifndef STBI_NO_PNG + if (stbi__png_info(s, x, y, comp)) return 1; + #endif + + #ifndef STBI_NO_GIF + if (stbi__gif_info(s, x, y, comp)) return 1; + #endif + + #ifndef STBI_NO_BMP + if (stbi__bmp_info(s, x, y, comp)) return 1; + #endif + + #ifndef STBI_NO_PSD + if (stbi__psd_info(s, x, y, comp)) return 1; + #endif + + #ifndef STBI_NO_PIC + if (stbi__pic_info(s, x, y, comp)) return 1; + #endif + + #ifndef STBI_NO_PNM + if (stbi__pnm_info(s, x, y, comp)) return 1; + #endif + + #ifndef STBI_NO_HDR + if (stbi__hdr_info(s, x, y, comp)) return 1; + #endif + + // test tga last because it's a crappy test! + #ifndef STBI_NO_TGA + if (stbi__tga_info(s, x, y, comp)) + return 1; + #endif + return stbi__err("unknown image type", "Image not of any known type, or corrupt"); +} + +static int stbi__is_16_main(stbi__context *s) +{ + #ifndef STBI_NO_PNG + if (stbi__png_is16(s)) return 1; + #endif + + #ifndef STBI_NO_PSD + if (stbi__psd_is16(s)) return 1; + #endif + + #ifndef STBI_NO_PNM + if (stbi__pnm_is16(s)) return 1; + #endif + return 0; +} + +#ifndef STBI_NO_STDIO +STBIDEF int stbi_info(char const *filename, int *x, int *y, int *comp) +{ + FILE *f = stbi__fopen(filename, "rb"); + int result; + if (!f) return stbi__err("can't fopen", "Unable to open file"); + result = stbi_info_from_file(f, x, y, comp); + fclose(f); + return result; +} + +STBIDEF int stbi_info_from_file(FILE *f, int *x, int *y, int *comp) +{ + int r; + stbi__context s; + long pos = ftell(f); + stbi__start_file(&s, f); + r = stbi__info_main(&s,x,y,comp); + fseek(f,pos,SEEK_SET); + return r; +} + +STBIDEF int stbi_is_16_bit(char const *filename) +{ + FILE *f = stbi__fopen(filename, "rb"); + int result; + if (!f) return stbi__err("can't fopen", "Unable to open file"); + result = stbi_is_16_bit_from_file(f); + fclose(f); + return result; +} + +STBIDEF int stbi_is_16_bit_from_file(FILE *f) +{ + int r; + stbi__context s; + long pos = ftell(f); + stbi__start_file(&s, f); + r = stbi__is_16_main(&s); + fseek(f,pos,SEEK_SET); + return r; +} +#endif // !STBI_NO_STDIO + +STBIDEF int stbi_info_from_memory(stbi_uc const *buffer, int len, int *x, int *y, int *comp) +{ + stbi__context s; + stbi__start_mem(&s,buffer,len); + return stbi__info_main(&s,x,y,comp); +} + +STBIDEF int stbi_info_from_callbacks(stbi_io_callbacks const *c, void *user, int *x, int *y, int *comp) +{ + stbi__context s; + stbi__start_callbacks(&s, (stbi_io_callbacks *) c, user); + return stbi__info_main(&s,x,y,comp); +} + +STBIDEF int stbi_is_16_bit_from_memory(stbi_uc const *buffer, int len) +{ + stbi__context s; + stbi__start_mem(&s,buffer,len); + return stbi__is_16_main(&s); +} + +STBIDEF int stbi_is_16_bit_from_callbacks(stbi_io_callbacks const *c, void *user) +{ + stbi__context s; + stbi__start_callbacks(&s, (stbi_io_callbacks *) c, user); + return stbi__is_16_main(&s); +} + +#endif // STB_IMAGE_IMPLEMENTATION + +/* + revision history: + 2.20 (2019-02-07) support utf8 filenames in Windows; fix warnings and platform ifdefs + 2.19 (2018-02-11) fix warning + 2.18 (2018-01-30) fix warnings + 2.17 (2018-01-29) change sbti__shiftsigned to avoid clang -O2 bug + 1-bit BMP + *_is_16_bit api + avoid warnings + 2.16 (2017-07-23) all functions have 16-bit variants; + STBI_NO_STDIO works again; + compilation fixes; + fix rounding in unpremultiply; + optimize vertical flip; + disable raw_len validation; + documentation fixes + 2.15 (2017-03-18) fix png-1,2,4 bug; now all Imagenet JPGs decode; + warning fixes; disable run-time SSE detection on gcc; + uniform handling of optional "return" values; + thread-safe initialization of zlib tables + 2.14 (2017-03-03) remove deprecated STBI_JPEG_OLD; fixes for Imagenet JPGs + 2.13 (2016-11-29) add 16-bit API, only supported for PNG right now + 2.12 (2016-04-02) fix typo in 2.11 PSD fix that caused crashes + 2.11 (2016-04-02) allocate large structures on the stack + remove white matting for transparent PSD + fix reported channel count for PNG & BMP + re-enable SSE2 in non-gcc 64-bit + support RGB-formatted JPEG + read 16-bit PNGs (only as 8-bit) + 2.10 (2016-01-22) avoid warning introduced in 2.09 by STBI_REALLOC_SIZED + 2.09 (2016-01-16) allow comments in PNM files + 16-bit-per-pixel TGA (not bit-per-component) + info() for TGA could break due to .hdr handling + info() for BMP to shares code instead of sloppy parse + can use STBI_REALLOC_SIZED if allocator doesn't support realloc + code cleanup + 2.08 (2015-09-13) fix to 2.07 cleanup, reading RGB PSD as RGBA + 2.07 (2015-09-13) fix compiler warnings + partial animated GIF support + limited 16-bpc PSD support + #ifdef unused functions + bug with < 92 byte PIC,PNM,HDR,TGA + 2.06 (2015-04-19) fix bug where PSD returns wrong '*comp' value + 2.05 (2015-04-19) fix bug in progressive JPEG handling, fix warning + 2.04 (2015-04-15) try to re-enable SIMD on MinGW 64-bit + 2.03 (2015-04-12) extra corruption checking (mmozeiko) + stbi_set_flip_vertically_on_load (nguillemot) + fix NEON support; fix mingw support + 2.02 (2015-01-19) fix incorrect assert, fix warning + 2.01 (2015-01-17) fix various warnings; suppress SIMD on gcc 32-bit without -msse2 + 2.00b (2014-12-25) fix STBI_MALLOC in progressive JPEG + 2.00 (2014-12-25) optimize JPG, including x86 SSE2 & NEON SIMD (ryg) + progressive JPEG (stb) + PGM/PPM support (Ken Miller) + STBI_MALLOC,STBI_REALLOC,STBI_FREE + GIF bugfix -- seemingly never worked + STBI_NO_*, STBI_ONLY_* + 1.48 (2014-12-14) fix incorrectly-named assert() + 1.47 (2014-12-14) 1/2/4-bit PNG support, both direct and paletted (Omar Cornut & stb) + optimize PNG (ryg) + fix bug in interlaced PNG with user-specified channel count (stb) + 1.46 (2014-08-26) + fix broken tRNS chunk (colorkey-style transparency) in non-paletted PNG + 1.45 (2014-08-16) + fix MSVC-ARM internal compiler error by wrapping malloc + 1.44 (2014-08-07) + various warning fixes from Ronny Chevalier + 1.43 (2014-07-15) + fix MSVC-only compiler problem in code changed in 1.42 + 1.42 (2014-07-09) + don't define _CRT_SECURE_NO_WARNINGS (affects user code) + fixes to stbi__cleanup_jpeg path + added STBI_ASSERT to avoid requiring assert.h + 1.41 (2014-06-25) + fix search&replace from 1.36 that messed up comments/error messages + 1.40 (2014-06-22) + fix gcc struct-initialization warning + 1.39 (2014-06-15) + fix to TGA optimization when req_comp != number of components in TGA; + fix to GIF loading because BMP wasn't rewinding (whoops, no GIFs in my test suite) + add support for BMP version 5 (more ignored fields) + 1.38 (2014-06-06) + suppress MSVC warnings on integer casts truncating values + fix accidental rename of 'skip' field of I/O + 1.37 (2014-06-04) + remove duplicate typedef + 1.36 (2014-06-03) + convert to header file single-file library + if de-iphone isn't set, load iphone images color-swapped instead of returning NULL + 1.35 (2014-05-27) + various warnings + fix broken STBI_SIMD path + fix bug where stbi_load_from_file no longer left file pointer in correct place + fix broken non-easy path for 32-bit BMP (possibly never used) + TGA optimization by Arseny Kapoulkine + 1.34 (unknown) + use STBI_NOTUSED in stbi__resample_row_generic(), fix one more leak in tga failure case + 1.33 (2011-07-14) + make stbi_is_hdr work in STBI_NO_HDR (as specified), minor compiler-friendly improvements + 1.32 (2011-07-13) + support for "info" function for all supported filetypes (SpartanJ) + 1.31 (2011-06-20) + a few more leak fixes, bug in PNG handling (SpartanJ) + 1.30 (2011-06-11) + added ability to load files via callbacks to accomidate custom input streams (Ben Wenger) + removed deprecated format-specific test/load functions + removed support for installable file formats (stbi_loader) -- would have been broken for IO callbacks anyway + error cases in bmp and tga give messages and don't leak (Raymond Barbiero, grisha) + fix inefficiency in decoding 32-bit BMP (David Woo) + 1.29 (2010-08-16) + various warning fixes from Aurelien Pocheville + 1.28 (2010-08-01) + fix bug in GIF palette transparency (SpartanJ) + 1.27 (2010-08-01) + cast-to-stbi_uc to fix warnings + 1.26 (2010-07-24) + fix bug in file buffering for PNG reported by SpartanJ + 1.25 (2010-07-17) + refix trans_data warning (Won Chun) + 1.24 (2010-07-12) + perf improvements reading from files on platforms with lock-heavy fgetc() + minor perf improvements for jpeg + deprecated type-specific functions so we'll get feedback if they're needed + attempt to fix trans_data warning (Won Chun) + 1.23 fixed bug in iPhone support + 1.22 (2010-07-10) + removed image *writing* support + stbi_info support from Jetro Lauha + GIF support from Jean-Marc Lienher + iPhone PNG-extensions from James Brown + warning-fixes from Nicolas Schulz and Janez Zemva (i.stbi__err. Janez (U+017D)emva) + 1.21 fix use of 'stbi_uc' in header (reported by jon blow) + 1.20 added support for Softimage PIC, by Tom Seddon + 1.19 bug in interlaced PNG corruption check (found by ryg) + 1.18 (2008-08-02) + fix a threading bug (local mutable static) + 1.17 support interlaced PNG + 1.16 major bugfix - stbi__convert_format converted one too many pixels + 1.15 initialize some fields for thread safety + 1.14 fix threadsafe conversion bug + header-file-only version (#define STBI_HEADER_FILE_ONLY before including) + 1.13 threadsafe + 1.12 const qualifiers in the API + 1.11 Support installable IDCT, colorspace conversion routines + 1.10 Fixes for 64-bit (don't use "unsigned long") + optimized upsampling by Fabian "ryg" Giesen + 1.09 Fix format-conversion for PSD code (bad global variables!) + 1.08 Thatcher Ulrich's PSD code integrated by Nicolas Schulz + 1.07 attempt to fix C++ warning/errors again + 1.06 attempt to fix C++ warning/errors again + 1.05 fix TGA loading to return correct *comp and use good luminance calc + 1.04 default float alpha is 1, not 255; use 'void *' for stbi_image_free + 1.03 bugfixes to STBI_NO_STDIO, STBI_NO_HDR + 1.02 support for (subset of) HDR files, float interface for preferred access to them + 1.01 fix bug: possible bug in handling right-side up bmps... not sure + fix bug: the stbi__bmp_load() and stbi__tga_load() functions didn't work at all + 1.00 interface to zlib that skips zlib header + 0.99 correct handling of alpha in palette + 0.98 TGA loader by lonesock; dynamically add loaders (untested) + 0.97 jpeg errors on too large a file; also catch another malloc failure + 0.96 fix detection of invalid v value - particleman@mollyrocket forum + 0.95 during header scan, seek to markers in case of padding + 0.94 STBI_NO_STDIO to disable stdio usage; rename all #defines the same + 0.93 handle jpegtran output; verbose errors + 0.92 read 4,8,16,24,32-bit BMP files of several formats + 0.91 output 24-bit Windows 3.0 BMP files + 0.90 fix a few more warnings; bump version number to approach 1.0 + 0.61 bugfixes due to Marc LeBlanc, Christopher Lloyd + 0.60 fix compiling as c++ + 0.59 fix warnings: merge Dave Moore's -Wall fixes + 0.58 fix bug: zlib uncompressed mode len/nlen was wrong endian + 0.57 fix bug: jpg last huffman symbol before marker was >9 bits but less than 16 available + 0.56 fix bug: zlib uncompressed mode len vs. nlen + 0.55 fix bug: restart_interval not initialized to 0 + 0.54 allow NULL for 'int *comp' + 0.53 fix bug in png 3->4; speedup png decoding + 0.52 png handles req_comp=3,4 directly; minor cleanup; jpeg comments + 0.51 obey req_comp requests, 1-component jpegs return as 1-component, + on 'test' only check type, not whether we support this variant + 0.50 (2006-11-19) + first released version +*/ + + +/* +------------------------------------------------------------------------------ +This software is available under 2 licenses -- choose whichever you prefer. +------------------------------------------------------------------------------ +ALTERNATIVE A - MIT License +Copyright (c) 2017 Sean Barrett +Permission is hereby granted, free of charge, to any person obtaining a copy of +this software and associated documentation files (the "Software"), to deal in +the Software without restriction, including without limitation the rights to +use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies +of the Software, and to permit persons to whom the Software is furnished to do +so, subject to the following conditions: +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. +------------------------------------------------------------------------------ +ALTERNATIVE B - Public Domain (www.unlicense.org) +This is free and unencumbered software released into the public domain. +Anyone is free to copy, modify, publish, use, compile, sell, or distribute this +software, either in source code form or as a compiled binary, for any purpose, +commercial or non-commercial, and by any means. +In jurisdictions that recognize copyright laws, the author or authors of this +software dedicate any and all copyright interest in the software to the public +domain. We make this dedication for the benefit of the public at large and to +the detriment of our heirs and successors. We intend this dedication to be an +overt act of relinquishment in perpetuity of all present and future rights to +this software under copyright law. +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN +ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION +WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. +------------------------------------------------------------------------------ +*/ diff --git a/common/stb_image_write.h b/common/stb_image_write.h new file mode 100644 index 0000000..e4b32ed --- /dev/null +++ b/common/stb_image_write.h @@ -0,0 +1,1724 @@ +/* stb_image_write - v1.16 - public domain - http://nothings.org/stb + writes out PNG/BMP/TGA/JPEG/HDR images to C stdio - Sean Barrett 2010-2015 + no warranty implied; use at your own risk + + Before #including, + + #define STB_IMAGE_WRITE_IMPLEMENTATION + + in the file that you want to have the implementation. + + Will probably not work correctly with strict-aliasing optimizations. + +ABOUT: + + This header file is a library for writing images to C stdio or a callback. + + The PNG output is not optimal; it is 20-50% larger than the file + written by a decent optimizing implementation; though providing a custom + zlib compress function (see STBIW_ZLIB_COMPRESS) can mitigate that. + This library is designed for source code compactness and simplicity, + not optimal image file size or run-time performance. + +BUILDING: + + You can #define STBIW_ASSERT(x) before the #include to avoid using assert.h. + You can #define STBIW_MALLOC(), STBIW_REALLOC(), and STBIW_FREE() to replace + malloc,realloc,free. + You can #define STBIW_MEMMOVE() to replace memmove() + You can #define STBIW_ZLIB_COMPRESS to use a custom zlib-style compress function + for PNG compression (instead of the builtin one), it must have the following signature: + unsigned char * my_compress(unsigned char *data, int data_len, int *out_len, int quality); + The returned data will be freed with STBIW_FREE() (free() by default), + so it must be heap allocated with STBIW_MALLOC() (malloc() by default), + +UNICODE: + + If compiling for Windows and you wish to use Unicode filenames, compile + with + #define STBIW_WINDOWS_UTF8 + and pass utf8-encoded filenames. Call stbiw_convert_wchar_to_utf8 to convert + Windows wchar_t filenames to utf8. + +USAGE: + + There are five functions, one for each image file format: + + int stbi_write_png(char const *filename, int w, int h, int comp, const void *data, int stride_in_bytes); + int stbi_write_bmp(char const *filename, int w, int h, int comp, const void *data); + int stbi_write_tga(char const *filename, int w, int h, int comp, const void *data); + int stbi_write_jpg(char const *filename, int w, int h, int comp, const void *data, int quality); + int stbi_write_hdr(char const *filename, int w, int h, int comp, const float *data); + + void stbi_flip_vertically_on_write(int flag); // flag is non-zero to flip data vertically + + There are also five equivalent functions that use an arbitrary write function. You are + expected to open/close your file-equivalent before and after calling these: + + int stbi_write_png_to_func(stbi_write_func *func, void *context, int w, int h, int comp, const void *data, int stride_in_bytes); + int stbi_write_bmp_to_func(stbi_write_func *func, void *context, int w, int h, int comp, const void *data); + int stbi_write_tga_to_func(stbi_write_func *func, void *context, int w, int h, int comp, const void *data); + int stbi_write_hdr_to_func(stbi_write_func *func, void *context, int w, int h, int comp, const float *data); + int stbi_write_jpg_to_func(stbi_write_func *func, void *context, int x, int y, int comp, const void *data, int quality); + + where the callback is: + void stbi_write_func(void *context, void *data, int size); + + You can configure it with these global variables: + int stbi_write_tga_with_rle; // defaults to true; set to 0 to disable RLE + int stbi_write_png_compression_level; // defaults to 8; set to higher for more compression + int stbi_write_force_png_filter; // defaults to -1; set to 0..5 to force a filter mode + + + You can define STBI_WRITE_NO_STDIO to disable the file variant of these + functions, so the library will not use stdio.h at all. However, this will + also disable HDR writing, because it requires stdio for formatted output. + + Each function returns 0 on failure and non-0 on success. + + The functions create an image file defined by the parameters. The image + is a rectangle of pixels stored from left-to-right, top-to-bottom. + Each pixel contains 'comp' channels of data stored interleaved with 8-bits + per channel, in the following order: 1=Y, 2=YA, 3=RGB, 4=RGBA. (Y is + monochrome color.) The rectangle is 'w' pixels wide and 'h' pixels tall. + The *data pointer points to the first byte of the top-left-most pixel. + For PNG, "stride_in_bytes" is the distance in bytes from the first byte of + a row of pixels to the first byte of the next row of pixels. + + PNG creates output files with the same number of components as the input. + The BMP format expands Y to RGB in the file format and does not + output alpha. + + PNG supports writing rectangles of data even when the bytes storing rows of + data are not consecutive in memory (e.g. sub-rectangles of a larger image), + by supplying the stride between the beginning of adjacent rows. The other + formats do not. (Thus you cannot write a native-format BMP through the BMP + writer, both because it is in BGR order and because it may have padding + at the end of the line.) + + PNG allows you to set the deflate compression level by setting the global + variable 'stbi_write_png_compression_level' (it defaults to 8). + + HDR expects linear float data. Since the format is always 32-bit rgb(e) + data, alpha (if provided) is discarded, and for monochrome data it is + replicated across all three channels. + + TGA supports RLE or non-RLE compressed data. To use non-RLE-compressed + data, set the global variable 'stbi_write_tga_with_rle' to 0. + + JPEG does ignore alpha channels in input data; quality is between 1 and 100. + Higher quality looks better but results in a bigger image. + JPEG baseline (no JPEG progressive). + +CREDITS: + + + Sean Barrett - PNG/BMP/TGA + Baldur Karlsson - HDR + Jean-Sebastien Guay - TGA monochrome + Tim Kelsey - misc enhancements + Alan Hickman - TGA RLE + Emmanuel Julien - initial file IO callback implementation + Jon Olick - original jo_jpeg.cpp code + Daniel Gibson - integrate JPEG, allow external zlib + Aarni Koskela - allow choosing PNG filter + + bugfixes: + github:Chribba + Guillaume Chereau + github:jry2 + github:romigrou + Sergio Gonzalez + Jonas Karlsson + Filip Wasil + Thatcher Ulrich + github:poppolopoppo + Patrick Boettcher + github:xeekworx + Cap Petschulat + Simon Rodriguez + Ivan Tikhonov + github:ignotion + Adam Schackart + Andrew Kensler + +LICENSE + + See end of file for license information. + +*/ + +#ifndef INCLUDE_STB_IMAGE_WRITE_H +#define INCLUDE_STB_IMAGE_WRITE_H + +#include + +// if STB_IMAGE_WRITE_STATIC causes problems, try defining STBIWDEF to 'inline' or 'static inline' +#ifndef STBIWDEF +#ifdef STB_IMAGE_WRITE_STATIC +#define STBIWDEF static +#else +#ifdef __cplusplus +#define STBIWDEF extern "C" +#else +#define STBIWDEF extern +#endif +#endif +#endif + +#ifndef STB_IMAGE_WRITE_STATIC // C++ forbids static forward declarations +STBIWDEF int stbi_write_tga_with_rle; +STBIWDEF int stbi_write_png_compression_level; +STBIWDEF int stbi_write_force_png_filter; +#endif + +#ifndef STBI_WRITE_NO_STDIO +STBIWDEF int stbi_write_png(char const *filename, int w, int h, int comp, const void *data, int stride_in_bytes); +STBIWDEF int stbi_write_bmp(char const *filename, int w, int h, int comp, const void *data); +STBIWDEF int stbi_write_tga(char const *filename, int w, int h, int comp, const void *data); +STBIWDEF int stbi_write_hdr(char const *filename, int w, int h, int comp, const float *data); +STBIWDEF int stbi_write_jpg(char const *filename, int x, int y, int comp, const void *data, int quality); + +#ifdef STBIW_WINDOWS_UTF8 +STBIWDEF int stbiw_convert_wchar_to_utf8(char *buffer, size_t bufferlen, const wchar_t* input); +#endif +#endif + +typedef void stbi_write_func(void *context, void *data, int size); + +STBIWDEF int stbi_write_png_to_func(stbi_write_func *func, void *context, int w, int h, int comp, const void *data, int stride_in_bytes); +STBIWDEF int stbi_write_bmp_to_func(stbi_write_func *func, void *context, int w, int h, int comp, const void *data); +STBIWDEF int stbi_write_tga_to_func(stbi_write_func *func, void *context, int w, int h, int comp, const void *data); +STBIWDEF int stbi_write_hdr_to_func(stbi_write_func *func, void *context, int w, int h, int comp, const float *data); +STBIWDEF int stbi_write_jpg_to_func(stbi_write_func *func, void *context, int x, int y, int comp, const void *data, int quality); + +STBIWDEF void stbi_flip_vertically_on_write(int flip_boolean); + +#endif//INCLUDE_STB_IMAGE_WRITE_H + +#ifdef STB_IMAGE_WRITE_IMPLEMENTATION + +#ifdef _WIN32 + #ifndef _CRT_SECURE_NO_WARNINGS + #define _CRT_SECURE_NO_WARNINGS + #endif + #ifndef _CRT_NONSTDC_NO_DEPRECATE + #define _CRT_NONSTDC_NO_DEPRECATE + #endif +#endif + +#ifndef STBI_WRITE_NO_STDIO +#include +#endif // STBI_WRITE_NO_STDIO + +#include +#include +#include +#include + +#if defined(STBIW_MALLOC) && defined(STBIW_FREE) && (defined(STBIW_REALLOC) || defined(STBIW_REALLOC_SIZED)) +// ok +#elif !defined(STBIW_MALLOC) && !defined(STBIW_FREE) && !defined(STBIW_REALLOC) && !defined(STBIW_REALLOC_SIZED) +// ok +#else +#error "Must define all or none of STBIW_MALLOC, STBIW_FREE, and STBIW_REALLOC (or STBIW_REALLOC_SIZED)." +#endif + +#ifndef STBIW_MALLOC +#define STBIW_MALLOC(sz) malloc(sz) +#define STBIW_REALLOC(p,newsz) realloc(p,newsz) +#define STBIW_FREE(p) free(p) +#endif + +#ifndef STBIW_REALLOC_SIZED +#define STBIW_REALLOC_SIZED(p,oldsz,newsz) STBIW_REALLOC(p,newsz) +#endif + + +#ifndef STBIW_MEMMOVE +#define STBIW_MEMMOVE(a,b,sz) memmove(a,b,sz) +#endif + + +#ifndef STBIW_ASSERT +#include +#define STBIW_ASSERT(x) assert(x) +#endif + +#define STBIW_UCHAR(x) (unsigned char) ((x) & 0xff) + +#ifdef STB_IMAGE_WRITE_STATIC +static int stbi_write_png_compression_level = 8; +static int stbi_write_tga_with_rle = 1; +static int stbi_write_force_png_filter = -1; +#else +int stbi_write_png_compression_level = 8; +int stbi_write_tga_with_rle = 1; +int stbi_write_force_png_filter = -1; +#endif + +static int stbi__flip_vertically_on_write = 0; + +STBIWDEF void stbi_flip_vertically_on_write(int flag) +{ + stbi__flip_vertically_on_write = flag; +} + +typedef struct +{ + stbi_write_func *func; + void *context; + unsigned char buffer[64]; + int buf_used; +} stbi__write_context; + +// initialize a callback-based context +static void stbi__start_write_callbacks(stbi__write_context *s, stbi_write_func *c, void *context) +{ + s->func = c; + s->context = context; +} + +#ifndef STBI_WRITE_NO_STDIO + +static void stbi__stdio_write(void *context, void *data, int size) +{ + fwrite(data,1,size,(FILE*) context); +} + +#if defined(_WIN32) && defined(STBIW_WINDOWS_UTF8) +#ifdef __cplusplus +#define STBIW_EXTERN extern "C" +#else +#define STBIW_EXTERN extern +#endif +STBIW_EXTERN __declspec(dllimport) int __stdcall MultiByteToWideChar(unsigned int cp, unsigned long flags, const char *str, int cbmb, wchar_t *widestr, int cchwide); +STBIW_EXTERN __declspec(dllimport) int __stdcall WideCharToMultiByte(unsigned int cp, unsigned long flags, const wchar_t *widestr, int cchwide, char *str, int cbmb, const char *defchar, int *used_default); + +STBIWDEF int stbiw_convert_wchar_to_utf8(char *buffer, size_t bufferlen, const wchar_t* input) +{ + return WideCharToMultiByte(65001 /* UTF8 */, 0, input, -1, buffer, (int) bufferlen, NULL, NULL); +} +#endif + +static FILE *stbiw__fopen(char const *filename, char const *mode) +{ + FILE *f; +#if defined(_WIN32) && defined(STBIW_WINDOWS_UTF8) + wchar_t wMode[64]; + wchar_t wFilename[1024]; + if (0 == MultiByteToWideChar(65001 /* UTF8 */, 0, filename, -1, wFilename, sizeof(wFilename)/sizeof(*wFilename))) + return 0; + + if (0 == MultiByteToWideChar(65001 /* UTF8 */, 0, mode, -1, wMode, sizeof(wMode)/sizeof(*wMode))) + return 0; + +#if defined(_MSC_VER) && _MSC_VER >= 1400 + if (0 != _wfopen_s(&f, wFilename, wMode)) + f = 0; +#else + f = _wfopen(wFilename, wMode); +#endif + +#elif defined(_MSC_VER) && _MSC_VER >= 1400 + if (0 != fopen_s(&f, filename, mode)) + f=0; +#else + f = fopen(filename, mode); +#endif + return f; +} + +static int stbi__start_write_file(stbi__write_context *s, const char *filename) +{ + FILE *f = stbiw__fopen(filename, "wb"); + stbi__start_write_callbacks(s, stbi__stdio_write, (void *) f); + return f != NULL; +} + +static void stbi__end_write_file(stbi__write_context *s) +{ + fclose((FILE *)s->context); +} + +#endif // !STBI_WRITE_NO_STDIO + +typedef unsigned int stbiw_uint32; +typedef int stb_image_write_test[sizeof(stbiw_uint32)==4 ? 1 : -1]; + +static void stbiw__writefv(stbi__write_context *s, const char *fmt, va_list v) +{ + while (*fmt) { + switch (*fmt++) { + case ' ': break; + case '1': { unsigned char x = STBIW_UCHAR(va_arg(v, int)); + s->func(s->context,&x,1); + break; } + case '2': { int x = va_arg(v,int); + unsigned char b[2]; + b[0] = STBIW_UCHAR(x); + b[1] = STBIW_UCHAR(x>>8); + s->func(s->context,b,2); + break; } + case '4': { stbiw_uint32 x = va_arg(v,int); + unsigned char b[4]; + b[0]=STBIW_UCHAR(x); + b[1]=STBIW_UCHAR(x>>8); + b[2]=STBIW_UCHAR(x>>16); + b[3]=STBIW_UCHAR(x>>24); + s->func(s->context,b,4); + break; } + default: + STBIW_ASSERT(0); + return; + } + } +} + +static void stbiw__writef(stbi__write_context *s, const char *fmt, ...) +{ + va_list v; + va_start(v, fmt); + stbiw__writefv(s, fmt, v); + va_end(v); +} + +static void stbiw__write_flush(stbi__write_context *s) +{ + if (s->buf_used) { + s->func(s->context, &s->buffer, s->buf_used); + s->buf_used = 0; + } +} + +static void stbiw__putc(stbi__write_context *s, unsigned char c) +{ + s->func(s->context, &c, 1); +} + +static void stbiw__write1(stbi__write_context *s, unsigned char a) +{ + if ((size_t)s->buf_used + 1 > sizeof(s->buffer)) + stbiw__write_flush(s); + s->buffer[s->buf_used++] = a; +} + +static void stbiw__write3(stbi__write_context *s, unsigned char a, unsigned char b, unsigned char c) +{ + int n; + if ((size_t)s->buf_used + 3 > sizeof(s->buffer)) + stbiw__write_flush(s); + n = s->buf_used; + s->buf_used = n+3; + s->buffer[n+0] = a; + s->buffer[n+1] = b; + s->buffer[n+2] = c; +} + +static void stbiw__write_pixel(stbi__write_context *s, int rgb_dir, int comp, int write_alpha, int expand_mono, unsigned char *d) +{ + unsigned char bg[3] = { 255, 0, 255}, px[3]; + int k; + + if (write_alpha < 0) + stbiw__write1(s, d[comp - 1]); + + switch (comp) { + case 2: // 2 pixels = mono + alpha, alpha is written separately, so same as 1-channel case + case 1: + if (expand_mono) + stbiw__write3(s, d[0], d[0], d[0]); // monochrome bmp + else + stbiw__write1(s, d[0]); // monochrome TGA + break; + case 4: + if (!write_alpha) { + // composite against pink background + for (k = 0; k < 3; ++k) + px[k] = bg[k] + ((d[k] - bg[k]) * d[3]) / 255; + stbiw__write3(s, px[1 - rgb_dir], px[1], px[1 + rgb_dir]); + break; + } + /* FALLTHROUGH */ + case 3: + stbiw__write3(s, d[1 - rgb_dir], d[1], d[1 + rgb_dir]); + break; + } + if (write_alpha > 0) + stbiw__write1(s, d[comp - 1]); +} + +static void stbiw__write_pixels(stbi__write_context *s, int rgb_dir, int vdir, int x, int y, int comp, void *data, int write_alpha, int scanline_pad, int expand_mono) +{ + stbiw_uint32 zero = 0; + int i,j, j_end; + + if (y <= 0) + return; + + if (stbi__flip_vertically_on_write) + vdir *= -1; + + if (vdir < 0) { + j_end = -1; j = y-1; + } else { + j_end = y; j = 0; + } + + for (; j != j_end; j += vdir) { + for (i=0; i < x; ++i) { + unsigned char *d = (unsigned char *) data + (j*x+i)*comp; + stbiw__write_pixel(s, rgb_dir, comp, write_alpha, expand_mono, d); + } + stbiw__write_flush(s); + s->func(s->context, &zero, scanline_pad); + } +} + +static int stbiw__outfile(stbi__write_context *s, int rgb_dir, int vdir, int x, int y, int comp, int expand_mono, void *data, int alpha, int pad, const char *fmt, ...) +{ + if (y < 0 || x < 0) { + return 0; + } else { + va_list v; + va_start(v, fmt); + stbiw__writefv(s, fmt, v); + va_end(v); + stbiw__write_pixels(s,rgb_dir,vdir,x,y,comp,data,alpha,pad, expand_mono); + return 1; + } +} + +static int stbi_write_bmp_core(stbi__write_context *s, int x, int y, int comp, const void *data) +{ + if (comp != 4) { + // write RGB bitmap + int pad = (-x*3) & 3; + return stbiw__outfile(s,-1,-1,x,y,comp,1,(void *) data,0,pad, + "11 4 22 4" "4 44 22 444444", + 'B', 'M', 14+40+(x*3+pad)*y, 0,0, 14+40, // file header + 40, x,y, 1,24, 0,0,0,0,0,0); // bitmap header + } else { + // RGBA bitmaps need a v4 header + // use BI_BITFIELDS mode with 32bpp and alpha mask + // (straight BI_RGB with alpha mask doesn't work in most readers) + return stbiw__outfile(s,-1,-1,x,y,comp,1,(void *)data,1,0, + "11 4 22 4" "4 44 22 444444 4444 4 444 444 444 444", + 'B', 'M', 14+108+x*y*4, 0, 0, 14+108, // file header + 108, x,y, 1,32, 3,0,0,0,0,0, 0xff0000,0xff00,0xff,0xff000000u, 0, 0,0,0, 0,0,0, 0,0,0, 0,0,0); // bitmap V4 header + } +} + +STBIWDEF int stbi_write_bmp_to_func(stbi_write_func *func, void *context, int x, int y, int comp, const void *data) +{ + stbi__write_context s = { 0 }; + stbi__start_write_callbacks(&s, func, context); + return stbi_write_bmp_core(&s, x, y, comp, data); +} + +#ifndef STBI_WRITE_NO_STDIO +STBIWDEF int stbi_write_bmp(char const *filename, int x, int y, int comp, const void *data) +{ + stbi__write_context s = { 0 }; + if (stbi__start_write_file(&s,filename)) { + int r = stbi_write_bmp_core(&s, x, y, comp, data); + stbi__end_write_file(&s); + return r; + } else + return 0; +} +#endif //!STBI_WRITE_NO_STDIO + +static int stbi_write_tga_core(stbi__write_context *s, int x, int y, int comp, void *data) +{ + int has_alpha = (comp == 2 || comp == 4); + int colorbytes = has_alpha ? comp-1 : comp; + int format = colorbytes < 2 ? 3 : 2; // 3 color channels (RGB/RGBA) = 2, 1 color channel (Y/YA) = 3 + + if (y < 0 || x < 0) + return 0; + + if (!stbi_write_tga_with_rle) { + return stbiw__outfile(s, -1, -1, x, y, comp, 0, (void *) data, has_alpha, 0, + "111 221 2222 11", 0, 0, format, 0, 0, 0, 0, 0, x, y, (colorbytes + has_alpha) * 8, has_alpha * 8); + } else { + int i,j,k; + int jend, jdir; + + stbiw__writef(s, "111 221 2222 11", 0,0,format+8, 0,0,0, 0,0,x,y, (colorbytes + has_alpha) * 8, has_alpha * 8); + + if (stbi__flip_vertically_on_write) { + j = 0; + jend = y; + jdir = 1; + } else { + j = y-1; + jend = -1; + jdir = -1; + } + for (; j != jend; j += jdir) { + unsigned char *row = (unsigned char *) data + j * x * comp; + int len; + + for (i = 0; i < x; i += len) { + unsigned char *begin = row + i * comp; + int diff = 1; + len = 1; + + if (i < x - 1) { + ++len; + diff = memcmp(begin, row + (i + 1) * comp, comp); + if (diff) { + const unsigned char *prev = begin; + for (k = i + 2; k < x && len < 128; ++k) { + if (memcmp(prev, row + k * comp, comp)) { + prev += comp; + ++len; + } else { + --len; + break; + } + } + } else { + for (k = i + 2; k < x && len < 128; ++k) { + if (!memcmp(begin, row + k * comp, comp)) { + ++len; + } else { + break; + } + } + } + } + + if (diff) { + unsigned char header = STBIW_UCHAR(len - 1); + stbiw__write1(s, header); + for (k = 0; k < len; ++k) { + stbiw__write_pixel(s, -1, comp, has_alpha, 0, begin + k * comp); + } + } else { + unsigned char header = STBIW_UCHAR(len - 129); + stbiw__write1(s, header); + stbiw__write_pixel(s, -1, comp, has_alpha, 0, begin); + } + } + } + stbiw__write_flush(s); + } + return 1; +} + +STBIWDEF int stbi_write_tga_to_func(stbi_write_func *func, void *context, int x, int y, int comp, const void *data) +{ + stbi__write_context s = { 0 }; + stbi__start_write_callbacks(&s, func, context); + return stbi_write_tga_core(&s, x, y, comp, (void *) data); +} + +#ifndef STBI_WRITE_NO_STDIO +STBIWDEF int stbi_write_tga(char const *filename, int x, int y, int comp, const void *data) +{ + stbi__write_context s = { 0 }; + if (stbi__start_write_file(&s,filename)) { + int r = stbi_write_tga_core(&s, x, y, comp, (void *) data); + stbi__end_write_file(&s); + return r; + } else + return 0; +} +#endif + +// ************************************************************************************************* +// Radiance RGBE HDR writer +// by Baldur Karlsson + +#define stbiw__max(a, b) ((a) > (b) ? (a) : (b)) + +#ifndef STBI_WRITE_NO_STDIO + +static void stbiw__linear_to_rgbe(unsigned char *rgbe, float *linear) +{ + int exponent; + float maxcomp = stbiw__max(linear[0], stbiw__max(linear[1], linear[2])); + + if (maxcomp < 1e-32f) { + rgbe[0] = rgbe[1] = rgbe[2] = rgbe[3] = 0; + } else { + float normalize = (float) frexp(maxcomp, &exponent) * 256.0f/maxcomp; + + rgbe[0] = (unsigned char)(linear[0] * normalize); + rgbe[1] = (unsigned char)(linear[1] * normalize); + rgbe[2] = (unsigned char)(linear[2] * normalize); + rgbe[3] = (unsigned char)(exponent + 128); + } +} + +static void stbiw__write_run_data(stbi__write_context *s, int length, unsigned char databyte) +{ + unsigned char lengthbyte = STBIW_UCHAR(length+128); + STBIW_ASSERT(length+128 <= 255); + s->func(s->context, &lengthbyte, 1); + s->func(s->context, &databyte, 1); +} + +static void stbiw__write_dump_data(stbi__write_context *s, int length, unsigned char *data) +{ + unsigned char lengthbyte = STBIW_UCHAR(length); + STBIW_ASSERT(length <= 128); // inconsistent with spec but consistent with official code + s->func(s->context, &lengthbyte, 1); + s->func(s->context, data, length); +} + +static void stbiw__write_hdr_scanline(stbi__write_context *s, int width, int ncomp, unsigned char *scratch, float *scanline) +{ + unsigned char scanlineheader[4] = { 2, 2, 0, 0 }; + unsigned char rgbe[4]; + float linear[3]; + int x; + + scanlineheader[2] = (width&0xff00)>>8; + scanlineheader[3] = (width&0x00ff); + + /* skip RLE for images too small or large */ + if (width < 8 || width >= 32768) { + for (x=0; x < width; x++) { + switch (ncomp) { + case 4: /* fallthrough */ + case 3: linear[2] = scanline[x*ncomp + 2]; + linear[1] = scanline[x*ncomp + 1]; + linear[0] = scanline[x*ncomp + 0]; + break; + default: + linear[0] = linear[1] = linear[2] = scanline[x*ncomp + 0]; + break; + } + stbiw__linear_to_rgbe(rgbe, linear); + s->func(s->context, rgbe, 4); + } + } else { + int c,r; + /* encode into scratch buffer */ + for (x=0; x < width; x++) { + switch(ncomp) { + case 4: /* fallthrough */ + case 3: linear[2] = scanline[x*ncomp + 2]; + linear[1] = scanline[x*ncomp + 1]; + linear[0] = scanline[x*ncomp + 0]; + break; + default: + linear[0] = linear[1] = linear[2] = scanline[x*ncomp + 0]; + break; + } + stbiw__linear_to_rgbe(rgbe, linear); + scratch[x + width*0] = rgbe[0]; + scratch[x + width*1] = rgbe[1]; + scratch[x + width*2] = rgbe[2]; + scratch[x + width*3] = rgbe[3]; + } + + s->func(s->context, scanlineheader, 4); + + /* RLE each component separately */ + for (c=0; c < 4; c++) { + unsigned char *comp = &scratch[width*c]; + + x = 0; + while (x < width) { + // find first run + r = x; + while (r+2 < width) { + if (comp[r] == comp[r+1] && comp[r] == comp[r+2]) + break; + ++r; + } + if (r+2 >= width) + r = width; + // dump up to first run + while (x < r) { + int len = r-x; + if (len > 128) len = 128; + stbiw__write_dump_data(s, len, &comp[x]); + x += len; + } + // if there's a run, output it + if (r+2 < width) { // same test as what we break out of in search loop, so only true if we break'd + // find next byte after run + while (r < width && comp[r] == comp[x]) + ++r; + // output run up to r + while (x < r) { + int len = r-x; + if (len > 127) len = 127; + stbiw__write_run_data(s, len, comp[x]); + x += len; + } + } + } + } + } +} + +static int stbi_write_hdr_core(stbi__write_context *s, int x, int y, int comp, float *data) +{ + if (y <= 0 || x <= 0 || data == NULL) + return 0; + else { + // Each component is stored separately. Allocate scratch space for full output scanline. + unsigned char *scratch = (unsigned char *) STBIW_MALLOC(x*4); + int i, len; + char buffer[128]; + char header[] = "#?RADIANCE\n# Written by stb_image_write.h\nFORMAT=32-bit_rle_rgbe\n"; + s->func(s->context, header, sizeof(header)-1); + +#ifdef __STDC_LIB_EXT1__ + len = sprintf_s(buffer, sizeof(buffer), "EXPOSURE= 1.0000000000000\n\n-Y %d +X %d\n", y, x); +#else + len = sprintf(buffer, "EXPOSURE= 1.0000000000000\n\n-Y %d +X %d\n", y, x); +#endif + s->func(s->context, buffer, len); + + for(i=0; i < y; i++) + stbiw__write_hdr_scanline(s, x, comp, scratch, data + comp*x*(stbi__flip_vertically_on_write ? y-1-i : i)); + STBIW_FREE(scratch); + return 1; + } +} + +STBIWDEF int stbi_write_hdr_to_func(stbi_write_func *func, void *context, int x, int y, int comp, const float *data) +{ + stbi__write_context s = { 0 }; + stbi__start_write_callbacks(&s, func, context); + return stbi_write_hdr_core(&s, x, y, comp, (float *) data); +} + +STBIWDEF int stbi_write_hdr(char const *filename, int x, int y, int comp, const float *data) +{ + stbi__write_context s = { 0 }; + if (stbi__start_write_file(&s,filename)) { + int r = stbi_write_hdr_core(&s, x, y, comp, (float *) data); + stbi__end_write_file(&s); + return r; + } else + return 0; +} +#endif // STBI_WRITE_NO_STDIO + + +////////////////////////////////////////////////////////////////////////////// +// +// PNG writer +// + +#ifndef STBIW_ZLIB_COMPRESS +// stretchy buffer; stbiw__sbpush() == vector<>::push_back() -- stbiw__sbcount() == vector<>::size() +#define stbiw__sbraw(a) ((int *) (void *) (a) - 2) +#define stbiw__sbm(a) stbiw__sbraw(a)[0] +#define stbiw__sbn(a) stbiw__sbraw(a)[1] + +#define stbiw__sbneedgrow(a,n) ((a)==0 || stbiw__sbn(a)+n >= stbiw__sbm(a)) +#define stbiw__sbmaybegrow(a,n) (stbiw__sbneedgrow(a,(n)) ? stbiw__sbgrow(a,n) : 0) +#define stbiw__sbgrow(a,n) stbiw__sbgrowf((void **) &(a), (n), sizeof(*(a))) + +#define stbiw__sbpush(a, v) (stbiw__sbmaybegrow(a,1), (a)[stbiw__sbn(a)++] = (v)) +#define stbiw__sbcount(a) ((a) ? stbiw__sbn(a) : 0) +#define stbiw__sbfree(a) ((a) ? STBIW_FREE(stbiw__sbraw(a)),0 : 0) + +static void *stbiw__sbgrowf(void **arr, int increment, int itemsize) +{ + int m = *arr ? 2*stbiw__sbm(*arr)+increment : increment+1; + void *p = STBIW_REALLOC_SIZED(*arr ? stbiw__sbraw(*arr) : 0, *arr ? (stbiw__sbm(*arr)*itemsize + sizeof(int)*2) : 0, itemsize * m + sizeof(int)*2); + STBIW_ASSERT(p); + if (p) { + if (!*arr) ((int *) p)[1] = 0; + *arr = (void *) ((int *) p + 2); + stbiw__sbm(*arr) = m; + } + return *arr; +} + +static unsigned char *stbiw__zlib_flushf(unsigned char *data, unsigned int *bitbuffer, int *bitcount) +{ + while (*bitcount >= 8) { + stbiw__sbpush(data, STBIW_UCHAR(*bitbuffer)); + *bitbuffer >>= 8; + *bitcount -= 8; + } + return data; +} + +static int stbiw__zlib_bitrev(int code, int codebits) +{ + int res=0; + while (codebits--) { + res = (res << 1) | (code & 1); + code >>= 1; + } + return res; +} + +static unsigned int stbiw__zlib_countm(unsigned char *a, unsigned char *b, int limit) +{ + int i; + for (i=0; i < limit && i < 258; ++i) + if (a[i] != b[i]) break; + return i; +} + +static unsigned int stbiw__zhash(unsigned char *data) +{ + stbiw_uint32 hash = data[0] + (data[1] << 8) + (data[2] << 16); + hash ^= hash << 3; + hash += hash >> 5; + hash ^= hash << 4; + hash += hash >> 17; + hash ^= hash << 25; + hash += hash >> 6; + return hash; +} + +#define stbiw__zlib_flush() (out = stbiw__zlib_flushf(out, &bitbuf, &bitcount)) +#define stbiw__zlib_add(code,codebits) \ + (bitbuf |= (code) << bitcount, bitcount += (codebits), stbiw__zlib_flush()) +#define stbiw__zlib_huffa(b,c) stbiw__zlib_add(stbiw__zlib_bitrev(b,c),c) +// default huffman tables +#define stbiw__zlib_huff1(n) stbiw__zlib_huffa(0x30 + (n), 8) +#define stbiw__zlib_huff2(n) stbiw__zlib_huffa(0x190 + (n)-144, 9) +#define stbiw__zlib_huff3(n) stbiw__zlib_huffa(0 + (n)-256,7) +#define stbiw__zlib_huff4(n) stbiw__zlib_huffa(0xc0 + (n)-280,8) +#define stbiw__zlib_huff(n) ((n) <= 143 ? stbiw__zlib_huff1(n) : (n) <= 255 ? stbiw__zlib_huff2(n) : (n) <= 279 ? stbiw__zlib_huff3(n) : stbiw__zlib_huff4(n)) +#define stbiw__zlib_huffb(n) ((n) <= 143 ? stbiw__zlib_huff1(n) : stbiw__zlib_huff2(n)) + +#define stbiw__ZHASH 16384 + +#endif // STBIW_ZLIB_COMPRESS + +STBIWDEF unsigned char * stbi_zlib_compress(unsigned char *data, int data_len, int *out_len, int quality) +{ +#ifdef STBIW_ZLIB_COMPRESS + // user provided a zlib compress implementation, use that + return STBIW_ZLIB_COMPRESS(data, data_len, out_len, quality); +#else // use builtin + static unsigned short lengthc[] = { 3,4,5,6,7,8,9,10,11,13,15,17,19,23,27,31,35,43,51,59,67,83,99,115,131,163,195,227,258, 259 }; + static unsigned char lengtheb[]= { 0,0,0,0,0,0,0, 0, 1, 1, 1, 1, 2, 2, 2, 2, 3, 3, 3, 3, 4, 4, 4, 4, 5, 5, 5, 5, 0 }; + static unsigned short distc[] = { 1,2,3,4,5,7,9,13,17,25,33,49,65,97,129,193,257,385,513,769,1025,1537,2049,3073,4097,6145,8193,12289,16385,24577, 32768 }; + static unsigned char disteb[] = { 0,0,0,0,1,1,2,2,3,3,4,4,5,5,6,6,7,7,8,8,9,9,10,10,11,11,12,12,13,13 }; + unsigned int bitbuf=0; + int i,j, bitcount=0; + unsigned char *out = NULL; + unsigned char ***hash_table = (unsigned char***) STBIW_MALLOC(stbiw__ZHASH * sizeof(unsigned char**)); + if (hash_table == NULL) + return NULL; + if (quality < 5) quality = 5; + + stbiw__sbpush(out, 0x78); // DEFLATE 32K window + stbiw__sbpush(out, 0x5e); // FLEVEL = 1 + stbiw__zlib_add(1,1); // BFINAL = 1 + stbiw__zlib_add(1,2); // BTYPE = 1 -- fixed huffman + + for (i=0; i < stbiw__ZHASH; ++i) + hash_table[i] = NULL; + + i=0; + while (i < data_len-3) { + // hash next 3 bytes of data to be compressed + int h = stbiw__zhash(data+i)&(stbiw__ZHASH-1), best=3; + unsigned char *bestloc = 0; + unsigned char **hlist = hash_table[h]; + int n = stbiw__sbcount(hlist); + for (j=0; j < n; ++j) { + if (hlist[j]-data > i-32768) { // if entry lies within window + int d = stbiw__zlib_countm(hlist[j], data+i, data_len-i); + if (d >= best) { best=d; bestloc=hlist[j]; } + } + } + // when hash table entry is too long, delete half the entries + if (hash_table[h] && stbiw__sbn(hash_table[h]) == 2*quality) { + STBIW_MEMMOVE(hash_table[h], hash_table[h]+quality, sizeof(hash_table[h][0])*quality); + stbiw__sbn(hash_table[h]) = quality; + } + stbiw__sbpush(hash_table[h],data+i); + + if (bestloc) { + // "lazy matching" - check match at *next* byte, and if it's better, do cur byte as literal + h = stbiw__zhash(data+i+1)&(stbiw__ZHASH-1); + hlist = hash_table[h]; + n = stbiw__sbcount(hlist); + for (j=0; j < n; ++j) { + if (hlist[j]-data > i-32767) { + int e = stbiw__zlib_countm(hlist[j], data+i+1, data_len-i-1); + if (e > best) { // if next match is better, bail on current match + bestloc = NULL; + break; + } + } + } + } + + if (bestloc) { + int d = (int) (data+i - bestloc); // distance back + STBIW_ASSERT(d <= 32767 && best <= 258); + for (j=0; best > lengthc[j+1]-1; ++j); + stbiw__zlib_huff(j+257); + if (lengtheb[j]) stbiw__zlib_add(best - lengthc[j], lengtheb[j]); + for (j=0; d > distc[j+1]-1; ++j); + stbiw__zlib_add(stbiw__zlib_bitrev(j,5),5); + if (disteb[j]) stbiw__zlib_add(d - distc[j], disteb[j]); + i += best; + } else { + stbiw__zlib_huffb(data[i]); + ++i; + } + } + // write out final bytes + for (;i < data_len; ++i) + stbiw__zlib_huffb(data[i]); + stbiw__zlib_huff(256); // end of block + // pad with 0 bits to byte boundary + while (bitcount) + stbiw__zlib_add(0,1); + + for (i=0; i < stbiw__ZHASH; ++i) + (void) stbiw__sbfree(hash_table[i]); + STBIW_FREE(hash_table); + + // store uncompressed instead if compression was worse + if (stbiw__sbn(out) > data_len + 2 + ((data_len+32766)/32767)*5) { + stbiw__sbn(out) = 2; // truncate to DEFLATE 32K window and FLEVEL = 1 + for (j = 0; j < data_len;) { + int blocklen = data_len - j; + if (blocklen > 32767) blocklen = 32767; + stbiw__sbpush(out, data_len - j == blocklen); // BFINAL = ?, BTYPE = 0 -- no compression + stbiw__sbpush(out, STBIW_UCHAR(blocklen)); // LEN + stbiw__sbpush(out, STBIW_UCHAR(blocklen >> 8)); + stbiw__sbpush(out, STBIW_UCHAR(~blocklen)); // NLEN + stbiw__sbpush(out, STBIW_UCHAR(~blocklen >> 8)); + memcpy(out+stbiw__sbn(out), data+j, blocklen); + stbiw__sbn(out) += blocklen; + j += blocklen; + } + } + + { + // compute adler32 on input + unsigned int s1=1, s2=0; + int blocklen = (int) (data_len % 5552); + j=0; + while (j < data_len) { + for (i=0; i < blocklen; ++i) { s1 += data[j+i]; s2 += s1; } + s1 %= 65521; s2 %= 65521; + j += blocklen; + blocklen = 5552; + } + stbiw__sbpush(out, STBIW_UCHAR(s2 >> 8)); + stbiw__sbpush(out, STBIW_UCHAR(s2)); + stbiw__sbpush(out, STBIW_UCHAR(s1 >> 8)); + stbiw__sbpush(out, STBIW_UCHAR(s1)); + } + *out_len = stbiw__sbn(out); + // make returned pointer freeable + STBIW_MEMMOVE(stbiw__sbraw(out), out, *out_len); + return (unsigned char *) stbiw__sbraw(out); +#endif // STBIW_ZLIB_COMPRESS +} + +static unsigned int stbiw__crc32(unsigned char *buffer, int len) +{ +#ifdef STBIW_CRC32 + return STBIW_CRC32(buffer, len); +#else + static unsigned int crc_table[256] = + { + 0x00000000, 0x77073096, 0xEE0E612C, 0x990951BA, 0x076DC419, 0x706AF48F, 0xE963A535, 0x9E6495A3, + 0x0eDB8832, 0x79DCB8A4, 0xE0D5E91E, 0x97D2D988, 0x09B64C2B, 0x7EB17CBD, 0xE7B82D07, 0x90BF1D91, + 0x1DB71064, 0x6AB020F2, 0xF3B97148, 0x84BE41DE, 0x1ADAD47D, 0x6DDDE4EB, 0xF4D4B551, 0x83D385C7, + 0x136C9856, 0x646BA8C0, 0xFD62F97A, 0x8A65C9EC, 0x14015C4F, 0x63066CD9, 0xFA0F3D63, 0x8D080DF5, + 0x3B6E20C8, 0x4C69105E, 0xD56041E4, 0xA2677172, 0x3C03E4D1, 0x4B04D447, 0xD20D85FD, 0xA50AB56B, + 0x35B5A8FA, 0x42B2986C, 0xDBBBC9D6, 0xACBCF940, 0x32D86CE3, 0x45DF5C75, 0xDCD60DCF, 0xABD13D59, + 0x26D930AC, 0x51DE003A, 0xC8D75180, 0xBFD06116, 0x21B4F4B5, 0x56B3C423, 0xCFBA9599, 0xB8BDA50F, + 0x2802B89E, 0x5F058808, 0xC60CD9B2, 0xB10BE924, 0x2F6F7C87, 0x58684C11, 0xC1611DAB, 0xB6662D3D, + 0x76DC4190, 0x01DB7106, 0x98D220BC, 0xEFD5102A, 0x71B18589, 0x06B6B51F, 0x9FBFE4A5, 0xE8B8D433, + 0x7807C9A2, 0x0F00F934, 0x9609A88E, 0xE10E9818, 0x7F6A0DBB, 0x086D3D2D, 0x91646C97, 0xE6635C01, + 0x6B6B51F4, 0x1C6C6162, 0x856530D8, 0xF262004E, 0x6C0695ED, 0x1B01A57B, 0x8208F4C1, 0xF50FC457, + 0x65B0D9C6, 0x12B7E950, 0x8BBEB8EA, 0xFCB9887C, 0x62DD1DDF, 0x15DA2D49, 0x8CD37CF3, 0xFBD44C65, + 0x4DB26158, 0x3AB551CE, 0xA3BC0074, 0xD4BB30E2, 0x4ADFA541, 0x3DD895D7, 0xA4D1C46D, 0xD3D6F4FB, + 0x4369E96A, 0x346ED9FC, 0xAD678846, 0xDA60B8D0, 0x44042D73, 0x33031DE5, 0xAA0A4C5F, 0xDD0D7CC9, + 0x5005713C, 0x270241AA, 0xBE0B1010, 0xC90C2086, 0x5768B525, 0x206F85B3, 0xB966D409, 0xCE61E49F, + 0x5EDEF90E, 0x29D9C998, 0xB0D09822, 0xC7D7A8B4, 0x59B33D17, 0x2EB40D81, 0xB7BD5C3B, 0xC0BA6CAD, + 0xEDB88320, 0x9ABFB3B6, 0x03B6E20C, 0x74B1D29A, 0xEAD54739, 0x9DD277AF, 0x04DB2615, 0x73DC1683, + 0xE3630B12, 0x94643B84, 0x0D6D6A3E, 0x7A6A5AA8, 0xE40ECF0B, 0x9309FF9D, 0x0A00AE27, 0x7D079EB1, + 0xF00F9344, 0x8708A3D2, 0x1E01F268, 0x6906C2FE, 0xF762575D, 0x806567CB, 0x196C3671, 0x6E6B06E7, + 0xFED41B76, 0x89D32BE0, 0x10DA7A5A, 0x67DD4ACC, 0xF9B9DF6F, 0x8EBEEFF9, 0x17B7BE43, 0x60B08ED5, + 0xD6D6A3E8, 0xA1D1937E, 0x38D8C2C4, 0x4FDFF252, 0xD1BB67F1, 0xA6BC5767, 0x3FB506DD, 0x48B2364B, + 0xD80D2BDA, 0xAF0A1B4C, 0x36034AF6, 0x41047A60, 0xDF60EFC3, 0xA867DF55, 0x316E8EEF, 0x4669BE79, + 0xCB61B38C, 0xBC66831A, 0x256FD2A0, 0x5268E236, 0xCC0C7795, 0xBB0B4703, 0x220216B9, 0x5505262F, + 0xC5BA3BBE, 0xB2BD0B28, 0x2BB45A92, 0x5CB36A04, 0xC2D7FFA7, 0xB5D0CF31, 0x2CD99E8B, 0x5BDEAE1D, + 0x9B64C2B0, 0xEC63F226, 0x756AA39C, 0x026D930A, 0x9C0906A9, 0xEB0E363F, 0x72076785, 0x05005713, + 0x95BF4A82, 0xE2B87A14, 0x7BB12BAE, 0x0CB61B38, 0x92D28E9B, 0xE5D5BE0D, 0x7CDCEFB7, 0x0BDBDF21, + 0x86D3D2D4, 0xF1D4E242, 0x68DDB3F8, 0x1FDA836E, 0x81BE16CD, 0xF6B9265B, 0x6FB077E1, 0x18B74777, + 0x88085AE6, 0xFF0F6A70, 0x66063BCA, 0x11010B5C, 0x8F659EFF, 0xF862AE69, 0x616BFFD3, 0x166CCF45, + 0xA00AE278, 0xD70DD2EE, 0x4E048354, 0x3903B3C2, 0xA7672661, 0xD06016F7, 0x4969474D, 0x3E6E77DB, + 0xAED16A4A, 0xD9D65ADC, 0x40DF0B66, 0x37D83BF0, 0xA9BCAE53, 0xDEBB9EC5, 0x47B2CF7F, 0x30B5FFE9, + 0xBDBDF21C, 0xCABAC28A, 0x53B39330, 0x24B4A3A6, 0xBAD03605, 0xCDD70693, 0x54DE5729, 0x23D967BF, + 0xB3667A2E, 0xC4614AB8, 0x5D681B02, 0x2A6F2B94, 0xB40BBE37, 0xC30C8EA1, 0x5A05DF1B, 0x2D02EF8D + }; + + unsigned int crc = ~0u; + int i; + for (i=0; i < len; ++i) + crc = (crc >> 8) ^ crc_table[buffer[i] ^ (crc & 0xff)]; + return ~crc; +#endif +} + +#define stbiw__wpng4(o,a,b,c,d) ((o)[0]=STBIW_UCHAR(a),(o)[1]=STBIW_UCHAR(b),(o)[2]=STBIW_UCHAR(c),(o)[3]=STBIW_UCHAR(d),(o)+=4) +#define stbiw__wp32(data,v) stbiw__wpng4(data, (v)>>24,(v)>>16,(v)>>8,(v)); +#define stbiw__wptag(data,s) stbiw__wpng4(data, s[0],s[1],s[2],s[3]) + +static void stbiw__wpcrc(unsigned char **data, int len) +{ + unsigned int crc = stbiw__crc32(*data - len - 4, len+4); + stbiw__wp32(*data, crc); +} + +static unsigned char stbiw__paeth(int a, int b, int c) +{ + int p = a + b - c, pa = abs(p-a), pb = abs(p-b), pc = abs(p-c); + if (pa <= pb && pa <= pc) return STBIW_UCHAR(a); + if (pb <= pc) return STBIW_UCHAR(b); + return STBIW_UCHAR(c); +} + +// @OPTIMIZE: provide an option that always forces left-predict or paeth predict +static void stbiw__encode_png_line(unsigned char *pixels, int stride_bytes, int width, int height, int y, int n, int filter_type, signed char *line_buffer) +{ + static int mapping[] = { 0,1,2,3,4 }; + static int firstmap[] = { 0,1,0,5,6 }; + int *mymap = (y != 0) ? mapping : firstmap; + int i; + int type = mymap[filter_type]; + unsigned char *z = pixels + stride_bytes * (stbi__flip_vertically_on_write ? height-1-y : y); + int signed_stride = stbi__flip_vertically_on_write ? -stride_bytes : stride_bytes; + + if (type==0) { + memcpy(line_buffer, z, width*n); + return; + } + + // first loop isn't optimized since it's just one pixel + for (i = 0; i < n; ++i) { + switch (type) { + case 1: line_buffer[i] = z[i]; break; + case 2: line_buffer[i] = z[i] - z[i-signed_stride]; break; + case 3: line_buffer[i] = z[i] - (z[i-signed_stride]>>1); break; + case 4: line_buffer[i] = (signed char) (z[i] - stbiw__paeth(0,z[i-signed_stride],0)); break; + case 5: line_buffer[i] = z[i]; break; + case 6: line_buffer[i] = z[i]; break; + } + } + switch (type) { + case 1: for (i=n; i < width*n; ++i) line_buffer[i] = z[i] - z[i-n]; break; + case 2: for (i=n; i < width*n; ++i) line_buffer[i] = z[i] - z[i-signed_stride]; break; + case 3: for (i=n; i < width*n; ++i) line_buffer[i] = z[i] - ((z[i-n] + z[i-signed_stride])>>1); break; + case 4: for (i=n; i < width*n; ++i) line_buffer[i] = z[i] - stbiw__paeth(z[i-n], z[i-signed_stride], z[i-signed_stride-n]); break; + case 5: for (i=n; i < width*n; ++i) line_buffer[i] = z[i] - (z[i-n]>>1); break; + case 6: for (i=n; i < width*n; ++i) line_buffer[i] = z[i] - stbiw__paeth(z[i-n], 0,0); break; + } +} + +STBIWDEF unsigned char *stbi_write_png_to_mem(const unsigned char *pixels, int stride_bytes, int x, int y, int n, int *out_len) +{ + int force_filter = stbi_write_force_png_filter; + int ctype[5] = { -1, 0, 4, 2, 6 }; + unsigned char sig[8] = { 137,80,78,71,13,10,26,10 }; + unsigned char *out,*o, *filt, *zlib; + signed char *line_buffer; + int j,zlen; + + if (stride_bytes == 0) + stride_bytes = x * n; + + if (force_filter >= 5) { + force_filter = -1; + } + + filt = (unsigned char *) STBIW_MALLOC((x*n+1) * y); if (!filt) return 0; + line_buffer = (signed char *) STBIW_MALLOC(x * n); if (!line_buffer) { STBIW_FREE(filt); return 0; } + for (j=0; j < y; ++j) { + int filter_type; + if (force_filter > -1) { + filter_type = force_filter; + stbiw__encode_png_line((unsigned char*)(pixels), stride_bytes, x, y, j, n, force_filter, line_buffer); + } else { // Estimate the best filter by running through all of them: + int best_filter = 0, best_filter_val = 0x7fffffff, est, i; + for (filter_type = 0; filter_type < 5; filter_type++) { + stbiw__encode_png_line((unsigned char*)(pixels), stride_bytes, x, y, j, n, filter_type, line_buffer); + + // Estimate the entropy of the line using this filter; the less, the better. + est = 0; + for (i = 0; i < x*n; ++i) { + est += abs((signed char) line_buffer[i]); + } + if (est < best_filter_val) { + best_filter_val = est; + best_filter = filter_type; + } + } + if (filter_type != best_filter) { // If the last iteration already got us the best filter, don't redo it + stbiw__encode_png_line((unsigned char*)(pixels), stride_bytes, x, y, j, n, best_filter, line_buffer); + filter_type = best_filter; + } + } + // when we get here, filter_type contains the filter type, and line_buffer contains the data + filt[j*(x*n+1)] = (unsigned char) filter_type; + STBIW_MEMMOVE(filt+j*(x*n+1)+1, line_buffer, x*n); + } + STBIW_FREE(line_buffer); + zlib = stbi_zlib_compress(filt, y*( x*n+1), &zlen, stbi_write_png_compression_level); + STBIW_FREE(filt); + if (!zlib) return 0; + + // each tag requires 12 bytes of overhead + out = (unsigned char *) STBIW_MALLOC(8 + 12+13 + 12+zlen + 12); + if (!out) return 0; + *out_len = 8 + 12+13 + 12+zlen + 12; + + o=out; + STBIW_MEMMOVE(o,sig,8); o+= 8; + stbiw__wp32(o, 13); // header length + stbiw__wptag(o, "IHDR"); + stbiw__wp32(o, x); + stbiw__wp32(o, y); + *o++ = 8; + *o++ = STBIW_UCHAR(ctype[n]); + *o++ = 0; + *o++ = 0; + *o++ = 0; + stbiw__wpcrc(&o,13); + + stbiw__wp32(o, zlen); + stbiw__wptag(o, "IDAT"); + STBIW_MEMMOVE(o, zlib, zlen); + o += zlen; + STBIW_FREE(zlib); + stbiw__wpcrc(&o, zlen); + + stbiw__wp32(o,0); + stbiw__wptag(o, "IEND"); + stbiw__wpcrc(&o,0); + + STBIW_ASSERT(o == out + *out_len); + + return out; +} + +#ifndef STBI_WRITE_NO_STDIO +STBIWDEF int stbi_write_png(char const *filename, int x, int y, int comp, const void *data, int stride_bytes) +{ + FILE *f; + int len; + unsigned char *png = stbi_write_png_to_mem((const unsigned char *) data, stride_bytes, x, y, comp, &len); + if (png == NULL) return 0; + + f = stbiw__fopen(filename, "wb"); + if (!f) { STBIW_FREE(png); return 0; } + fwrite(png, 1, len, f); + fclose(f); + STBIW_FREE(png); + return 1; +} +#endif + +STBIWDEF int stbi_write_png_to_func(stbi_write_func *func, void *context, int x, int y, int comp, const void *data, int stride_bytes) +{ + int len; + unsigned char *png = stbi_write_png_to_mem((const unsigned char *) data, stride_bytes, x, y, comp, &len); + if (png == NULL) return 0; + func(context, png, len); + STBIW_FREE(png); + return 1; +} + + +/* *************************************************************************** + * + * JPEG writer + * + * This is based on Jon Olick's jo_jpeg.cpp: + * public domain Simple, Minimalistic JPEG writer - http://www.jonolick.com/code.html + */ + +static const unsigned char stbiw__jpg_ZigZag[] = { 0,1,5,6,14,15,27,28,2,4,7,13,16,26,29,42,3,8,12,17,25,30,41,43,9,11,18, + 24,31,40,44,53,10,19,23,32,39,45,52,54,20,22,33,38,46,51,55,60,21,34,37,47,50,56,59,61,35,36,48,49,57,58,62,63 }; + +static void stbiw__jpg_writeBits(stbi__write_context *s, int *bitBufP, int *bitCntP, const unsigned short *bs) { + int bitBuf = *bitBufP, bitCnt = *bitCntP; + bitCnt += bs[1]; + bitBuf |= bs[0] << (24 - bitCnt); + while(bitCnt >= 8) { + unsigned char c = (bitBuf >> 16) & 255; + stbiw__putc(s, c); + if(c == 255) { + stbiw__putc(s, 0); + } + bitBuf <<= 8; + bitCnt -= 8; + } + *bitBufP = bitBuf; + *bitCntP = bitCnt; +} + +static void stbiw__jpg_DCT(float *d0p, float *d1p, float *d2p, float *d3p, float *d4p, float *d5p, float *d6p, float *d7p) { + float d0 = *d0p, d1 = *d1p, d2 = *d2p, d3 = *d3p, d4 = *d4p, d5 = *d5p, d6 = *d6p, d7 = *d7p; + float z1, z2, z3, z4, z5, z11, z13; + + float tmp0 = d0 + d7; + float tmp7 = d0 - d7; + float tmp1 = d1 + d6; + float tmp6 = d1 - d6; + float tmp2 = d2 + d5; + float tmp5 = d2 - d5; + float tmp3 = d3 + d4; + float tmp4 = d3 - d4; + + // Even part + float tmp10 = tmp0 + tmp3; // phase 2 + float tmp13 = tmp0 - tmp3; + float tmp11 = tmp1 + tmp2; + float tmp12 = tmp1 - tmp2; + + d0 = tmp10 + tmp11; // phase 3 + d4 = tmp10 - tmp11; + + z1 = (tmp12 + tmp13) * 0.707106781f; // c4 + d2 = tmp13 + z1; // phase 5 + d6 = tmp13 - z1; + + // Odd part + tmp10 = tmp4 + tmp5; // phase 2 + tmp11 = tmp5 + tmp6; + tmp12 = tmp6 + tmp7; + + // The rotator is modified from fig 4-8 to avoid extra negations. + z5 = (tmp10 - tmp12) * 0.382683433f; // c6 + z2 = tmp10 * 0.541196100f + z5; // c2-c6 + z4 = tmp12 * 1.306562965f + z5; // c2+c6 + z3 = tmp11 * 0.707106781f; // c4 + + z11 = tmp7 + z3; // phase 5 + z13 = tmp7 - z3; + + *d5p = z13 + z2; // phase 6 + *d3p = z13 - z2; + *d1p = z11 + z4; + *d7p = z11 - z4; + + *d0p = d0; *d2p = d2; *d4p = d4; *d6p = d6; +} + +static void stbiw__jpg_calcBits(int val, unsigned short bits[2]) { + int tmp1 = val < 0 ? -val : val; + val = val < 0 ? val-1 : val; + bits[1] = 1; + while(tmp1 >>= 1) { + ++bits[1]; + } + bits[0] = val & ((1<0)&&(DU[end0pos]==0); --end0pos) { + } + // end0pos = first element in reverse order !=0 + if(end0pos == 0) { + stbiw__jpg_writeBits(s, bitBuf, bitCnt, EOB); + return DU[0]; + } + for(i = 1; i <= end0pos; ++i) { + int startpos = i; + int nrzeroes; + unsigned short bits[2]; + for (; DU[i]==0 && i<=end0pos; ++i) { + } + nrzeroes = i-startpos; + if ( nrzeroes >= 16 ) { + int lng = nrzeroes>>4; + int nrmarker; + for (nrmarker=1; nrmarker <= lng; ++nrmarker) + stbiw__jpg_writeBits(s, bitBuf, bitCnt, M16zeroes); + nrzeroes &= 15; + } + stbiw__jpg_calcBits(DU[i], bits); + stbiw__jpg_writeBits(s, bitBuf, bitCnt, HTAC[(nrzeroes<<4)+bits[1]]); + stbiw__jpg_writeBits(s, bitBuf, bitCnt, bits); + } + if(end0pos != 63) { + stbiw__jpg_writeBits(s, bitBuf, bitCnt, EOB); + } + return DU[0]; +} + +static int stbi_write_jpg_core(stbi__write_context *s, int width, int height, int comp, const void* data, int quality) { + // Constants that don't pollute global namespace + static const unsigned char std_dc_luminance_nrcodes[] = {0,0,1,5,1,1,1,1,1,1,0,0,0,0,0,0,0}; + static const unsigned char std_dc_luminance_values[] = {0,1,2,3,4,5,6,7,8,9,10,11}; + static const unsigned char std_ac_luminance_nrcodes[] = {0,0,2,1,3,3,2,4,3,5,5,4,4,0,0,1,0x7d}; + static const unsigned char std_ac_luminance_values[] = { + 0x01,0x02,0x03,0x00,0x04,0x11,0x05,0x12,0x21,0x31,0x41,0x06,0x13,0x51,0x61,0x07,0x22,0x71,0x14,0x32,0x81,0x91,0xa1,0x08, + 0x23,0x42,0xb1,0xc1,0x15,0x52,0xd1,0xf0,0x24,0x33,0x62,0x72,0x82,0x09,0x0a,0x16,0x17,0x18,0x19,0x1a,0x25,0x26,0x27,0x28, + 0x29,0x2a,0x34,0x35,0x36,0x37,0x38,0x39,0x3a,0x43,0x44,0x45,0x46,0x47,0x48,0x49,0x4a,0x53,0x54,0x55,0x56,0x57,0x58,0x59, + 0x5a,0x63,0x64,0x65,0x66,0x67,0x68,0x69,0x6a,0x73,0x74,0x75,0x76,0x77,0x78,0x79,0x7a,0x83,0x84,0x85,0x86,0x87,0x88,0x89, + 0x8a,0x92,0x93,0x94,0x95,0x96,0x97,0x98,0x99,0x9a,0xa2,0xa3,0xa4,0xa5,0xa6,0xa7,0xa8,0xa9,0xaa,0xb2,0xb3,0xb4,0xb5,0xb6, + 0xb7,0xb8,0xb9,0xba,0xc2,0xc3,0xc4,0xc5,0xc6,0xc7,0xc8,0xc9,0xca,0xd2,0xd3,0xd4,0xd5,0xd6,0xd7,0xd8,0xd9,0xda,0xe1,0xe2, + 0xe3,0xe4,0xe5,0xe6,0xe7,0xe8,0xe9,0xea,0xf1,0xf2,0xf3,0xf4,0xf5,0xf6,0xf7,0xf8,0xf9,0xfa + }; + static const unsigned char std_dc_chrominance_nrcodes[] = {0,0,3,1,1,1,1,1,1,1,1,1,0,0,0,0,0}; + static const unsigned char std_dc_chrominance_values[] = {0,1,2,3,4,5,6,7,8,9,10,11}; + static const unsigned char std_ac_chrominance_nrcodes[] = {0,0,2,1,2,4,4,3,4,7,5,4,4,0,1,2,0x77}; + static const unsigned char std_ac_chrominance_values[] = { + 0x00,0x01,0x02,0x03,0x11,0x04,0x05,0x21,0x31,0x06,0x12,0x41,0x51,0x07,0x61,0x71,0x13,0x22,0x32,0x81,0x08,0x14,0x42,0x91, + 0xa1,0xb1,0xc1,0x09,0x23,0x33,0x52,0xf0,0x15,0x62,0x72,0xd1,0x0a,0x16,0x24,0x34,0xe1,0x25,0xf1,0x17,0x18,0x19,0x1a,0x26, + 0x27,0x28,0x29,0x2a,0x35,0x36,0x37,0x38,0x39,0x3a,0x43,0x44,0x45,0x46,0x47,0x48,0x49,0x4a,0x53,0x54,0x55,0x56,0x57,0x58, + 0x59,0x5a,0x63,0x64,0x65,0x66,0x67,0x68,0x69,0x6a,0x73,0x74,0x75,0x76,0x77,0x78,0x79,0x7a,0x82,0x83,0x84,0x85,0x86,0x87, + 0x88,0x89,0x8a,0x92,0x93,0x94,0x95,0x96,0x97,0x98,0x99,0x9a,0xa2,0xa3,0xa4,0xa5,0xa6,0xa7,0xa8,0xa9,0xaa,0xb2,0xb3,0xb4, + 0xb5,0xb6,0xb7,0xb8,0xb9,0xba,0xc2,0xc3,0xc4,0xc5,0xc6,0xc7,0xc8,0xc9,0xca,0xd2,0xd3,0xd4,0xd5,0xd6,0xd7,0xd8,0xd9,0xda, + 0xe2,0xe3,0xe4,0xe5,0xe6,0xe7,0xe8,0xe9,0xea,0xf2,0xf3,0xf4,0xf5,0xf6,0xf7,0xf8,0xf9,0xfa + }; + // Huffman tables + static const unsigned short YDC_HT[256][2] = { {0,2},{2,3},{3,3},{4,3},{5,3},{6,3},{14,4},{30,5},{62,6},{126,7},{254,8},{510,9}}; + static const unsigned short UVDC_HT[256][2] = { {0,2},{1,2},{2,2},{6,3},{14,4},{30,5},{62,6},{126,7},{254,8},{510,9},{1022,10},{2046,11}}; + static const unsigned short YAC_HT[256][2] = { + {10,4},{0,2},{1,2},{4,3},{11,4},{26,5},{120,7},{248,8},{1014,10},{65410,16},{65411,16},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0}, + {12,4},{27,5},{121,7},{502,9},{2038,11},{65412,16},{65413,16},{65414,16},{65415,16},{65416,16},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0}, + {28,5},{249,8},{1015,10},{4084,12},{65417,16},{65418,16},{65419,16},{65420,16},{65421,16},{65422,16},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0}, + {58,6},{503,9},{4085,12},{65423,16},{65424,16},{65425,16},{65426,16},{65427,16},{65428,16},{65429,16},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0}, + {59,6},{1016,10},{65430,16},{65431,16},{65432,16},{65433,16},{65434,16},{65435,16},{65436,16},{65437,16},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0}, + {122,7},{2039,11},{65438,16},{65439,16},{65440,16},{65441,16},{65442,16},{65443,16},{65444,16},{65445,16},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0}, + {123,7},{4086,12},{65446,16},{65447,16},{65448,16},{65449,16},{65450,16},{65451,16},{65452,16},{65453,16},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0}, + {250,8},{4087,12},{65454,16},{65455,16},{65456,16},{65457,16},{65458,16},{65459,16},{65460,16},{65461,16},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0}, + {504,9},{32704,15},{65462,16},{65463,16},{65464,16},{65465,16},{65466,16},{65467,16},{65468,16},{65469,16},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0}, + {505,9},{65470,16},{65471,16},{65472,16},{65473,16},{65474,16},{65475,16},{65476,16},{65477,16},{65478,16},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0}, + {506,9},{65479,16},{65480,16},{65481,16},{65482,16},{65483,16},{65484,16},{65485,16},{65486,16},{65487,16},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0}, + {1017,10},{65488,16},{65489,16},{65490,16},{65491,16},{65492,16},{65493,16},{65494,16},{65495,16},{65496,16},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0}, + {1018,10},{65497,16},{65498,16},{65499,16},{65500,16},{65501,16},{65502,16},{65503,16},{65504,16},{65505,16},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0}, + {2040,11},{65506,16},{65507,16},{65508,16},{65509,16},{65510,16},{65511,16},{65512,16},{65513,16},{65514,16},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0}, + {65515,16},{65516,16},{65517,16},{65518,16},{65519,16},{65520,16},{65521,16},{65522,16},{65523,16},{65524,16},{0,0},{0,0},{0,0},{0,0},{0,0}, + {2041,11},{65525,16},{65526,16},{65527,16},{65528,16},{65529,16},{65530,16},{65531,16},{65532,16},{65533,16},{65534,16},{0,0},{0,0},{0,0},{0,0},{0,0} + }; + static const unsigned short UVAC_HT[256][2] = { + {0,2},{1,2},{4,3},{10,4},{24,5},{25,5},{56,6},{120,7},{500,9},{1014,10},{4084,12},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0}, + {11,4},{57,6},{246,8},{501,9},{2038,11},{4085,12},{65416,16},{65417,16},{65418,16},{65419,16},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0}, + {26,5},{247,8},{1015,10},{4086,12},{32706,15},{65420,16},{65421,16},{65422,16},{65423,16},{65424,16},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0}, + {27,5},{248,8},{1016,10},{4087,12},{65425,16},{65426,16},{65427,16},{65428,16},{65429,16},{65430,16},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0}, + {58,6},{502,9},{65431,16},{65432,16},{65433,16},{65434,16},{65435,16},{65436,16},{65437,16},{65438,16},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0}, + {59,6},{1017,10},{65439,16},{65440,16},{65441,16},{65442,16},{65443,16},{65444,16},{65445,16},{65446,16},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0}, + {121,7},{2039,11},{65447,16},{65448,16},{65449,16},{65450,16},{65451,16},{65452,16},{65453,16},{65454,16},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0}, + {122,7},{2040,11},{65455,16},{65456,16},{65457,16},{65458,16},{65459,16},{65460,16},{65461,16},{65462,16},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0}, + {249,8},{65463,16},{65464,16},{65465,16},{65466,16},{65467,16},{65468,16},{65469,16},{65470,16},{65471,16},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0}, + {503,9},{65472,16},{65473,16},{65474,16},{65475,16},{65476,16},{65477,16},{65478,16},{65479,16},{65480,16},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0}, + {504,9},{65481,16},{65482,16},{65483,16},{65484,16},{65485,16},{65486,16},{65487,16},{65488,16},{65489,16},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0}, + {505,9},{65490,16},{65491,16},{65492,16},{65493,16},{65494,16},{65495,16},{65496,16},{65497,16},{65498,16},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0}, + {506,9},{65499,16},{65500,16},{65501,16},{65502,16},{65503,16},{65504,16},{65505,16},{65506,16},{65507,16},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0}, + {2041,11},{65508,16},{65509,16},{65510,16},{65511,16},{65512,16},{65513,16},{65514,16},{65515,16},{65516,16},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0}, + {16352,14},{65517,16},{65518,16},{65519,16},{65520,16},{65521,16},{65522,16},{65523,16},{65524,16},{65525,16},{0,0},{0,0},{0,0},{0,0},{0,0}, + {1018,10},{32707,15},{65526,16},{65527,16},{65528,16},{65529,16},{65530,16},{65531,16},{65532,16},{65533,16},{65534,16},{0,0},{0,0},{0,0},{0,0},{0,0} + }; + static const int YQT[] = {16,11,10,16,24,40,51,61,12,12,14,19,26,58,60,55,14,13,16,24,40,57,69,56,14,17,22,29,51,87,80,62,18,22, + 37,56,68,109,103,77,24,35,55,64,81,104,113,92,49,64,78,87,103,121,120,101,72,92,95,98,112,100,103,99}; + static const int UVQT[] = {17,18,24,47,99,99,99,99,18,21,26,66,99,99,99,99,24,26,56,99,99,99,99,99,47,66,99,99,99,99,99,99, + 99,99,99,99,99,99,99,99,99,99,99,99,99,99,99,99,99,99,99,99,99,99,99,99,99,99,99,99,99,99,99,99}; + static const float aasf[] = { 1.0f * 2.828427125f, 1.387039845f * 2.828427125f, 1.306562965f * 2.828427125f, 1.175875602f * 2.828427125f, + 1.0f * 2.828427125f, 0.785694958f * 2.828427125f, 0.541196100f * 2.828427125f, 0.275899379f * 2.828427125f }; + + int row, col, i, k, subsample; + float fdtbl_Y[64], fdtbl_UV[64]; + unsigned char YTable[64], UVTable[64]; + + if(!data || !width || !height || comp > 4 || comp < 1) { + return 0; + } + + quality = quality ? quality : 90; + subsample = quality <= 90 ? 1 : 0; + quality = quality < 1 ? 1 : quality > 100 ? 100 : quality; + quality = quality < 50 ? 5000 / quality : 200 - quality * 2; + + for(i = 0; i < 64; ++i) { + int uvti, yti = (YQT[i]*quality+50)/100; + YTable[stbiw__jpg_ZigZag[i]] = (unsigned char) (yti < 1 ? 1 : yti > 255 ? 255 : yti); + uvti = (UVQT[i]*quality+50)/100; + UVTable[stbiw__jpg_ZigZag[i]] = (unsigned char) (uvti < 1 ? 1 : uvti > 255 ? 255 : uvti); + } + + for(row = 0, k = 0; row < 8; ++row) { + for(col = 0; col < 8; ++col, ++k) { + fdtbl_Y[k] = 1 / (YTable [stbiw__jpg_ZigZag[k]] * aasf[row] * aasf[col]); + fdtbl_UV[k] = 1 / (UVTable[stbiw__jpg_ZigZag[k]] * aasf[row] * aasf[col]); + } + } + + // Write Headers + { + static const unsigned char head0[] = { 0xFF,0xD8,0xFF,0xE0,0,0x10,'J','F','I','F',0,1,1,0,0,1,0,1,0,0,0xFF,0xDB,0,0x84,0 }; + static const unsigned char head2[] = { 0xFF,0xDA,0,0xC,3,1,0,2,0x11,3,0x11,0,0x3F,0 }; + const unsigned char head1[] = { 0xFF,0xC0,0,0x11,8,(unsigned char)(height>>8),STBIW_UCHAR(height),(unsigned char)(width>>8),STBIW_UCHAR(width), + 3,1,(unsigned char)(subsample?0x22:0x11),0,2,0x11,1,3,0x11,1,0xFF,0xC4,0x01,0xA2,0 }; + s->func(s->context, (void*)head0, sizeof(head0)); + s->func(s->context, (void*)YTable, sizeof(YTable)); + stbiw__putc(s, 1); + s->func(s->context, UVTable, sizeof(UVTable)); + s->func(s->context, (void*)head1, sizeof(head1)); + s->func(s->context, (void*)(std_dc_luminance_nrcodes+1), sizeof(std_dc_luminance_nrcodes)-1); + s->func(s->context, (void*)std_dc_luminance_values, sizeof(std_dc_luminance_values)); + stbiw__putc(s, 0x10); // HTYACinfo + s->func(s->context, (void*)(std_ac_luminance_nrcodes+1), sizeof(std_ac_luminance_nrcodes)-1); + s->func(s->context, (void*)std_ac_luminance_values, sizeof(std_ac_luminance_values)); + stbiw__putc(s, 1); // HTUDCinfo + s->func(s->context, (void*)(std_dc_chrominance_nrcodes+1), sizeof(std_dc_chrominance_nrcodes)-1); + s->func(s->context, (void*)std_dc_chrominance_values, sizeof(std_dc_chrominance_values)); + stbiw__putc(s, 0x11); // HTUACinfo + s->func(s->context, (void*)(std_ac_chrominance_nrcodes+1), sizeof(std_ac_chrominance_nrcodes)-1); + s->func(s->context, (void*)std_ac_chrominance_values, sizeof(std_ac_chrominance_values)); + s->func(s->context, (void*)head2, sizeof(head2)); + } + + // Encode 8x8 macroblocks + { + static const unsigned short fillBits[] = {0x7F, 7}; + int DCY=0, DCU=0, DCV=0; + int bitBuf=0, bitCnt=0; + // comp == 2 is grey+alpha (alpha is ignored) + int ofsG = comp > 2 ? 1 : 0, ofsB = comp > 2 ? 2 : 0; + const unsigned char *dataR = (const unsigned char *)data; + const unsigned char *dataG = dataR + ofsG; + const unsigned char *dataB = dataR + ofsB; + int x, y, pos; + if(subsample) { + for(y = 0; y < height; y += 16) { + for(x = 0; x < width; x += 16) { + float Y[256], U[256], V[256]; + for(row = y, pos = 0; row < y+16; ++row) { + // row >= height => use last input row + int clamped_row = (row < height) ? row : height - 1; + int base_p = (stbi__flip_vertically_on_write ? (height-1-clamped_row) : clamped_row)*width*comp; + for(col = x; col < x+16; ++col, ++pos) { + // if col >= width => use pixel from last input column + int p = base_p + ((col < width) ? col : (width-1))*comp; + float r = dataR[p], g = dataG[p], b = dataB[p]; + Y[pos]= +0.29900f*r + 0.58700f*g + 0.11400f*b - 128; + U[pos]= -0.16874f*r - 0.33126f*g + 0.50000f*b; + V[pos]= +0.50000f*r - 0.41869f*g - 0.08131f*b; + } + } + DCY = stbiw__jpg_processDU(s, &bitBuf, &bitCnt, Y+0, 16, fdtbl_Y, DCY, YDC_HT, YAC_HT); + DCY = stbiw__jpg_processDU(s, &bitBuf, &bitCnt, Y+8, 16, fdtbl_Y, DCY, YDC_HT, YAC_HT); + DCY = stbiw__jpg_processDU(s, &bitBuf, &bitCnt, Y+128, 16, fdtbl_Y, DCY, YDC_HT, YAC_HT); + DCY = stbiw__jpg_processDU(s, &bitBuf, &bitCnt, Y+136, 16, fdtbl_Y, DCY, YDC_HT, YAC_HT); + + // subsample U,V + { + float subU[64], subV[64]; + int yy, xx; + for(yy = 0, pos = 0; yy < 8; ++yy) { + for(xx = 0; xx < 8; ++xx, ++pos) { + int j = yy*32+xx*2; + subU[pos] = (U[j+0] + U[j+1] + U[j+16] + U[j+17]) * 0.25f; + subV[pos] = (V[j+0] + V[j+1] + V[j+16] + V[j+17]) * 0.25f; + } + } + DCU = stbiw__jpg_processDU(s, &bitBuf, &bitCnt, subU, 8, fdtbl_UV, DCU, UVDC_HT, UVAC_HT); + DCV = stbiw__jpg_processDU(s, &bitBuf, &bitCnt, subV, 8, fdtbl_UV, DCV, UVDC_HT, UVAC_HT); + } + } + } + } else { + for(y = 0; y < height; y += 8) { + for(x = 0; x < width; x += 8) { + float Y[64], U[64], V[64]; + for(row = y, pos = 0; row < y+8; ++row) { + // row >= height => use last input row + int clamped_row = (row < height) ? row : height - 1; + int base_p = (stbi__flip_vertically_on_write ? (height-1-clamped_row) : clamped_row)*width*comp; + for(col = x; col < x+8; ++col, ++pos) { + // if col >= width => use pixel from last input column + int p = base_p + ((col < width) ? col : (width-1))*comp; + float r = dataR[p], g = dataG[p], b = dataB[p]; + Y[pos]= +0.29900f*r + 0.58700f*g + 0.11400f*b - 128; + U[pos]= -0.16874f*r - 0.33126f*g + 0.50000f*b; + V[pos]= +0.50000f*r - 0.41869f*g - 0.08131f*b; + } + } + + DCY = stbiw__jpg_processDU(s, &bitBuf, &bitCnt, Y, 8, fdtbl_Y, DCY, YDC_HT, YAC_HT); + DCU = stbiw__jpg_processDU(s, &bitBuf, &bitCnt, U, 8, fdtbl_UV, DCU, UVDC_HT, UVAC_HT); + DCV = stbiw__jpg_processDU(s, &bitBuf, &bitCnt, V, 8, fdtbl_UV, DCV, UVDC_HT, UVAC_HT); + } + } + } + + // Do the bit alignment of the EOI marker + stbiw__jpg_writeBits(s, &bitBuf, &bitCnt, fillBits); + } + + // EOI + stbiw__putc(s, 0xFF); + stbiw__putc(s, 0xD9); + + return 1; +} + +STBIWDEF int stbi_write_jpg_to_func(stbi_write_func *func, void *context, int x, int y, int comp, const void *data, int quality) +{ + stbi__write_context s = { 0 }; + stbi__start_write_callbacks(&s, func, context); + return stbi_write_jpg_core(&s, x, y, comp, (void *) data, quality); +} + + +#ifndef STBI_WRITE_NO_STDIO +STBIWDEF int stbi_write_jpg(char const *filename, int x, int y, int comp, const void *data, int quality) +{ + stbi__write_context s = { 0 }; + if (stbi__start_write_file(&s,filename)) { + int r = stbi_write_jpg_core(&s, x, y, comp, data, quality); + stbi__end_write_file(&s); + return r; + } else + return 0; +} +#endif + +#endif // STB_IMAGE_WRITE_IMPLEMENTATION + +/* Revision history + 1.16 (2021-07-11) + make Deflate code emit uncompressed blocks when it would otherwise expand + support writing BMPs with alpha channel + 1.15 (2020-07-13) unknown + 1.14 (2020-02-02) updated JPEG writer to downsample chroma channels + 1.13 + 1.12 + 1.11 (2019-08-11) + + 1.10 (2019-02-07) + support utf8 filenames in Windows; fix warnings and platform ifdefs + 1.09 (2018-02-11) + fix typo in zlib quality API, improve STB_I_W_STATIC in C++ + 1.08 (2018-01-29) + add stbi__flip_vertically_on_write, external zlib, zlib quality, choose PNG filter + 1.07 (2017-07-24) + doc fix + 1.06 (2017-07-23) + writing JPEG (using Jon Olick's code) + 1.05 ??? + 1.04 (2017-03-03) + monochrome BMP expansion + 1.03 ??? + 1.02 (2016-04-02) + avoid allocating large structures on the stack + 1.01 (2016-01-16) + STBIW_REALLOC_SIZED: support allocators with no realloc support + avoid race-condition in crc initialization + minor compile issues + 1.00 (2015-09-14) + installable file IO function + 0.99 (2015-09-13) + warning fixes; TGA rle support + 0.98 (2015-04-08) + added STBIW_MALLOC, STBIW_ASSERT etc + 0.97 (2015-01-18) + fixed HDR asserts, rewrote HDR rle logic + 0.96 (2015-01-17) + add HDR output + fix monochrome BMP + 0.95 (2014-08-17) + add monochrome TGA output + 0.94 (2014-05-31) + rename private functions to avoid conflicts with stb_image.h + 0.93 (2014-05-27) + warning fixes + 0.92 (2010-08-01) + casts to unsigned char to fix warnings + 0.91 (2010-07-17) + first public release + 0.90 first internal release +*/ + +/* +------------------------------------------------------------------------------ +This software is available under 2 licenses -- choose whichever you prefer. +------------------------------------------------------------------------------ +ALTERNATIVE A - MIT License +Copyright (c) 2017 Sean Barrett +Permission is hereby granted, free of charge, to any person obtaining a copy of +this software and associated documentation files (the "Software"), to deal in +the Software without restriction, including without limitation the rights to +use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies +of the Software, and to permit persons to whom the Software is furnished to do +so, subject to the following conditions: +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. +------------------------------------------------------------------------------ +ALTERNATIVE B - Public Domain (www.unlicense.org) +This is free and unencumbered software released into the public domain. +Anyone is free to copy, modify, publish, use, compile, sell, or distribute this +software, either in source code form or as a compiled binary, for any purpose, +commercial or non-commercial, and by any means. +In jurisdictions that recognize copyright laws, the author or authors of this +software dedicate any and all copyright interest in the software to the public +domain. We make this dedication for the benefit of the public at large and to +the detriment of our heirs and successors. We intend this dedication to be an +overt act of relinquishment in perpetuity of all present and future rights to +this software under copyright law. +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN +ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION +WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. +------------------------------------------------------------------------------ +*/ diff --git a/cutter-800x480 b/cutter-800x480 new file mode 100755 index 0000000000000000000000000000000000000000..ba1ee7aef0ebfc29f0be1a547f59d3c5caa051b8 GIT binary patch literal 449052 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 +lq|&W!NU7{xsdj_Pp@^>jnx67_W8t)A{( z{0@n${+$>7lPou8$iF!M&Wirw%h!Kk#Ibx9|4xnman8yQ`A^iJ3Hnns z`k>>QrW1>aP8*=plSQYr>EqG!OVLyN@mYgAY*~X&WG&mly7rt`YWqLPXvRX;%-ZLi z&r@qr?a%k{u6?1EBeAVxeLaEi5Awc==V6{&uO{>N1mjq z0?W4u%Lq3Uzn4WAgnU`go_GL)oM3 z;nyox)%?C>IJ!^z{E2cI*{7>|dh71s3=o0$~)=cUX_N)I$zw3J(-zMjy z?DcnH)3>auJkZ}x>7N_&pY?_n;+}Nj*W4fKBvYCnW2{{tAb*nQjja21K0~zqB6TGB zFTQjg`nDzK_Ea^OX>L?M$5M0r82cietHOp{x&wUGn@hd3k_UoEGfOLtW0u-6V^?ri z@`X`xo{j8#jUgnUy#v1j*J0hQl@F;c>=8(BbRlJF4-+}SZ$1mWW9O|qR^=!EU*RRv zOa7kwWBwQYR0?5sE5Fq}MeLR9-v=3wjofpJj5WYHdw;Cv9>%mIzDl2p?vd@@9n-C( zA3C1NmrC2vICRT-K9u}XL%WP3 z^u>7*^~=}!PV;WK+SA33M*qQ|P26JgN_M+5eCGUr;3*!)dWrn_Xa5iO<#|_}_}eQyABd>m7sstd5NrGfHrcH``pTxqkh(V6Lt53 zTlI4j|`r zyfb)c4fxS|@e$rdGmwB^ry1E-Vjp}w&9t>b6QYm!7}m6QSM}^7vfl{oqL~{k+WZ`C zXN@}`UHVAiYLDPr8TPYV`6zAEewp+b>c^$j0sjy2I+J!T27ciqnO_&Me>C7yjzKwI zq#yn&aq^@6KX)2O4=~rp^Wc!RQBmy%U#C-kJAJ74sk}p{w3llTl31v!uxsMoV=m|8tDfEU*?C*B|N)Z8Ks8;jOo-J=jIJtOOS%W_`w$DZ9=&BN>Bnbqjz;DOlK80F=G=uti~Po_Uxc#h)9SgVZ1CMd7@ zl|5CX+#57dA2PZ>_*?3s4%XEJ(s8SA`8IzI4K|RMcVBD4IkbD*SMYa9+pOX}K{9(! zVCI20YNO!Jkt4__~)2V>%5%#Gp zX<64u-{MnMaZ9HWI)PU{TxM#YTJ|R3PIHYF;W~wH7wPu2j+ERXoJub$_$2#akJ6^G za4E2xhU;Gz`Ii+glYPvq>^TVcx+_dR$A;1Wd#A!*MiIVCm(cagEMUTWnPoL zhohYAW9QM6456ob8?{$rF>YdgSK!Byc|6CvflP<*-*dpV&V3}Z(fR>=t8DgJtEV&G zEa&BZ)Be5I(4qZ`bVM=aXW7dte=6%fFMYqo9z>COs910xs^j@$U@^gSqSWJET&VdR z)f}riu%4z7y{%~8g1^CMcE&QgqXmE3$W{rS*b(hZ((V*GOX>gQ1MuIedkuVuy0vdK zV3CeF_K;=2+@Anmi}na!WPqr1(&w#f>R^}$AhnfDJ8TX;0 zJ*BELF2>I3qu44LY@+k$sTX82kK1$=~Qm>I&9opn#$L5Pa$MWJIjEP)0m(X@-Lt~l$ zrp-7jhjfr?F`BtAf;$=*2b8iCozhX!pOqcW_~1-SCJkL;|CQO_uji@b)u&5|TaR2g zg}q+Zuh{HzmT{lt9q~%-2W!p<;h=u4+ca;SV6fJ}Mm7$u#EWjl$>MvLwrJfok-ANX z^KP_X`-(8yfznl`p>PLbAwlU*)|^2(G5cU(ItPK{U@*PERz|ol$r#sv)1Fo1+mkqh zD<4_#l2bIVkT3l2kS60+CP#UpuYGksAI~4ePodVgoGWl%>rZ6ZpUB+cX^(bObJ^R? z*{67>=qPcnRm3eyzu)@6)P$qU|Idl!x~fJ6TTLo@Y05B)TNd()m7 z!Ze(?e<5xG{kgbUENY%d~Z#~$iw?`_(3gh4&;N@Fwh^+wsvqY zTc`PD{8rI6%U*`Op#9w50EYqL{S4X{5DknME|5o!%$o4~e8!CGk?e1}ldIyV;)~*y z_cu0q_tN$?iI_KwZ>a$ z*#mHxYk}?Wp)=iqmEit5Y{98p^1}?j1vo@ob17duT=&~+%xNtr_(Z2#3u+CBoijRr zo`S*c9mUz1Hu3H{9>kNho{?-?AII{?uksB3bz*Ps^G{<}HZa1s>0wh1&d;I^@tj#* zT;dLU>e1berrJ}cOnmWkw#h#rII`%x2^V5>U3h?bpE>N~Mc2QufZUm9f1W(T<3!+? z;DMtY^J=LV8yD6e<(l7J&A;*|I*pJc$VcuRg8b{sr{?HB=J_IXa-p`bKQ#+Z!J}}v zJ?it-W)u3G-Xl$qi1ytOw%dUzPW>UwnOgmVqh7yk1+XjAToMc(CLL|+r0nhPv3A@} zI~LFmCx_gK9pGSzz_|_S&^ri%{jb4YAbufX5#bI(kucx+8|}&UhJJ)^Db?Dwz?0q| z8w$cILLXr*VFO_k!6mS!ez)yw;lJAn!wuwA?#mV50k_c@C{|nGn-+P-Fa|WnEpPK- z*{te}%B$p4ze86(G|;?|yx^=NSdl@S;SupU8QzQH7gJ;N4d{}6B%Mim;8XA+Y^LC6 zFS?&vS1}9FJY%s78kUdG4&$C+4)mru09k{%$4JfbHV0iJD4%lfMh=s|3h_^RQS(j)djRydn0qn8}3V%+-7)kYHd^8o9p3!mGr~W z(Zusb?+fUAtX!9uu)}p^r2)8Zcu_n!=YNhou?%#Fo?tC=^(@+NmANmek9#j%@C6+u zHCMwgo1CT0J6AKGV0(t$#hvg^-gk>XX&s-U+`7HM6_jtmEAVB)IymQRZ&p5dO#6~* zQy(^_=$?h2f5F$q92dP(iN1htjS@74&Po5Y9!NRFXI%d(&RHb1C&<`_|Lm0QV-v7E z#XKOMDSWAq#NXA1yyyX3F5q7b9Srh(up{JK+}R1=N&v5s*#OVt?oYcX@|_NkVT~r9 zv@jZ{T@}{49{uA%7d$ucTnruLchQ%OKiQ0?iI*QD(TZroA#@PN5i*4Fgb4(}CqCWo zFoyZIve1hMuPM}Mr4bqu?-#H59PO>cVD_!7ofn`l(B%xooR#Pauda+!e>tLW>}1>} z-v86S(i$}dZbb*kqLp8~Q0pu8({EW*-f43N0X*0HXcm2>`*Q1jGKV_VC-^8n%3jWZ z`ZU%j+hemT+j-^JdyGDkz9P;)(?+%h{>6fy_{Dr<^MNm9$^wt3k*($pa6~_8JY2-T zgZRnQco)CdnAdt;Wn(&D}e^ zOKxeHr}V4Xw_9G-ysbLdH<{jt4^qCHt4PbXP58xwZ>)*H=+?ITUzVG$K~JD&mZBc+uu4tQiZZ!wlC zabQPQ3h4$P6!?s6@YW{`4?Z6HjXdW?&S5fcCcpmiYIttNWep20#0uo49JRfN^EdNH z!OJM`n^Av?wi1S0$r0~HaeIUZ#xHBNfsIidV=u1qEYkix<+PJtywB*6n9k)v5IPsJva&!8)$0x|w6cvv5wXH~1%L(#eVE)Xu?)=Qfg7`ybj9 zF`O5fH&qt*vY;cNKf<$cn_7;Yg}Y33px?i1NFB^A$Vt7y*C}7}s?KMMR=%(O11sl0 z##4PChZjhGWlM*;mIKGKQMvKRlD6W|e-Y7ewuN8Y;)M}%2ofFcB`M2F4rE) zAwIMl_7}2W@CN_iMkYu)oy@;8Dwj}!;82-c;O(lz0LBf_v-qp@K+;=<`VgM_FWFx4 z+EY?L{L8N?KMx$d@6rO?Gz~@(x}8&b zmU#8yH-M3`jol)0K-kLi`KcdGWT&)vOO2A6elwm6-pb z8>L@Q`h@vxxc1UqPCxByEG+Xx<9~urUynZTt%y&H1}47_-#SoRBLTA?t|7qF9O@70 zmvYtL3E*YV;?VkJ$`hUwCH4=InYgoyvs(Bwu)}#Sgh4vE2iZ5uS=u|{4tCe^^xrU- zgn3b_hWbSGP6P9SX#z0K7fjS89rf{WWl3``X+mEs{8u{o-+=C)RhxD9-yF4@_Ok7~ zuW`f*mB+k|Tt}nvCdHN^fYNYj!1t4orL3>|eIk*MRD;+L{m<8T?D9DZ3iY z<)0v(e0ol&EvlRP28KC|AL7K%uN5!v%T=!>o!WjG>B`JcKLzdstQqQf`Xc$@kA5Ow zqy6^$bHQo3=YrGGXZ{zkg>(V#1+(ZSULqa!8_;=*Jj#29@f^BPU?9C<8b@8y$;bw8 z8g)KOopY&Ea0-tzh*$ctq*Ho_r_Qc!BVGLr;^m}y19|38grVnbrGwJklZ#mHiWgp#7wJ{Qn%F zUx>2_+FMh+N&5dHK22OBG}=j-%ukH{nqP6vA1=0S?gfM|i>^G4cR!Xd_P1#5l`Hl) z=F0s>mi`Bi&#_nWGUdXbQwzy+3+*qEKa}smQxmvpiN>^K8tidWjmAOzN0BGD=VXU` z6J}EnePiT3znqyQdhyYR-mmd=^Y3c>Q~V!2=z#JmZB6gFHn{p1wg2eo+7eN@iTs|E z^?dnjy5dp~Jqd#*9R2s#kHB*Oqps(zjy{H@SjA^5r} za~x&%s7#G5%4K~r@RY;(rJV46TeUzM*^$WpK;_;*xlC3e4`trnm*xN8QO2~Wj9*9f zUq-ql=`=TwCe29FjEmA>`xnA^Wdx)A6rihWdrNZ*>5@^pL!|SFixc;!Q)@6{M-=8g zm%MQY{~g%qnAC%wmV1rGcic6m<91Q+{aeZV7W+8mDDTtcje+~lGQ62OH%)dzz2v27 z>AZK<5(96FQUcM zSho&Sn}8$D{q#xXUHy~JF+u-kn>nN7ywop#f*+g>TDx>Gb+clu?wKwD<~`Uqv522$@J$N#6}-d&kFhIFQLdDSdW3-=MU4`E`%s`Xd*JH;i}e z_m~&3JL0U9&Mj*{qP4FzxUcMZA0UnPTw4mQp^cQz32`rGa4-MP=3fVJc2F<0;h#v~ zSo|N3kFfiYor_w#@EymWm{aZv?ln!XmFHsGlD2!W3+oAffDCaW=ahv16EnNfgZ2b# z!B?Lx{{-j|BAsARTfNokQA|9s-`{P=@0^AbdAw7FW%T`@mDk2D{I5 zEA37Xwr)K^4ERo@KX2tOgrRk|QYYKJDTg%dmkj6(*%87Xg65OC%p3Egd1OCv3wU2d z=q79+xP&)|FQC8P!@KsypX9lNu=Y}RGzdL}4TM#MK7!^UTRmNKnC|M3r=KUD zPWqFShBKDZ7b5dk*1-3~3(#-vyERI4LRco_JbDg`o{iBn!PCw>?RQYd#lSQHx%*4x z)qae8GdSoiSuZljUhV%q@#xv^%Y*qJTA_CY0l$UioN{RQw+{ODjW&G}H$+(Ft! zBS?$g2Xp3t;CNo^?g*d%&b$1@Dt+O4j_qtD=@AEF4$gfTexWua^tL>I-&ii*%My|G|c$jycz2SU%+a2H;UJ%x^m3XCn zFnYSt^BX)Lr(N~FSfTL)eDL%XYw3Z7$aEhT4j9M6!DGbbk>f5Tu5PCyTK!Ihn-x*H zJ<)Sn^z7!jgfw;7*8;oxWeaigUow{RkN((pdMLwuB z(r3bNALq@Ce6Bj2{7N_U-?`cYU$5s3so+^r z?0w2`z1^(A4v8*)5C4|^fnhuo((-ThZFGk3Z}7f=a&(at{mUZ_$3i953}Cf6VkpeuT1F&mpfgpJ*GgY|J%{F`SX8*RzLu;xhu(kt|b( zQLCdVs>94sN2w%0qZ%vI@`L=(l-Vrgzj`e9H!9v?uxMlRh(Y^KD8) zoMg~1>c4^Ca%9Cu^xxVi(DzGxYwut*?@vbmCPd#qGiJUxm4BZAH?sB7+Jg8Ofj!*Y=@ibuu?>GYMuXG+B7Gp7 zHM(vko9pGj+A`DsH*g^O`#k>>1!%0OHGzDzTMclCHy^(k6+6Unc;u&#Ac56@fOJ67(8>N2-`3PA`{G+1t zqM`+j#Z{~)#hY3k?x_m)dQW}o67Of&8mfIJymU!siD%&dB#v)2`YmiP`;nn+IF+aN zO*4dXgigXl!UV#2!V}aJ+T25vjrbCO5ZO(%g74U>&Z#gCcWY03nCtFB{M~JrdiS0i z@t_w3ujntMygb2|{FCH3W1(@2eFAF~_Q^DUM{rJuwrc!72+oWh(}Q6pA3R;{5AL4M zn7pg{PV;oy!x&>MHx#%S<>3GM&qH}D4fW)oVCY;?+os=OVVGVYXyhmUm6426GkRFl;~rhs>m9| z)qS?cKxo6JF+kmkOl?e9xx0>y2hyW&d$?UN0*B7opGv<;?l%hPeu>w4ssALNfCb# z9;vv_sIIBxSx!2QEAiq>B6y@v5WPx|s&;EnBKbO!C!jJm@Hqxq1aoeqAkdHO? zZW~*db)J->wGV>r1}uBEB!BZ*DSO$ zlYhE%;A^yFL0vYboga$YdGy)Aqf`0+CH~9*NhrJW|2+PWBmVQm>wK2t#}W4n(#zNL zr-|Sq!*1nN!ehod#=Pb-BUQ%sEeUQeywR-`o77hBg3EUYF7J{-wLVh+ zxs=g4o;4`zsWFtF04FJj^#!s`=bkk|c=i@v^52YU8#>qixm~!Sx`cgq6W@1_l-E?| zV;`7nT;M&DSp$qkZ{%>TP2tm|=^n5BsTr(a(FM>a7vA7j&KX{;7IW;|GcWBhepV4& zNv8%ADu~dhd_w_!G;m12_vU5i{3>Ci<6#}ZoKg7}FzcK7g?W%Ufp1ISZteRUe2aI& z1FG5=wZhPK7+b}|k2Yhi8X7)z_#yOq60j^zehwR&3+a>ZYyOc6XCELwo3lWTZnefm3a21y;2S+tNVaEn)j|{xaGY z2e&uy)SCVWJoP^xttsd7?G%<)?QEo-z5ec;^A3WMrDta$Q-;eVxpT8kI`C9zpas6d{LrGWEYA8;3#^x$FMeS67TnA1T zQr{r92MeS6MALcV{+qaP-xC@XO(!X%kvj@d0fK^@e>vmT^s?3OR+#^@$V=dIIPGtO z#!bf$#y9(lqX_rfvL8QJ&5$!7EcH`wy0fO^eg*omhrn zfFF(R;VLJzwO)FGVZV5RX;+bfLb;E#0j~uoWM9J<-D`n0waXih4e#K@cKnc^S~c78 ze?mHB^wcWm=e@LPZ8Se`qfMgcM*60E1p6uYy}lKljoS7A>4yc8bM1|oV|Mt=2C*muNJRwyIQ z*as}M-v+PDL!NwdF_(m6iSojGCGMd;+V>QnSV)|~TxmJn84SMuj(*1XIC3g?T;iu2 zyan*R`(rhmb>>L=0J{lfi2M5t)<@%)cx%dK@Ky9!$5)E6y!xtw+}h?CBh^1`Cx$kA z(|vqlq~u@qR_d?&7Mn%=I+wkGxXuWsD~Su|f8y$UpjQz0UXycL%=_YHo0#W&2)bWl zzTV+++m_>Vm3Q4qG>hkW!c>Cx6*Lc~xgQ0dNE^75HxHjKg0lkmE(4=WKkLpC$qOHX zMkW8nbGn;oc4+4;9{+*p9OE5hwu~xeUK$Z|)}D-P(LCw{T{h2nDf9FQ^;0+xz^{tX zfaHYRep1sZ%2sItWoT|XUA%@T{5Ad&>R--UsIk1nYp32-yL5lbChC?A{}`5S(|w0D zal@{_U#^Hv_xwaI?*q{aD+?A+6ReiA?~2!a?JJgdmYZN zBeQPff4!~RUy~hzOI#y)@Pil9Nj-hhrqBDZpK!rVvCDf8zJwbKOFa3#TRw^Nhn%rZ zatBMi*xj#tShBoZl8dox!8RgwKX)o>zr9p^x*{GYJ&ka?UTJJEyl>=3#K)%Rt5N$N zqkRu)3>>`72=8=yndhqn-76wmxC0u{ogz9jA-mvLZq+{2nttoe&4=~>V?SXHp?^kK zAX{MB1&)r=8V+ldFgkZ0;_Hu3Q|0K`-+1_9e;U#R9yMe_hxs`86aD=ie zeP77nmo3vb%F3)sV85?Do@UVmy2zA~$Bw>mFLiAQ?&bbnqfdNej(;EaD@-hhn!qu% z9?spG8?}enNLz;iXDj}_bzg+;u9ZyIWVn@s(Oe;Xg?94bagS^!NpE8R3!XIhSD&=8 zhb26L++QN-ES&68w-Z*ezS~1N!kv5(mX$y2Rwj!6sXJrS&b<1&w|X;Y;PkwcJc3Q- zLz^Kjy!DLqrEaB6Svq54{IoGVYtv5t`}ikXN^p)5X(ok?iyTyw4L-*|(UQ*6Y-8Mu z7SsmKB{e$ZyjfK5JnF5(D%zM3(S~eC^*wROx9)3D{&y0tUtFMbgE}wQ70Bnf(hvQ= zDEdEj$bb2OekZb}QyXKz7z1XrP@|{m;KwNEs>rR(W#Box%4;lOGfka3OVbLSSOw@R z2foYb&IqHy_ez~3&E~2thV*cfC$93*tBs0h^0sWv-l^L`0cV|14sDo9m_Qg$=p;-ebQI+S0ojE6A4P9^AEtXFf2y;Oxytt`i#@da zhw;8sy4rJPuaT?B$6+gQA|qF3lcs~Z)lV-A8nxgyC{FhM{9L4F4{UGS>p%PC7+UJhJB8V zd%o)D$?%!!zr~(GrilIr-tkBF5lnNIe~7&u-4({YOrHE{jYa0gPZ|3O8&5-5bC%X- z7ITf6;vV~gJI1`-JzsVgG1|Wz9O@m}a)o7VMD}C9Q?$cecY@l=w`HtE2a2xB0iW2| ztDVpOqL$`+z@TsWwS0uOBU23={s?z>VO!vxQ=5y#D~`uO2k?sjy-fZSz~`&9OXYBi zg}PUSeYcr++1yxse^Gl`_{);*<^tZ8_743=-jrO){z|hAoFM6b>9`R+(ADSs&EQgL zZzXL5-{NOe4QMcC?4ytU9{StF@5jfY`aiAu8Ka+$zHiibF<1Re^!+K-Nj~Z6H&cdT z-%mTH`?G0>mDT$!e+KUp!I$Kgn?*OqNj_sQ9%nvS_664TU+nUdd1%7~FQ3LX0~{MX zWlQ`xZJU_oyd^MqWI6Xiebd0H%7yOZsO z=Vp2n>CB3R`e`od(!~|<$&G=0n@Jy<%x;AK@#hQP?g;Z-<>x75ewK3s1#{xenOqb3a{JS)GvY4GQF4=mHD+i3wTYW3C+ye#AdA zl$p5>U%Fl|zNf!`J0sOT* z-#;>;Oqj*HMnlh8R0qVRMJ};wz}V-7womwHW{ zOXB<}x;XSh)Y+)AD0h4YyH;S8jjHbZ)Lz+m;G9MLG~(msRi5C(=fC$KQGV^U#!Fi3 zZVV7^kIv7tmtFu5*>67_jZx_#Z)1!oKjx!{*4_e71uu(=*v%VmWg7Q7YAmZP`RVjd zn-Q!AH@e48c#(bv`;L7kW1tiGW~2M9^N05WLp(jpAE|rS=WGeq-n7*FX3niF%`7E9 z=kI|>>y%E`fgRb+=uug#=h=g%-uF^(Sbn(A(HZiqR^sC9qwD`D-gUm)%y-hBPTl7g z^5G8RTY;hc!7ahhzkqMXGye7*QJ?3|mVXoAfak$yW^+%7agpfE%DQpp`h>&(8f@rM zsrwJe%d!i^Hz2%6cdm2>*e14F;6VT7zpw!~{(wFl9#fmAW7urmRO7+dfe)pV4DmK) zy+JygKGfdtF8V_IuwSALCG{VDv7LEda>zTRQ=Gp4hxb?Ut@Y;VTY?8@r`B+q2Nkcr zWSxCTe5shN_2VJQ`0(Im(5hh9{ilx^-LiMzr#d<*U;2CI0KXHseBSS%{1uelcM@wQ z2l}_W`W3&>W&Z~{O6OMwb$*-Cd`KJ8)S-5WXIi0s;F{pH5U-r?#uha6(T9D5iG4$w zG`B+o@*~$0(%^JocVN(t$|7_zU-e!KZZE$UFy{_PcP<@-bm@|dxn=<#J3I87Yw|vv zcbzAW@t)>AZtPA#6X2qDU&JEHQMsWXOv*w=gO7R5Dl@bvpj>d#Hm+D3SHr2}4(yGu z5N-{8F>C*TcD;dLFPk-3^0+k^vQ8?kF+!TJu;)DydKL|RmG~^Unh4L)xJ%|%1lio? zy=k7pQNk8)UBj3o(0_fFg|Ap}2Yr+z1Lbqo)4`w4nEz4jrc87)(pgum>~gPx{-kfT zr{Tvup5^Bc#|`$P(~XrYha(50BVIChSY^o@$;#^VIB!^A(MuNb5m$hZue~NPy5|JO z!m9(rnoFJBG1SMtZ*g}JFYE?>bo=0ibvkx&8-st?t38sHtS#s_-ZdABj+2>{!4(=4 zz;PY)A-l`8anE7Rp9ZuP>XYDqR#|!_(w8MuZw}`Q@np>lcD6Ur+D~)Jia!sg#N%|P zr4^gwUw!@-^8Z)wIT5zBwn&^+?l0yAM0gg-S9cX{}cOv zzvKT}@;ynupAN~#eT4&e5WkK1pA3mVmH7F@?;)k=WNBR4SPZIxmzVpNY8>z$|g_Rxzd|EnXo|1Zk_B=OG> ze?8wvh@TkY?s4K}e|$CZ2Z*n?r$oGbQT{c)bR~0__|gZ%F*n`+ljaEO+t2>i{t5vd zVtst=$o5tK)$6M~S?;UE4Ce76{7QCBzanob_afuG#;+dbz0R+8@GgG!xUt);@vB+> zsmPR#)b;N8wi(xq?O2(o@xtLN?`B*x?=1EjD~rpC$~{HS9u@HMlI!upu{>)w<2lE8 zhPN?}W4YQ`jsuI%Pd7<^Fz`{fXYlCvz=3#V85rLz)2820HZq#p`lRuVN~!!}CET|x z&qc3QDT3R<5Dk?FQq7xNYbRrBj?ieH(}?5x0rB zO~ieixFQ=Im&}@$oBD}ME}!{{84G7j?Y#W*$)BDwYtq!qrGL^sZuzcwsO$aq!w)|^ zVRhWtk3Of&)8pC6Q~SRiJm28^ZNd)T?;va?NGG$2r%jkc*v|ha39ER&h0sI&D+sFy z&+t7BE|FOgH_qpo<0<{uVdCWn^aQ94) zcB22${Gt0gHGj;?oRVmD`bMQ4ba>9{h$qdE?@VMN_JVTVBNL&Y0i*5n;MPLc7yd1L zg~W`5f#z+?m=egJs(3ScuW;VGfwan>rynV!YCtO~`a<(Vq5zN0bB3&s{mnApF80jO zsLI=xgCE=MOCje5WkIa8N3z>M44Bd-f9O%Ju@caS&Mibxi z!-5RpL*tcy=6sp{eUf^VR(0rkZuC5dr_v40H(C44nOs%pSG!LzQu3uH`ra6e;b#CI z$-YS;&$)0HJt=h4QGllNT8~4Ef)iRa`f6}nd^@z=D6)1d{t_EF#t8O}Cif=m{cYYg z*J6Vfeq--cc|L;qJB_Tbpk>zi45e#)3~p0#X#RbyH92qHCcWE_KF2&1>8M(b&A~aM zrK?+$u|c4(ayB+P;x7m zLI17nKNPZRW6sB}bVb3S{Wk3d0seFetb?@4rlnC-r!kuc&g{Uuc;nzPZ_mxXZh*; zlHlS-W|Uda0*-e2Y2 zqTQm2x7ZKRes)-2)W_qXFWIlP)7E=s6LDNx_3JYFRp(3oj(*bjxB1rdf#|sH9cu5%(L_|RDd=Fzq%(2MLSudTHi7*v1B=zbT5?d94Thg0Mm7g&A{udA(( zRwi_(#Hxu~g7cu0J!d2D@Lw|03#2)oPi$-25`0Yb17En6`Zti?fDS$dKKeFtpXq+a z^d0DyzD-z3_#FS)Up7fI%w5`_pnZ+SrTyvr(*BMA3BLm7Cv5l$@RjUt`jW9q8l400 zqD&hc$`KfO?c|_G+%4x$qrFvV>X3v9kt(DE#LDgWfWSg8_84Pn*_BR$+_Csg= zNy@%3VXSzYJ6GNwAnYTg2;9B$_Gby#60Sf;ZLjSA#Km3k^_Bezf<+ikND~Y~jG#VO zy3YZ>_{Ji5-X6;3w!rY*=W`9f=6HVGdA9!*{sU)a+x=TcX>R>k9Gh73AMtB>-;*#> zJ-}hu$~)cfrYw{H3)_gp?$pd2D`O%weuy+Tk>*vNve!3Q10|pf(Y)ScA+5~v-!}|? zfNWqnYl0YaKnvf_0C$^3Fn*RYRQ_m}rGL>ED zA>vsaU<`3C9zTr#HQs>UxqN91T~=b9mG+1ml?nZd%=INh%tr^IbSk%D9_`^=o_MkL zJ;l#L{#SyRF{h6!v8Ten8c&?-|1f48dh>|()xHs&hMXaNLks0J^)2(-3q13yJmG$S zlD!UaHI;p!nB?xv(}#z_v(P9Y=B9p!a!!cqyuDs0@c(D18-ivj8=0w1WAUw%v7d?JRVVEW;}xemg+mMb z=yBj>H1D#pZa^Qdy2pXz27K?x23T`kLwObNy}`GDPxHzOaL@vel+N*SWFzrtm*?B) z%}#(GkDxb8@J}@PUE*gzhwN`u*oO#t=B0dVpW^E1y8+xyLoY76xtM?28<9_ry$!|+ z#Z4woG*z)`B$SUZ=|5y5lnkbieX|D?lLJ)?*GyFU8IB~jtO6Zoe#YAoK`$b9Lj zPjz2C@SH(NPxBAS1N80elPUb?jGaL^l z`f(IcFVPRuuS-Y$TmHAYwZ2pty36iX%66zvc{Z7*x7b$N+8Llwmje}wmz0y^zdjkb_QLmL_KJDo~4bnQ~T>B#_by|@Bzis4+iCojMA(B zE{fhYUcN=zE5h;ebYPM$IV4?XNV-j=%aTrVUW|0_@U8k(-swZqttS3L(s7PNx_WeJ zSB3tL!m*uyNjlb0E>fEhG555B??%cn^2g*f`F46h_bL1h1Eg{DvbNK&C8I6m3yj0)K(B?J%D(qlY)>O(WLf`)jIpj{BpXbb%na)?u0yeOm z*IL$48%GzBPJ0lR(}Qg+`s2(@=%7XyEScNne`^mqtHE1pXZq`W!=>H{z?8N(_KRje zn2@YI!@nSW&h*dcc`>v$EVHt|h5Rk(!s3~Y{dSzW5S+%&^WsVJC((Q1Tdv>oH8+bk zSN89}LGQ>1dS_qiW#*RQyldPjeiJ$j{VSvYL~p@-%RfRx`Pu%7$nH;8b>Ha5ew~|p z2YQu$Om(Z?KQ>}7lXWXj4!?t8I@x{A^cioVPTis}br;d1r)XQ|-tgbS=wFujEPaR{LF8d6EmAQs|24IwcI=O z-o@yKHn9d-T-A9mi~0>)VMFkZFP-X%ZohHcSno6ZU);Rh+cdx3YxUq0N=w{lK7t;P z^wM33uV}m!Y0gB9rWY0opo#I z7xfd+aNU+$Hms`WVPw0nQHO`V>Qesqp}SHUnj2+TJu^3X!lE^Cqe$o>BnhpZhLI+? zzr-$$#rW1=b0!!2w7HiVMxL;hu#IqlxE7wRggpe=v`JrO7f0q3QJkpj7)r~H;yZT4XothtwmBEkSM(>3FK=u<^*)m4& zAK_j6EL!8y?=>AmD1*Mc?$ep6Wd!=UsQ)v4oq>yG+((Q8I*$C>U^g_;;2@J`v<77@ z101f-5;6boK|UWEuXKC$kG0a*hH)>1?pB~|-E~v*V?+6NSGA9ClRD%hL3RmhpJd)~ z*o0}{Wj=Yu>or!JkiV0*_Q0>IBtsb<`JeRS{lp*H!91;Xu)%mZje9D((0}I8UG2o~ zVlH|t(TaHSb;Jw4(Ynhbiw&vtuUXf>4f-mQ{=1~#Px?9!y^{YMh~GxMHzfXY;^(60 zXwUZs>;4D*c!{$B_yW;6s@8_D%w{X5#yV4 zpA4^Se0bLG*1q1otOxe)PrzRs@fZA1x~qeO@Br~f@pQ@e@gjP{95x`?-fEus`Gi{t z3kXhM?d%)=D#P<3hk-TiSm8V>xkNhjPUdKbJ!xp}VbRE)@P`_GE(_kzyxVgADV%#d z3HUbl|Jx^xqt5PAuopWi2L)*{~__BEdxCMq|980Kaw)z=-opZ{s) zfft*=VrzYGTkr#d(H&qr*Jjdg$p*p;XW-hpEcA77&h*$je8H4}98dJrB84ZOz;0y=ZTo_Od2T>CE}%Z4V&+WY4AJ203bqu~;$KK$5oW5J)pa*M@RpQxK`%T)o znD@!t386L*ZEuXRrS|@sc0C0h>Ys2a9DY%-R8$W*V0|Mz>wHg0SK#z<;1NDmrt0`> z<)WLvXglSG@-DiEbJZ5gQyHvPQ}fHThqlz}QCn)|=?-1>QQV?b+&pP>(>zm~SB&xND7v$y{*@J*fAs9ZFiI!)z; zPp>Cm@)>wcgcsIn=&owGzw9`?vGX=k1inDA)L^;a>UYYzX^ zf73T*=1ux4*|#as{+3~cG(aC5vvo5JWMbg|*8gVh{Nt>us{ViOubE*O;39((qFe!O zv?;DO+Nh&mWmHniE1(kc*cCNVsYWH!!n`m8B7%(qiVAX7Of#zSM`eb35l|xZq5MtM zbM8Hy27#w2Elth&zCZiy1DAQM$DY^skMlZb|5|&kwbx#I@3q(72l?-OlW`dR(Z6_i zxA_+Z^5aoXWBF^$8}zTy7mUs*dQtwxpf$DTXy5)In4{s_=e^1NSNV6De`aO986N~| zzU?;LX2WX<*D!~Qu=gKz2A5s~u535c@B{cLd*jbkzJUBer{F(EST-DecPT9!#J{NT zeDM7%zC+v3gNlbQ%D~IY>kS)i|<^4b&d_+t~B&Q8*#EBt^5Z* zOx!_pA8-DNj~UHVo;BfG<-xQ|D}1(x=9afx{vpDcp}RHS!xvBYF^D(1 zmp#(?`EnvZ&t*Pq^tzAUtAdtSna|z8{ezLt+2!JxK-N{a_U)R$LwR&Ji_TH+BCqZk z7q6DEbab5HY#8Iu7PYcX!l7$J3L6V z(OG+z4`rgAh0;^Nmt3BM4Oe9~Z{1AU zpAo;Dx6UdzcLu(O;oQgUgVHD9^A_2?C3|(5%Uq{$Sy^{$FTrN2{*2$aD_yMnZ{%~p z`9qUGjx5F5JBXz&cJZa@c8V`Ce|xqYAHZ$eQWI8z97{gpHW4pf(&vRhm+X|@?kbdi_b%f>9$s~_2Fu=9 zmb}nLr9QehCxv|^A{#MlY4ouEWh*<`7IX+6D<1R=;w)S&!udJbRS)5fPFX{{t;M%? zi{wYP+9#5ya8E&CtHrl=$L5oU`$Ms3ZXG@xKMTs@WAzL0*iL*s@w-L`>xT1)Qy*z# zotUOSsNXfhuhVDpZq{CVgXHF}4u;E_0JDHOwXC^V}+# zMJGkm>N7e&I-zvS`#rT|!7p08**$I3g7UKBG9w@Ax9x|tyP0R1I~+pVF#I-<-&Ms~ z{oVV9!cFh+PmHp7l9FHlGxZ{lV)4bM8g__P1js1*WN$&~X3-9%8*#%y*HM9c%7sjqUn?2A){#mTizX<*6Yip4i$ym}E z>@m-e#bpCVrZwI)6to_m>;LVYo-IT2%YEsczSt*noeRq?=qa^><~ceKqdAP^DAuO4 zSFh3ECU^`0wW~O?xuJji2DqZI?V(8Hy1GDf>FjxLA_NxEOS}9y7 zeboH=Ps|6elRby|-AB#s<}oMK++BO46ZtN(_kR>JGOTg$UfWCH_Ym=o#McmC-9=wx zKKX+1My_OU%F)K*xv?|Nm@-*+=4?@%{74d%kxuTD;TzuS?yb-3|90?1|KQb`lp3ei z+_|N`C%xR4{4vUzyS30cTBB?2$3IYq&Os+=EqX6=S=m}72mk$H&&I@&v`>*b3VX+Z zX!12*bylSUx%fr*-+lnlZo?t-sYgB^UJ7M>zv2dT*gkqS@Ej+omnaqj`<`VNb61+22Sf zlZVUFYo$||D-Lwr!XV~VM)%~=$q8pabQgWl+1m%7rM&5b?3+|M7leKA$*Sf;Y0Qo6 z9TmP}`XTo2jhXy%AK#fB+5>dDIP(b(fBSjQ&fUkZ@V^7UCmxOtgx4wBMDx=>k@hli z-z06_C)nqKe%*=rWyT%-oAN(+hj$ni_^v@uXpdF0iL4auYc2AWD@_-F2u}ui;Nsk z8)&X5y;N)T(ip~^cC#1SWZVD!cYC%>=giFfTW@r$^X#QNuQT4U-vHl6)|^{90$u!v zDXb0I_y5L!1pAC1vaflSzB3w=gMH3x$kRZcD#d46O9AI~;*_p7c5GSot?9%ku|sw_ z8%mFo@5PFIf3x4pHw42(@DZavZ^ok#KU%_VZYqQ2?N?+>l25W8ZnJM?U z{aJHQFU@vxrP=+bmh#xq^6b}X{oS~3ft!lwu@TJXEt>&zxplOKv)*@#{GYYAjR4t@ zT}Ade?zK4X0LI(g=ji_zayL6?WTX=%li!90&QUNQ$$CG2H}L>PwH5ubZlpA4}3 z9)DtvU1P@g3G(^6D@B?6D#|1&b13>gl(W0}-o=@jr>Ju)b%wh80_qI&)Wg#ON%q0H z10%v*g7I+?^S#-c?~Pzg8bTc@-m2?H>N*IRtmlot+W?)9Xe)RpA=@3mzn^-X=d>4v zO|dw;`xxS<6R&Y%*I@4dQ9Auh>7z+|$Y;+Jn*#Und1IJcZd$*>uOqCr1NP7@u^c|% z2~(c93El<74Poq5oqb802FytMc9V7nX%1tV_9}<9F(08n)-fKKJXj*QSF#&}!1Rve!vp@M7dM zeht*6v0eL-!tY?=kkOqQ_D(!>tNCXwa=?0Ji&>MgS1DV7)(>%G z@yT)9Ru~@ihd-e`SiE_Hv|(+_{iURvH0(9Py?=Uc_Z|2+jf=xm&95n^f2Tb_e$}P5 zc_VxK!8}KE>T^qXkTzCuGV)oQsI_u!^Tlc}*OTm4;ZwF5+10-}&-z=>{9)^8U+Z_a z>0Qk|UH(b|2b>UF_Wpr)UPhInp%_Phl+DqHzLRPHUNK_LQZ!#h--yl;F=vd;A&l zXfNH+3$5BmZzL^8nu)i3t4rV5Js7^#$MAWij8joY^WslXraHqpdG_xN8qDu&ztPtKlf_+?MJq|?MJc(X>8|ii`#s?pFl3~)%UBJm#!Je8kX?0 z_!-My(Uin*Ew#|cPYk(cKH7%QA?+!Dd-?fRr_trmyNdZsU(z(k()?@dNl zja`N|Ic*hlw0xno0XkO;8^_XK%BTBwheKZ{XJ-1RU+YeT zpX`;A(G+{bGbullGdar3Jvyde%kLvXJ8K+?@*bBwxvX`q;uKC3?x4Of+)22zBD{@u za_|FHdjHh(-OT%UXpZtaW7t-{wT@8Vt)lNPM^>e$zeW5y_VuHwySrOy&)J8}cEh#k zYX0Y_HR%(Ao4nO$FR)z1e=C#+@k(c)TOKnB>- zbIqjdyljhPn0eYctmCCmWhXwB_Fi^cu)nW;{LSp=H}hP~qyM?+E~9@ifI2-loUT3l zal~)qd7UTp2Y6fMcwXnx-8i}@Np~Y<=EU~+5xB(5=OFYikWWF8XSL#i^#sq`Jo00> z<^abzm1pLBq)|Qs_$J7Q-~-ZG8ymle46=9`_g_gru9Ch_FY+}vUG(S(SNcHuwUs&A zJ@(G3d8`NWY3%s$e6Rf6+^zl~85VEUcjeP4zF^a+Z6;oOl1_G+84Gr~!~NUWAL^=2 z`)3%-%>KnhZ_b2v7u{1U-e2||`T+6uhYa@@{p^#j+W4~TZ#4Vil39&kQ_+7zNNni`ORYQ_}=0Emh0Qgsc8k>leME3xc6~) zWIHydYV47Zr(Y_?hIExsmbILj#J+%?o;eKqzts4}4tFMNoI+{1fATPRQ@q8!JrZ$u zJvYVQZzTJ>Me=dSoceq%wh7KycCSv(;l7@`yLEQDi?Kkq7Tr(9d76#lZwmST9dfL1 z&7bepTo~DewkHR0=UOIOD2<2C{=}i+wJw|2N6&u#6Vn`7OQUZVEU8nRY=JHhgdGfA~SC9TF8q<>EijWq=I(XPc<`qIrm zP0uOe2f4$+K6r5qcm>zE0~*4&e9OJR-?jpa|gEiE33ePy`)&0*Cc@N2B2eR$@DU0JSWMDvncD<@l`jlx`?qx@& zoSf_Jf2mvAPCc^M$8tA!XYik8?lrV#8+=W*GRMEWJDTUNDtK}bJc;DqHF$|8%ZKB^&)xXuOVE1 z1Pti(9A~b(?c(9s?r!eZp0&ovY;LbE(L4ZO=b`cS?0q8VKfo5#lX1!~@UHQPGfoBL zRs>#Z+&BZc=>)v&HGXmT?)=uHhx@IUs88I{ojY`IpQvK&nLb!$3f`3U!~H3~WdFu) zja!<-^ym3FJ9JZI9)E|cXDfZCon71}F-ioda zzKIdSn#-zBW4FYQWiI`muo;i%cE_(;3tg`qL%o3zLYS zPW-%z_@2MA7VRpOR4xGxTYiG?D*2|8Zx#8JruALyE&Qd3pF;dY#E0v?fBc2M%DPB% zyqZqdOYG6S@Hggc<8Cf*|K4!_3Hqpm>|`Q~w^uXw+Axdpo$*?G2hUxIZbgRKn?$zG zHFt?Uw~>B!@Eui@kZ-6BC8|eTW+Dh$o^E5noy3g*JAwl zxZ8<6HuT(h`3$jd!9SHU+@*&d{I+`(s?)T6c%1i_RfU*vixqfmIc4kVYHdz!hB8CRhuiw*JOw4XB^v+B5n!wrkLxh zU4Bd45Qlpfl03xe-r((zYu^{&(k<0yj@QIoPjkMvAZ`KkzuhN)`ppgS+=b^6_#35; zSYC3#m<1fxzDAPFci_#t z)UQ6iLG<#!THW`j`{*KB;8O1->M-q^ZNolKT>5$7a;qxq&opQui0JzOX;hV0qv zxKwa6fn1sYfpQO?{-JX={HU}1V4re_?g|wB)1f;_y`t4|xf2oj5AS!Bzebe0L|cry zHdFVy%tC)PPtj%F&!cso_L3jxnFt=DCrO>6WfL$X#X`x=X#Ym-81PZ>bPv|H>~jB* z3jS$bCYs{uLg{2+Z4z$;i!;rQf|a3smUhSis|{Iu8M+xKM!=UWcpLu`!Emq_14q2+ zQzj36T=&H3UWWm_{qFt+1zKZ^>2*t zM&Zj@O;awV|L#Hy_=LFBshz+#<*;TIeE8{P1Ro#8EHG^yk`uMD;J^#-SN8myd{8d5 zv_`mZEt1Mam&6?xID^@f=FS#;9Dy&NlGEv_h%i+Jrmfw-gREU7g*=gaxQ02wq14}eQe+g z|6ShSAm8h$7fNd$gT_qYzbsk)I`Qf=k#r!FqU#RgetE9`r*}U3??Hbjx^m+o%e z%v)m*ely%-I=7qs3FAkh|H4G*FS4muwqNh|Ow(^>VLxsLminLUjoP#p_W|F8bm{D0_gr*fWEcWSB+R`$0;EBjm6cXPJCwFP=l z{aEEv(D_-x$?SzA85iFMRlxaII_+X3C;wchvBuk@(~cr<0+~|3sMKl0;Q2q(X}!nH zQ)W zY$?8fi+JV`b*>3>M>FBMgwOL30c`I}@tf9}@V)-sPWnaz^FiQ83c+1kEq0tV`Kj;m zEEzerp;KZ1*4^9eK;-oP6kmtt1 z?3eBMfW3wRwCTH}f_b5Q%{1=pigWKsFB}dRk2|K}A%;nzFJcY44utA95IxiIP zn)5^kruh6rY&ODK|5DRG%K91{_@7?rV*|feQlIKSgZg{>x5_5b!}%rUhc5~IIfgDJ zu6I7s++V(;w0$B~7|47+vf;Dvjkd4qBHUGAsePVT-N|>S?xoI_;><6wzto1XR5rY4 zB|*N023N{s_ed5NGUexNNorwKb+rv*52S4&cLps?Y}A=!c#&aE5W))KD6i%aRjFXS z`7ZzCR^CgYqj%cR)lTU4oK0K9+Ch1q;jO(ZSzyHbal1?n%_4GC#ES6b#&(44mcWd%pR;s2K3#5z0Bq zJE`kz%5mpIwBW5in=ys`Kef~MSxXBZvgc|3cZcA1vX;b-crZ2t_UDYue*@Sx1M6uv-V@f-TCw{gviO9lCL_e+z>LtWs8?Fhf| z@#rJ|_l*xl1fNB4f*$Cl%zDj51`HgoaYohe@be99vi*t%u|ouqemu<%&6=qDfb+_c_-P2{iw6qzX|*_qu@oq zEv*2r*GV5THu!gd=Ae`2G26FiI&}s!&75zT#)=Gkdd%_aGby8c;f42GduJglWTSgz zPhdQWX>3rtiI=_gXAkS54(2qHH|^nu{aE8oWnV_08s06Z&nMH_vXce(>`z>c^TQY? z(yadk-vgfMv)MvP>jlNB?`@}?zJE))`W|)w)Ap~~uxv`?H|JM1X6sJ+8qry#UN`UR zUrky=^aBR%iSORR?L%Dc!Lugf8J1b-|Iyx~&e~_N#uUulu;QYm?wYRwN3D0;Dq&}U z)u-S^a>4xh_D7HlXk)*=wkpSeZ+?ldD123&;s^U`+hyaDJze|7y667a)T#MPy(1sm zV7z0!WAC}2WA3?E-EGvZwF~x_9WQnTywLhy?YZaveV2Y-WbB95NG9+0r+=z$Lo4*{ zq1DA+qk7@vN71Uew`mXBwGKTN{#Qc(2B@hBSN><>vtJ74vf}L!{xeZu@t=vxe1})$ zOOmgyBA;wA;eQn(ZFU}$MGErj-$@PFO9<1gA4*cpx^pV~pTf5FfkKz0T8|M#pf(_sjpA9w^B?eCIEMX0up&k5NEz1KIV1a}sG%va2i;?77N6CA@iewJ3qx`q{@cPK zK9U3<+Eci!PX6=%b8Psq;-42E@o$V-w$7(3^T8X9)1iFt9`orpr-1vl!n+f^+o&J> zqj}EpW`i}c`tdmMc^n>xYa7k&`dB)c+xW>Gc3;l3Op(mB2R1UnMgIiwvW6!Hj@H>R z>M7VZ8%x{X!FOwsz6WoEKC1sS@IMFILH0n&NrL*S(}B&-p)SFe&E`T2$J7lkuSMsN z;}q||L)-QL3vCzuo3ve4L0j(Mq-|^kZAbhw+Rz)5#NRypg_luy5zAWM*!G%{TkfAO zy0CFGX0NTw(@wON!x<9v?iMrObqbM$bTI9wc45pld=}py#XoM6)gim-FQz?nL0ycI z>~ErTs4HyGM(UE@nNE9-?M$Q0kPQF!ZUd|L~)rpNDPThTQ(0F=0=eV^39I9vAYa2Hl)wt^*#8z-}on^fNrI zJUEuv@nE68uVseKLeMP4FlaPw(d|{Q?KL$tY!>?aok7OHp=dY<+7Npzrlx z!FCrvlX9!0H1GxQ8Ne`kffME53H6_yZSpFg&J`G%oQ3}75t0 ziquT--e=ArA1&S@NBp z$3%g4BH#PWf0Mv+`V>kj9@%J(4^!lh?z%NMy6Vp<;55VIcruBvuVmtE?_2nRIlxtY z+V2rwH>@6m?-l86 zJ*1h!y*2K_2eenGxt9LJ9fwY{7fxI?YsV^Rs!1n(`53G21USids=4b9+iUd?vGcqJWG(I- zK>4h9sA#9$9^S#HID7mb!oNuN)UuO9)`~x4-#6eHyfQqKf2EV!3eVm!Ji`_+RCa(p z{Bl3=BdI@Q@3>%Jex=|SXF?3WcuW36etm<*lKlVBD&v*^<AI`SD@fX8`V)$y?KV+;y#D8`uQjt7SYrM2YUg9B})ItS91In!8H ze^&ohKW>*iP)8MW)m7=BUiHt3`i}yGC&-lib$q z&)wtroP7xVMUge`+R?O8MmlDeJLYp!-55Td(d2@1oVz3xr+x;{wnR-^(TBKuV>01Y zm*`9xGMq(Uw9!`1pf{^KFL5Ku+4!J+N#|)EsiIH!*3XV;h7Rd^s9FlieJ(;m~9Vof@r{llMk}n+p&Dh`e?8lO+FZFH{$wL--NUGkmO}zEJZ>{{c=mdw zXXL*bM|Vk=JNze9dS(KCM*HZQ|D!%W3H&skI&I9y&>!3I4Ps2SIzH5|`F-^(e60Q# zI{paJ46M1>q2}ghyQ^P3x0Inw3w%fvr@OqVMlV}ECfzs8mRqKBsaftBqfaS! z6@SAVOZpsM{fn~wC>xF|y7OH&MP%F4|J-$sx=u35n(iWa9L@)HPTb5182|MT`v~V_ z`yl)O+xXT8+8<`VyHEa)q38K`)IMX8t23nNN{xl>;Ec{J9RXbRp_vZ-6&! zvr05aJVPhjti3qq_$}y& zi<#qVPN@04{BeL=8sI#=y|rs$d0bKd+gi0f*%kO*CLhOskVJQ-Z{2or7k*fhvo!Z~ zlYSj|8b2m%xAk4i6Z72ViTc9w!Mq3G)3>j4Pi<|oZ=nzw(zP%V>6%||pv>aFecdMB zqq?}S2pSWVb-LX91@G6ulRis>+Z*VGT8DdX6_?AFUni{f*f{iCnzGDsy-4TH<=X6A zmpR!E>hx=Xp*|6J>32C~6Zks+qPw>=zI~p5E~wr}*XMoB6SX$3O>vhvb;!4@fi(T+ zyl>}Cu6%2iS7#JC2lH@aCu`}>LTO%(xGroSvs^D_>&w(Ee6x=9-t~Q&`gG>P~`FrnsE@WcXj&k+a+d#KoMux7Ra{<=PgOk45(# z)HMft>MgYMC;d-wW)1l;?a&WdjyZF-k9B#&|3RdUFBZI08g-U*y?-X>2Q~Npd;wkD zS?~_XtT#S0{oM8bfFkMJ=zE)3(^76A`CIW9*1WB?m4B#{r=C26Nvp}Nhi~isTArai z2l5Q#sVl7a`**JQ_s^`y=WD(Hy{CG1wxpN)FOB*g?X%X`_h0yq@NM)T;ZsJjcDHGY zi`nm!lUjeZmnWvQmX|!O^{YvfjVE4M>nA!bjN(H7D0rywf_7H{H`XP zNiO%>EiPXKo|6l3IkhO8aqz8tQTr{~jfLN-wZ7`BroKdx`lYjg{dM3i=t756uY4$D z={at&)+$7>V+_4G)GtoK3%?};CxcTJbulm9QIBq_M>o}@n`9pxPFew7qq`cHTK)2K zHk4KqC;M_ex+PjfZ@Y~DDcS~~MCnMa3$(tIpXFBUYOVls<%T1ibZcciEroZ94NCW7Ci=H3=>$mvIE0CLGYWB?sN0 zad{NDG=K|t$L+yI_EFI-TaM~I8h=#P^$+S)T}kSa%~5_NvLPAUUjdkTV7JjWo!I_z z%l&*-YYyr}K8*cObfJ&p*}zt$^`i8SbW&(rIuskVu^Hj#xW{Ic32=^Psl&nwZAL3B zA2e><&iA05v3oN|QJ`~!8WM7rz@kf z=W1ZbDWh-gCF=hR4)y?sy0zL5i1XiLzGX8p|I=l>^vpgIIH(PxZP1;>2ApC~3ApS3 z8ni(cSQ_UeIzz?UDE8+ScW{Pk$F4}!sgFh-y%+FkPG#*h-mS5it1(P#DfxiKiveF9 zmp-I*I(;L;Tm3o8Tm86>_L1LM1Rw3&5(!s6%la=-jDGWHjnUW&J^?Pe=P<>aU#3AP z|BZx4lEGonxEnbL@j%Y^!2^F&YzqaiJ@s;TEVZuN>|rKFS9@7^ajFlpmNWHWj~^;t z^mlIEF4=Q3>^oXMBeR33J0?E`r-+W}l}~bfi0t{|zs<{e9p)si?qA#?JFeS?pGQVA zdWUI8rxX4oOVUBnTwwdW47wDST*g!Q2oRRN;ZU8az>dK9ReQL`fPBHbenpSr%VG=i&DTu;-|9_z$-slj0Y9|K)gop?{u%m(^V~PsZW9beHD-CJ$|JVKA@Ww< zNc`qJb`P}+Jd=K_bD7(b9;fVqZ3QorD|kb*fsIb~dF>r)FU0KU@s@3`+I_)yGV`#H zz2GNuFZfm27yM4zbOUt%0eoV>PiBDW25?ok?jMPyIsaRH!H@G_=L9g?jT{ubtayd* za5Mb52OKxSn>62d^Q|)@4Sd%@*JlXJ2iVE9`@4ys0^c;BjM9n3%jPTC3*f2aNuo=K zWMpg7J+N(FGXGS~v6R=jT8FzT32#>!>8(vU!PI>6_U&W->kH++@Bul+&vMoFYWS4o zUcCL_Pgi2GO%?VXM(`#iZ5{g{u%h!XK5GmLSyM5^2%Rx7xn3TGi44+1CR7! zz=|+Gfd=EB{t9W;PKVn-e7_WPEyB%w4{`W!65)ffqij;0nM+*Ydr{y^*Q-x|7XC^0 zX+P|+EBtBf&yM-8pr5Z|oO7ISwJy7yvxJf_`c>w_6~5?;=GAAxwKJfZf4P>ci&~$r z+Mc0q(J6ZSQr{1$TX>8kUbK8)xH#O05B+aLXU+g>R$qEy{{wxOzPST zmwz`9e*^JzIMY6ZbD)B)HNdxs8^pK9AJOy);D3X-c;?c5cw0?*jrZcM_FzZB+kqi( z>C+)^uZ6F9o&`MhJlo*;V&39)1H7)}v5~9%Ub(7LUxRM&GQ1Yg$AgPxB;@rMg&Vk> z46nt{&Ah+ROV-5Sb)=nbd3`ixMiv8J3%22Pnme?Ba~x^nwdxp{;XJXEca=Yqx~bd& z4Apg#U(l2^f$%t~HU#C?>!-e`F$dDS_F)$H*ad9C27 zk=F}i&O?@uA7?E1!$bRy1jA)Z<2JJ}nJzBalW zeb4-uvv`aRJoP+7c;sJ_;JNS1#SSHPq%d86BcF(HIi%~;TfrW7#gdpT*?(G#}m&5Wd%#++idwUls_m}@Xn?DDZuGXo5mpF zp>l#T)s{P&axv;jQch=-RG-E$>2{5EampnqcP{xg)=%6V=-eh``j5273fi-g@11<# z%eVB0#;@-Xu1ljAvipu-YWx3f?3z#6%CSpjv|e~T8|axtQM!Ef_EXUB=5B#vU=#Ta zYtu*FO-3g==}rD;&UALFuRq26xX&|gW%iC+2SBIxb5BGj^gV()4?u6%C+C!7DXs5< z`!*VgAEG!X7_*Y>1C1oEDtGZ7J*xSV^hrN>gswGXmd2=O*oQrZF-mKaC+OoEqf)o; z9iwVKa*X=v_Hc}noyWk&w)1FulRI)d^6YLh`dm0iz(e)Ejh-w*OFMKr&>73@9iKFg zJw#d@I`zGs{-yD`4n3xEf%b9LPyVQW$GK|x0as=DwlWZ@ed~6ahCW=^sMGrrz^}`^DNdDa|VbR{sx7J4V z`I;)~Zp%Ei{Wc3<@TO%08LkoC*cX*A%ACC}vm_C5uGarnxr>rL<8TsBf$Md`Rc>V&oNdjej>7}^7z~hN#>ULG3wXa7N3BjkK4T1 ze23~>azjPl`hbt7T$D23w|S2x?-25SAbwl8Kd@R2{$s z-VWtazsqLeD{##GDb>DBemHU75tlgLO-ZG<^WQw=1>by!ePO0%kWfr z=~LjEq@GuPgx@^4=D6{D7(b3xU5(V$D!HYu6!1pzG}Bf(*B2?$285B_@(|9U)EANE zRHv_eFMkC5rz+r2xA5zM-z@m>r3ttVz!J_4z-#771FI3ZO-{T23^0YS?#WA1zi@uY z!rX8`)ENcdj`Q3pZQ%VO{LN*6OWRKYZVNPz@FlZZ&XnpO zFcHRY@vf7%lfz~~+y{(NDdKJ>E@Al<>Xv!7{$Yni9rrn^XO1Dh{hs32J<8$sluS9RQq7$H6gt%e0Nhm2L7iqUtWOCY94YqFH5<$K#$x=Tozpz$lD@6 zhrCTsuJHe)_i6lh2ASKWZ%A0v@u36MmBE;2bHY>=kes1?3Q?6K)I@3<;0Vv zlu_AvlsnbhZ-nDgY&VkKEVxE;vf(nfhsJBkC!5DtfH@WUp8@Wjsm1VVu|JG^(6m=K zFWT;FOrF7AXwg)jd3ihYv4#F~%z2+d2g(*6p&u@z{~ZpTM&Lcc`)F`PuarpBd71Js z;*SGIBNO1blDcI}&ca9GCOoxfS9?S<=q!ulS>%&V^#ouZ3yvD2biddjaMGEtNonmJ zFG>t?W~+U?W#Cs$-WJN-&U;V=9{rqPzA^+n)XuDHOS6Hmy$!Xek&)CQzn=T1bw;8R zFYO;Y1@=+3E~35fLbp}t7)LvUcD|jk+PoIHSFB|Jk$V$cz{kn5Cr&s){Nuz)*A{J9 zHfM#Sg!NXQB<=DeaMJf0-W@8FAwHM)Um~CI*7!3(u;KgfY@FstcadLll8r3oly@p| zdcVRubE?J*>}I4F(2ZA8wjenp?w9um-zmy{!QvB52Xj~DS!?sYPd?%HE#=8;&Q|bV zWSxsV(azkHLA>5u>jPTHQm?|BZFm#u!e4kQ{xs-VMV$K3YQaeb{M5e26AE_)Hp&ag zWBO5E{bZ4U%jukD2j)Sv@m;6#uUBmA>PPJDm!}iI!qz(sSzBjunq+YpY13M4_(9Uo zV&0~Cx^NP1Hxeg07w0?tlPc;~U;H|C$0_?E?{8CgUvLiV-p#qad_~<4*t)k8uQra` zw4x2qBVF}oNeg*0jku-Mdy~$|K(FvPn7FYUSS#?)lAdHuS$oL~MglWiD2O8s zJO`UR_hq$cKE%E}JQP2sk#8FHO{Q+a5>IXbp1zqonKgi8!%Y^iExp3xzw-BiPXd&ls`sw=jemL4(Eb`Gm`Mnbw(tWEob*zF_^ePnf+EI zq^DjL9?(=vKG};D7XhB$Pbw{M`n%V^LjDgY-N?UP2daG)?%{vKs;`c)-iizR*DhPn z%ao}mP4H)sPqeShb@)f|eHv@ckcM{hE05?9tiRkBgfF&rJ|uX=3%>G6zQpsqrJ>E1 zze)M><{mBYcj)u555G&i@Ec;`o!5(o->O_M8h)WTcvW9P!x&4$L(m|;?P&*OU_ALn zUr56mXi)fd^tNDs)54RyNoOhTK3nE|rRAgtSVvjBMdwE1^_I;*Fw_@~v?$O8Y=#$KAj`AhGJ1M`^uAi|_3=MrhR#}|n+sc{Oond_C+(mRhB7S8U_icV?95NMN zB!R0n`M9*1M}gaI_`ERJ6F$ic`CU@p8O7XcRB|?F(QorZ0{@B;9 z3HYXU^BUsUi*JAUe!w@)n>6421pRc?1;|u}`A1v9>vULC6Spig$E+(QYoj>l7}`&= zjAdP^IsW53C!x#L-=Dv?XXgVvgOKry`PW7yRVY0HoRg&g;L{V>*y6&-Z^(z49~Ow$xF{G80i&lPtZ|~fA`DJOe_uqL zzGsqOdP?=|Bu={QVcz@T-In*?vv`JhUsi#48W_VVv$7Z7XAmd2G2X&E0p90T;C&VG zA>O-(t?++c5f?0@k5SG{mQt^)TNz}ZdsZ@q9o z5Lm+fWzvK@@ICD>gghTZdWd@yFz%}e3-`k+!XfTe#Ob@P0{2^p6YgsF*hk>LtQYQm zD{z0}z!m-)!sAccS6+76Jd$n6BeLrKUF(S?ZBJeG)TOuN-fDw$sms`Mp+mfHAUWF=rCngl9KhRYGqU1cVR4eao2z)r>N~{gY{h}oSc{Y3yg{77i8{|^ zo_Q-}1n*74D%;oMG|7gO7AN7X^tcUw-iEavP`xF>S?UVI%6lYn(kq&)Sy?Z212?2w zygiX{fATa}@OJ{`glh=vW%3LFc4gd9TmQ|ZwenvLv!(*x&j{0(OkRx{lKIN;&nQO@a!(Z-I-t^N7cn^>+JYME}nCO=LwDiL5Et_W*@7HZUCtoP#sax`;a_fkX+wf|> z_qX36&38~%ZKwS3%NxPm_;(iW>iisk3E!1`+yx!NOR(F3cM0$mp2l|%c?aObq%dPA zcM-VWM&cv~$MfDJ2bn_YQo_m?%E7A^ZVhk*dx1^=fHPSNKX1b!-e0EPdhk|X>rcAD ziTS2zIhnjMr{J9?dB_K2&KN5j%9kTuFb!SEIH8QSONi6=<&=#OR=+F}7t(toF!YU1Gwu9!)j|3F z$*cJH$SXakx$eo#Guyy*Gw&~)?ChMzJy)_@$mS#)on$Y7#T^2aOOsb&!F!dkczPP& z;+u(Q-uN5td`TQsi2a^=6*q)3E9|#uujc;rYb?IBzgbJG-A5CrxAfw6Y$+j^+`5;n?Em#eOmNWS10d&qMv-C zU$lz{>ug;$taWDE??!7Qy4{9F|Hb6JkGfTFn)Hk8cS!GXd*C3q^efT%mT=`QyOC&C z*>96ivR};1@#jh>WoX|{+MT%B3g?6VaD%?Pf_bX=b`JHMF%enF12>tu(eO`v(H!BA z_XKUB?^bLvE6F20tnov9j!^zTiPQHy-ZNzLDIhC+hvRdSxGzyx7}h-FcNOX3`27@d z`j*{DbP49El#?D=$NpQ4??{1hs{-cvTos;48NnQ4aozyV-vyTgY~AW_ zS_i~QS3b$%g?y_%=_JM7Mt=3NdivP3Q@A4!nD6kOk=eVh`vAL$6IK56TPH zX40j96rOH*)ratW@KBuL!yzmD3vHe*@~;nhCOqh8%PQc>XX|~!qVXYXlMx*CQ?*Sk zZ^=+A`Lwo@%qV^wd9Ss3r0<2>WSgdM*;0}=U19#6s6u;KY%XQ^D*w2adj~AlZ*)*!5g|Mv)DhM zHk?je+>uXvR(m#2j@lfYS$T6g?PAOSiE~}DedXc*Jm8u=WAeXg;uo2CkNo(=?}%w` z01uX7A5i!d>UeKJzARY@VH^9L<+s`YGyeLFao8nh@P9g;>yRJq$>>ArY}vSKsrM7W zmYwT<)<^OW*S7<`kCP@pDxK|U7{{I;{!&~jxO4F-EBwV%MPG-%jWGVK&|mP(xDNmC z2IuQ|x_M-us7k3#I{ZPvOAwaqX%Bif=_*&3U2Num(m5IfBAOrM%@|O6)xrq(l%j$` z8xD~k1dilfeM;Yo|0?QCD z<^6%Ut72>g#I5Q8h@+aRm$*J^KXt$Q{)vh`bP2?>YGbM3pmQBMEXWBo275iOG)U{yeDD%Hg{z`)X>wj z^8(`3ACurhoGGI|cshOk9qfJTSMu*rzY-nSgS-4=T7Vtew+#<7_?c7YEy_r**QgBn zuOz>4ku6(rk2E?Y=-b!xKLpWn4S2UukNS2p)n2Z_uOZIUSX7^$y^T98{W$&(bwzv~ z&}k_PBc4L`Xd~G#`+Towhj6;~b9j&e^Fm-wfo}0*Qc8E`cQD87@EdqisSbY#{wAZK zxgW3^Gl9R!C5-=R@P3=OlT+Vc?C1E_UihDQCv1Hh|JtZ?*8@SFaW1{lcp+NUS5xTs zNXFpiT@C#W(9s}%q)mS>NtdTNmpm05#VhG^$$1K0D_)6?Y52kmo{z2j0pv<;xR`en zIPD~_=xTzNuMzhh!jehx;d{#hoYIsP4xyb}?LUot)4=0gXc^BqBj3C!=@mYA>2QAR z9Ir98D3Nl4efj28yMGAz6qs^MdqLmx}&(zKa8?kd!diLk$mfp0O{rocYsLl@m9pXO` z@+ZsPqlASM^p`HN`Sfox@#J)yrgekDhe5N(aphN7IO|*bN8v3B13Q&mY;aJTgKP=E zM@bVtiuEF*Yi{{-vwC-jv_ye%3$2 zr|n$kyk`abwkyEX$rMTx%vc`uXMPcgzURy`@1^Mf7RGj!zn${)z_rC$=11T^cRg&3 zaAt7^_cA#n=(CxEw|Ku1uK1Kp(~q15_>xV)-*mR$gdP_zg3|$Fs zk>+2Ew7Fp2dejJ4Fx0mH49-=S9*r3~6E)q^qH|`_Pf^ZZb1#KCd!0rfCr^qxZ}Uva zM4cv{1w88rXO0Qx7L3w6BJe+rpWICDVoNekiI38e@1l2yoy&a_;B@PRk#6%D>^&BZ zKfV`%zx%nfI1e|&TTELSpG*gzOx7^{4_VNC1+cayXe*a<#V2IS=qY@083T*$M*j|R z@j*28OfdiNRvnA@$1S?V>rBt`7x1*Ojy~o?=8aZwqUX$-IgK2491Z^Pu@S#UoMl)qtht&eZ(-_~MJ+~5a z9M)G)-g;Y~>S;ZqeQ;~--g?4(wdC8y*xVbh(BCq|E6o4lT|GNje?%IEQ@V z_m9vsksSP4iSFz~-(--ReBd|!pmY%WK1#loeB+1dqf@+l`DTt#Ivg0sf}eEK8s3Kz zKAQKHymba7!yKcDwp&g(j_z!N_gWvIqf37!PWnx83Re>r9DOTpDRA`u9`Vw{iWgr0 zxKlXk|Az%{8)Nfa!67U^vUBaXbg1&b0t}_CBTeClY`X0F3SVc_!+PhCUY!o=QaQ!{ zia6o1nR+!g2nXrvFny){u0fBRIxT*(=O~=B=~^!-{G7$X+67DPgeQ_Gl9^bJU%kS= zEB&lnJgHE6HhmHQ-fhRP^dk56sUzH~3+KAg)J<-*vrx($fn79*Z=Li2W8^Nz$nV>F zl8ljq?6=m18^GfPTjvJyeQ5F17$n=+E2Nn{8E^|}x`ntV=MMjL-f`l^exoiQ7BnFp+^fTMcyY1SvC$J49<>^wm*UE)M*ozkes(3&fhE~0!D z=_|=wwBJe>4i}PFv?kz-@`z^9`ZD+)nK?{BsEXuc{qXWFp7Td5-=nApU_ zwJ*BgYa}iKe4o5#4WBENmh-JTRZg_1KaC)tzT*{iJxrW%xr}!uE>HHt<8Z>NH%fWc zrM}VM*84nZTEjckd&5W68@KsXcPIIfZ%?%AUyIFI{>jdJMp|dh84nn@(&+yLdU6=! zV4$b7W;|#{p68L*0T0Hu9bJsA;rM#&Enf2(IQCr3ntdJXajn~3*X_}|O*TWPvD%S6 zan&)*1^Culc@*#6r$wDc-Wyn_>MW20ZjDFEZnqbgX5o?yaXH)I63rru*b6mwEEzM> zU2ONlIFmCZmQFA>@$YZ$r)XqcOriU4Y|Fd1u;&)$Z@!#)l=y(ok2u$O`#E#Unv*z1 zjRPJ2D&`uC+Zfw4X2CbkoDOoXoYmcY-0Z>JCt5q2bqaRFjq~8A<|Lmy;bg{5JI*l8m75dg{26nT z!5+Fl7R#|$#kuPLB9G`AX6f3{t1V>XIFP;P=^6e}e%xZtsbEt*>LT}w7ZH9(l zEw%G4>Yqv7O*zIZ=yjlLu|1pCmVfH?(c1fD?B#pNpZQi=qi{s7N2O=`H)3}ZE}=gg z`D)g4H(M+@r#ynU*6GpW9R5F9c;wW9#N$&ef492SRL+~uDz||P{+DL%Cz(>e8+JBx zPR9K3442L^sU4%~mv!!NsN`ZX^PEtQWE0-SoJ}~*NO9&B8i%nDr**v6fXwj*YmTS8 z8JR2XDKDAoM5ZKHvOh;$Wa9*$VcH9Qv8j`Yra2jBX6EYXTCqfnP0vLIf-OXD-TE|%BLK{cyh>WH#%aftA6^m zw%O&Y;o1GguF`F>m>Vf3$_s`EbGLcJR}7A%7L?EFYA;XjYTs`QvewAI-Q(G~pE!G# zyZX^}rKhi2R~k#Z%FYlyaxH6>I5eB{liq!d&!Y&7Cn?^oxmoLVSMQPZ-7WB3{dE%K zmXl$8xua+2(>#sfT2KA(zSIP*lL%`JZmPY@*zcYv&%5~LNlz*6deQ}_>B+nNQ-P(q zSDf%Ef?I@EzO_C-QQ;ipmczYil<5LSXbV4yuyp!L3wN3gYYb974^yY!%As1!E#Gep3A65*94cB^(mKKNwhH zSUPllMR*%94psfiOBtmPwCygwEg)?66WWjo<}E)0zUT{ic90FL{8C`OWb3a5U$vw1 zerWUjjJMNOC>`Kn2ek4b8V{o$y#*r)j5!ry(IOuGw}o3nx_BhG-yolGzL&HH@*E)^ z0e=o**>eO_>vzF@>-N2MY{1v=`{W7h6py}DQRf2EFD4BBrXOkVHIWYHbYG^N>dbV_ z_xC4{`usjT!sc}ec`AAIGIc8~JZ1oUzF<&Ja5Lx`rD?u6)|UG!Z_zQtVI8HlmBnK# z@gdIJ@zXoL0_TuV_mfB8uJscX>`#$TIPW0sVrVt(3H;+Nys#}FuHexo%I8S01yAuo zxT!7OX5X;i05_W(YMmoo`M~*cos?1{{cd| z8%Q|BQE>9$xxeuo^+?n z_*;6i&xbs2CqCq{dl-N8zadUMcG~9qoqWq@@fhk=pDj_R(n1=t zHY|RO14fmFSE*-&zsl?&uk^XjaGYrIM8B54M7rLBu@xV_Co00ygDn-|5bt5c>09~5 zbHQJ!INnW@@A7|4zgK$_@2%2zF3<_Hz~N-*87X?Y_@5YI@knx^`iI%DzQ+RlH-t|U z@5vLPTrK7PVe|ZyxAKV>8pHY#{uK39TiWWJ<^BkZr}C-qEAGF^mjK=cyk%b&E-F8t zu<%eG<^THdZipFO>*#6;`MzSZh^I9)8QGaE!`X{#5Fm2=U5y81Fs! zv=vI%Q+_n~eAD8izNj|U``vFazoQQEN^LfU__}N`Z+aVD6YhD8?);_M_t@Nd6MI;k z1!ez3XKO|;`=!|j>37#nW-ny)(qEeWkbbw{ju7|9;e?^cM-o(tXP@Y(iRd zeGNOO%7*>z5Sw4&-}7C^+3$GnL0@}BQE=1!mXE;$>CH$Um~HThc+J(+P6@t$pzqE= z2W$X8^*N0nqHz^r)tAi7HGZS(ZGF^7;O9TetWp zT;E>YvvUOW{84jb;*`G+`DKHgIP@-G;m~GtDP;v`0q;tB+XyRPG9S=;lf^5f_qWth zNw4&P=&kKyO#scSpm{oW$K#>-iC#2MBK|20Pc)ZpUBXRtY7fU@A2dU}!i|Cb($L*R zIpI4Ay1%USl#z8q_fNrTBy@LG(ETd|!}TWhqWf^-1?P*rHTH^j@$M+XhF|bauJ%Q$hRvq>IK7Kdm!FdxZFe zQz%V=&O?<4cwzg_1gArw^O_1eZza!^3L2|vYcu|nS8yIAJq8ZaO-E3N_9{j1-zK}dJp~gw&cRCmP%WT;-DwEMYoSX@* zz%xyq!m&?^$Kv@udG$R5xWZMi+R1kycDQg)uL(Py?0fPhtn|y#8Pd=%NB)INvGLWM z7&ShG9VbN1`O)db;cVEG;XSirZ_vT+CtINW5I0jswg>UX$WjGgj2vXZ4?Kmt_#*th zMSE$_X>}ueK9DP)|R~ zsqK_c{B5-`F5~UwNy{<6a5(=j+Zg%P#;+-ja{3Ns;XdMafrt1T!aD*SMDLrVC8#5m zd%+aV&BO~vCj5BnmVd2tapeLEz)mQ(DDcJ?diiA#w!a) zvu0Aw;j0Z!|D@8Po>S= z!t~)+Y@P4%7LSKR>lZ89&9o_Xsm;V6(b`14E5Si@hV8bRIMMoT-qqB#53O0wasyxK zVY?k`!*2sea`7h{4rx8c!b=VcXzjM?qV;9cB&UKW`(=bU+5AqxM)?KuiB`2~NUQP* z&$}#)XLze!Q_wo7qFp}&T%%K%i~H{HMx5^$+vcJleI^;f#@U&^W$*%?2>2|=*4yIT<^SSuJv(op zO>?#Lv2hkW`NGOyW-$2NjD33$@1eX0^47lm*LfES%O^~J#!c9&WmCpqtmabD1r1Hd zbr`=t>95`7lRfh`=$|xZg+C74cdWwC_+iF=oi#Z2bI#76Htn7J7~eGFe*sMSrA?t8 zm%7JI?!cbRIrje|6$AgT6dz8K7c)n8;YIjDggy+t{UF|E42-yTpQLDQ;l*}vVxPp_cb_EUe8b2K z`#MSb{T>^*WU~A3d-rfUfw>r)x?mXlw{xp6J&`y&?}qn8$u``anuYzl-5ZO~wf0+5 z$l5Yw=X~bk1A6Xr|;I6{bTzJ%qPl0%O9CUvm zTXBPTgk-wJx678A9lJe`A z;6;n=+JAaPdnRMpI|=tpKE*m;`tBh3`vrKRIfVRRbG3nAx@2*G(oQ2yclBPzTXLm! zgYe$0c-8^G=dJ!0`u=D!ejZjiZ9$XIJg0x?cEb; zV~oOgKazLzXU}oN`~1LvZB2U4dhUx^pLU+wuK&6gs6+m=|3Mq{qfL_V%lPRIKt7O( zMYl0tL4)#XzM;J1$*ViE;wJ_7YN?Nr=k*47Dqs6iB zztWaJl=8pFMk^RK$v`HisDARwr&#MZ?cLOkzLkFv;ZsVT+SAqgt${iHO~7fv-=l%` zOme_&en+OmT}Ao$$-%m z6*hVg73O>At=i}v@dMru@qTc=*RyiI=M>FY>*=2YKi4?bDP2+UG-n!xT}b~~d5O9{ z{r_lt_c$x7vf=;Ub700{)IkTE2y>&9qoQtY&c zRM1h8)KqrmQ)pUL=3_oosr^k*0rv6zSiNU&T7AoirgzyCUoDHTO8l>c768?i@^HnGv|1kYQMm>006o4-fG72v5#tif3*^J*l0|JU7HumK%xJ)>lh+A7vo#>f(@) zw)5i82YUZWWBvyEmJ3&|5@-jIrl(iWv*vi zdpMc%o%?@)bDrUhr{_D5L(ap9lcf0pcvMny9SY2z>4xOLX7-Do?MV80?}^Phi?@YX z|IIqPcHUE6+5c>zze?U|sr{QJ-oqYsOT>HN$M?~mW>h$z{;iA2{gy42k@&GpA7IiO4*Ry5XMuHOSns z7jp~h2z7Vhh`r_y?%LWr*v?skRzAl@`pW^&#QNVc(__4-q|@v;xVP%L+&GMLE!<^m zS(N2W8vE|8hOWPTfTlpH= z?uyf8&T_wLIkz#5$4H|gOWW=)R|;ipe?eE>=;~4GQa5w*Zt8n>uZ7hJ9iN%yf6E6i ztp4#oc%O-}qphv4I{I+l)fzFsJPvpM2>$&6?dQ;K!|}EICy&tgPk_e^=i>$Br!Mz{ z^S#sK!O<7RHeB`RnU85V)yk{;vvtv%)J5y2@?`QcUF9{}Oc!xqgvYbQzZ-Wl@Uys2 z0mpZ4`Wb`vqCORB_Jbq&zfdb-71*X=QF=$c>CH_x-WsH>+H%ZpBP-n2YU*Ri&n`OWd}>5v}&juGg) zJ-eJa5cL86ynj^Xo!ja+-0K0CK7->K8|OymxpZ?)*Un9jrMx{)^KXGKbCC{Zo&Q#? zJ<@M%Y+$aLR|om|<%LJ|l-skmpW3{=0X(v7{O0@G@;*skDX-2iavuf#=63C^t^)6W0vwBW9miVm@ZM_cxx9nT*TH9B z?|P!)n%?SvUqc)02c~Wx@rT8O=fI1#QRU0y9w@J6?)*UZ^zwo%XIAD!6tjj#ez3=&hUn6dT|6Sj^;GqG}SlzSRLj&zm ztu1GY$V+?X?D425V*IzS?BeYZWEstOC7*A?pqGL6T^CmG1#ToS?YpA4EOtd;_h|Kt zdkI)R?LS#o{kptLwRuKKKY62U<2lDI!iCyC&w0ez!aiqw4yBtji@;4$Y2Y<*@_jVG zj;q4WrhzMs=TPpUe(Qe>ceQbl|3ztX+s~n><5vS8`Ab8b${$(tTK^4iCBE*wknY(5 z?hf!D0?#R=EnO37|03{QT;mzP2Qv{p{T+BB`j|xA#w_+~cnOaU@XLf-&W1To8@4*| zYKC^(Ih1bpas%EvB>kGJYx#YZy;R{Z1zySiu)4S-#5o-|>Z_eYxi{q1Ilz7N_+hfQZR@rL6@giQdiZlZ4XAb<_G%;fQvAah4ZZ+hS* zO`Hb&=Y=?R_{Hr5Z^PeYUsSkfNcg!ST)k~OW6?*Q=qgrQ!I_^#XI~_JVfowzzwv~d zmlo?0=@~XF#2JYjm1^fu&I&s7{f33$b>%S=9+ecV-aeCp6PYiHD5`&HU?NZpBagLOc*&`k0__K%6W01 zyA3z$i|4_WKe_IK&b;hQI=XRw;WH-%CvrYRT>VADl~dl<8RdKz?zS@>-Ml>kt@uRF zmzLIG`A;VPwSiZ<&8`k{&d0THY(}YCxj<>)1NuvGzc}z4;%)1L3ami_Z}n>W-y}at+Oyz& zN(hhFBZS``VC?|Sz$XS+JMxjF-*7l{D|orz5%Xa_`FG|W?}9Gb$7RkP?+siK;#w!| zw~@8d6ZFy;anC?JdDCB)tMyf9iK8BP=fixP#vj3%|5Y_Um302>Gq$GkWIoSH!56`2 zEb)}B2;W4u#B!PF<^o-jo2Ug8^9+2y@?Ney1c z+FJO|5N=&&-c$J_u&!~m^?ogcTbHkaw|ZYPp1v7an#V(U53YGSF)CG_({4t3<{_3J ze(5~@D8!ix|0crB-_h_^{{0Bsrg!-P%O{x+J&gRqtC`~~|0RUm2gZF5cHgmCj^+PCh!bN~O{ey+As*Yx?*>!P`zsqN{u<99E2 z{b{)D+ZKWIXV&(4`|%&d!h8mttD-=yBH!~MuX+wFqx(X0pmG4$jf%_Q=FA^azx5B1{x7uP%3 zPeygX^PZ2Pf9k1c{PU+Ss}2ya#5*XBQK2jy;@|Jv1FVnMHy_U03EC;pJ_nsPadn!6 zYqv5V9jq^~V{X{u`8;@VZ)4Q7L&7~4_GSv;dTAHhyKC$C+CBjLF@&91c^(^R<7w1W z><2yL7qVvKK10|?a{r~3{g_8M&wfK&f4Oz9>#F_SJFAbT540Y>fcw!=OHYpTM%Yd2 z`KNc!hy~@?u0b7(Z6@r0bg~}NW@3GL7j;9ov1?JeclyHe=ig)v$bQEyyw7A_-Aid8 z4g14kh56;?5zDI`q*FIyK5uF8-YsAAh()Z)mQ_!O*B#{B`%32f2c)6B%eqbN;7&`; zPJG-B@_y;A+($#FInw2>%i!`u9xOjf9*^YQl=CsW6wi(KXkM$J<3qq#`g7V*mq(dtvPc8>sR)hGOk~1 z_nDhBtUb}yJJ8kV(ABAw_Y>~rVFza)rR8Vf>d@Dh;;>TX`=ogW{^SjWxaIZ{eG~f&J>Iwx{pf|2W%mp7jgme;?=48qig;FY$ik(T3cY zux;m|O}|0XoWqX7=UXJ&SDJZ)MBB=1)}?&S1~fUy`7|!&9@~Hp$FGb($8`*}f47XZ zOZ;rv)(y(I`BM9+n*GP|u|WQ9r~YrpcTdLg`6kU+(#^Kqy_bSf)RTbn|@Lg9^x!q3k9CPe6_wa^#T1{~$?s zXG)g3Aj`EWS>B=#RF)+>kmZUX%epV|?`^(B7q3tzi7Z{DF@rBHi~k{-iY$}c_<}6b zU7nKV71C8N)}f?KUJSCFwF6l`oswnJWi?rH)Q1-OC*NbqQ1`9FuU*Aj9lqA5h;p@G z{}uAuS6L4~jDIwGn@RhN=pWnj3#v{Ac$YvppkkjCvZ6zoy2Ac0KU4DS&br!a{}CQZNkai|mHiDO&zyo@#oW&dE{BY$a#Q<>`6 z4qwC1AY9kG+46rdz^em1CGea=m~`@eZ{Ya~Ja1&qaU-+^?%8*NFJR||CYJd-0e0_B z-iOKy*Eyba&hvH;yiUd4HYd%qUI_Yd&S{*z0-OuHerbNlt8-=N&FUfwynbj{p=P7n zIpo!Tw3Be%O<`Vsd4Qdlo5pZpU1^ee=*Eyvf0##`&KIDw3{NJ^IlsCYSAa*J{}zFh zCMmZ+UQvS!A{3}Z`kAz=LN!(F!7Is@XNr@EV8eXFAZd) z#e*-C*03ykKqlV|x|i^=;Ga$5r-4_ur$^X9v3Es9>Hz+S^!Jqpj>q4Rzfic9{s=oc z`_8$pTdT9mw^lDWhkuZkuO1wSO=%|klkQiwa_`W&&;=jr8Eh+a9*zCqR_wo{v%WLL zKP-@^xer`nDRp#dbsl|EN3^th5pvuT@^O*#e`GRmN!`hYF#BV5ay#L=(j;ZG5Zr(G zFObV?{{rzpA4AV?+BQAInauZ}XUv$ydCwiaHTVbgr0vM}1s9_O&pzlcMAuhuBCX`D z!MMF+r{6NA_77+6@v|9A)MtB`(SBUHqqsv}W=>%6AWT zD*D5LGokqtu=emXnWLEB(|~UzT)((?AV&s1XLc{EI_Al%9{6SbrCLApg8u%R-NpU* zyWuet9y8wyp91fS16#*UN4`@7JSn8}c7T&QXIqnAdz$p`1NJPtWov(6*qA``B5|Wt zlsUMA%s*)i$A1jrx@Bxt@>m&QZEV8hfSYr~%hu=}J6Z$J5%3f?uZzLi4=GzU_>*<( z9?%&E9JiydhVZ0)?+!eZv2r$PwliM34t*ogxCZ@H@J|Xd*}mlGy)fQVu3Q!PcM?7= z_#JQGsGnK#2fjVP<-pf;<}kJ!=9$+Mz{~sL#oKlE!H^Gic4P1-I{PVf%9QAAMhG`e z^=ADv+<$WI8Nx;f89or;L_bFb+IGSlf*}^~ zf%4xUSev$V+O(DP#*l~G!`S&zXga8$hEc~W(q0Ts_Yhp$0R4AGo3Q#et*?UD%?BP) zkRho%3ylXqX_EeDwm4+Z5vR$t2zw1&2Hsofzf8w*|1bJWaowo=Nk8S?1npzU-OqT| z?|PWL{W;_#8S_q0@)gFs4tSe}<)|$7SHg=!`0>DwN8)@_!#4WCKyx{+HXQ#~WqB!^ z=S`j^4fB-Lhob{LGw^%^*mh}prYr4x;idZuVU8Ko$>X6xmpg%1|GJ)yG@kvBaH7lc zz~aTJOZnQyUkhWbI+g!T;LMBtBsRqDvXiE=f0Oj(k;uMBfV~$X|Fy~|ueREq7HMrG zR|dN87+&C?SIF-^NKzNxO?sw3A@I30z=`}B;8-8XE*(0r41~1Cg*=$nS;~$3(&e11 zg=Q==SZoBMtu>5|qv0uyI=4<; zLYVDL`N&%(>SnD^`m-Yb?ZDV3%`)O003B^3zK7&J3-M85Y4s@Zo!A5%YmQ-`yNhykNB+`S zFWm>RURuT%f!Dn~w9V%N?EKsGK50C7PQfpoWAg{Wnf7L6n)|U8)w$9#SO1i>%)yhs z#_>XUTHrNR7(UiV@z(Lqz-unZQ|2N{!j_}>Um!i-Z1;kO#ExP2b}`Xbs{7QG>l^YCW~cOJeug?Aoq z-cOGh`&<_mYxD4UZ>6s`5C1jzLbrE|hs?vjbou`}59hq<|Is|WyEYHMh&~{hhuy~%3Zm%+x-gL#ysK}H{tU;`p!8+aO=U%3b@xvuceDS z;o!0b?S;#$6XBh2TTy)s_ml%jvrC)d^6DYLo!}q9Jz0E#cjt(wz9#k6MQizH<1gSY zegKcLwUnikU9G$gGy-U{AC`C3-~ zm#&U-%AnWeABb%^){}fqp{&lQtcurSkK}8)&EzZct>nvsryOGYaVu%AI*mHk zwRF%s4Grim)5bp%+e#xc-KESj_A&0qPS%vG^|SWb3$fjQ!~7tRW$9Si%)3Lgz{USP zU_6-xPt$1VT8`bkx7tEj7yZqa{i2PVDUWX2ZInB`Jcs`FO!gKY1D_-OB*LEFH`=H? zV@bzFUPGgkfZNIUFG9D!UuZcSczTNPw%N5Gjn{(;WoN8(3N&THxIhiDY_p+chL^$7DD&E6x}`0b?tzz2;IsQ-JQ^NZlkM}19P`+ z<N!v$&SoJDf8VN&_o; zw{EhF*1PsKI&7U5E@Uw8t(KW5(jF#q*Yp1%XzUuf$vy)y%>|8~}v?^Z6t zg&lAHl7bf#ej;$Z{wBV3o=Z6*(7X;W=flQzT%8X5UgSFt9lcIncJFo#uKyR!!^<^6 z1g&e~iPSyETi3#;z)!yR@#1JNmClgHf$(e~o;Y>kT>NW(LR^w0W;&;#+wuZUmF@Y}8#TVdd*eb#%1b?E7;m|gdj^&ruhwJ~7pjAF} zHQ>1tc^nJ9@{L0m=M$dR#ad+87hOEc7~2wfHn1*I7vpMk+PFU0t`l9n0FQRUh1H+` zOSm1JY1{$7M&#J0gKROb!^)u!z6hVR4(?~|^|?(4-KBx6;N6K1dQ&=}uE*`7llbZ)sS}?MGTJV_3?J)+ zY2~OF)(6wF95%yKeS8Wx)6^+Y}+^sTK |?4cF8&b0N`$Qn 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≥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" */ + 0x15, 0x89, 0x52, 0x0, 0xff, 0xf4, 0x19, 0x9a, + 0xb7, 0xae, 0x10, 0x80, 0x3f, 0xfd, 0x2, 0x8f, + 0x7b, 0xaa, 0x73, 0x10, 0xf, 0xff, 0x41, 0x2c, + 0x67, 0xe4, 0xa9, 0x0, 0x7f, 0xfa, 0x4, 0xda, + 0xb7, 0xae, 0x10, 0x80, 0x3f, 0xfa, 0xa6, 0x1, + 0xff, 0xc6, 0x14, 0x7b, 0xdd, 0x53, 0x98, 0x80, + 0x7f, 0xf3, 0xc5, 0x6f, 0x69, 0x8c, 0x40, 0x3f, + 0xf8, 0xa4, 0xb1, 0x9f, 0x92, 0xc4, 0x1, 0xff, + 0xce, 0x25, 0x9c, 0xfc, 0x85, 0x20, 0xf, 0xfe, + 0x28, 0x9b, 0x4e, 0xf5, 0xc2, 0x10, 0x7, 0xff, + 0x34, 0x4d, 0xeb, 0x75, 0x6e, 0x82, 0x1, 0xff, + 0xc5, 0x14, 0x7b, 0xdd, 0x53, 0x98, 0x80, 0x7f, + 0xf3, 0x49, 0x22, 0xfb, 0x69, 0x8c, 0x40, 0x3f, + 0xf8, 0xa4, 0xb1, 0x9f, 0x92, 0xc6, 0x1, 0xff, + 0xce, 0x25, 0x9c, 0xfc, 0x95, 0x20, 0xf, 0xfe, + 0x28, 0x9b, 0x4e, 0x75, 0xc2, 0x10, 0x7, 0xff, + 0x34, 0x4d, 0xab, 0x71, 0xc8, 0x3, 0xff, 0x8e, + 0x28, 0xf7, 0xb6, 0xc4, 0x1, 0xff, 0xcb, 0x25, + 0x9c, 0xd7, 0x20, 0xf, 0xfe, 0x38, 0x9b, 0x56, + 0xdb, 0x10, 0x7, 0xff, 0x18, 0x92, 0x2f, 0xb6, + 0x98, 0xc4, 0x3, 0xff, 0x8a, 0x4b, 0x19, 0xf9, + 0x2a, 0x40, 0x1f, 0xfc, 0x41, 0x37, 0xad, 0xd5, + 0xba, 0x8, 0x7, 0xff, 0x14, 0x51, 0xef, 0x75, + 0x4e, 0x62, 0x1, 0xff, 0xc4, 0x25, 0x9c, 0xfc, + 0x85, 0x20, 0xf, 0xfe, 0x28, 0x9b, 0x56, 0xf5, + 0xc2, 0x10, 0x7, 0xff, 0x10, 0x92, 0x2f, 0xb6, + 0x98, 0xc4, 0x3, 0xff, 0x8a, 0x4b, 0x19, 0xf9, + 0x2a, 0x40, 0x1f, 0xfc, 0x75, 0xad, 0xb7, 0x41, + 0x0, 0xff, 0xe2, 0x8a, 0x3d, 0xee, 0xa9, 0xcc, + 0x40, 0x3f, 0xf9, 0x42, 0x62, 0x1, 0xff, 0xc5, + 0x13, 0x6a, 0xde, 0xb8, 0x42, 0x0, 0xff, 0xef, + 0x92, 0xce, 0x7e, 0x4a, 0x90, 0x7, 0xff, 0x7c, + 0x52, 0x2f, 0xb6, 0x98, 0xc4, 0x3, 0xff, 0xbc, + 0x26, 0xd5, 0xbd, 0x6e, 0x82, 0x1, 0xff, 0xde, + 0x33, 0x2c, 0xe7, 0xe4, 0xa9, 0x0, 0x7f, 0xf8, + 0x80, + + /* U+003F "?" */ + 0x0, 0xe1, 0x59, 0xdf, 0xff, 0xff, 0x17, 0x52, + 0x88, 0x7, 0xf0, 0xa4, 0xe5, 0x31, 0x0, 0x7f, + 0xf8, 0x85, 0x6b, 0x25, 0x4, 0x3, 0x92, 0xec, + 0xc4, 0x1, 0xff, 0xe8, 0x26, 0xbb, 0x28, 0x6, + 0x10, 0xf, 0xff, 0x78, 0x98, 0x7, 0xff, 0x14, + 0x4d, 0x59, 0xbf, 0xfa, 0x4a, 0x62, 0x1, 0xff, + 0xd2, 0x2b, 0xb4, 0xcf, 0xff, 0x4a, 0xa8, 0xa0, + 0x1f, 0xff, 0xf0, 0xf, 0xcb, 0x5f, 0xff, 0xf6, + 0x38, 0x80, 0x7f, 0xff, 0xc0, 0x3f, 0xfe, 0xc2, + 0x8f, 0x33, 0xff, 0xc7, 0xa5, 0x0, 0xff, 0xee, + 0x1c, 0x6d, 0xc3, 0x37, 0xff, 0x1c, 0xc4, 0x3, + 0xff, 0xb2, 0x4f, 0x98, 0x73, 0x0, 0xff, 0xeb, + 0x98, 0x7, 0xff, 0x31, 0xf0, 0xc0, 0x3f, 0xfa, + 0xc4, 0xb5, 0x45, 0x0, 0xff, 0xf7, 0xa, 0xd6, + 0x52, 0x88, 0x7, 0xff, 0x68, 0xe3, 0xbf, 0xff, + 0xf8, 0xdd, 0x4a, 0x20, 0x1f, 0xff, 0xf0, 0xf, + 0xfe, 0x3a, 0x4e, 0x67, 0xfd, 0xcc, 0x20, 0x1f, + 0xfe, 0x61, 0x23, 0x3f, 0xf8, 0x84, 0x3, 0xff, + 0xce, 0x6d, 0x33, 0xff, 0x3a, 0x8, 0x7, 0xff, + 0x99, 0xb1, 0x9b, 0xfe, 0xb3, 0x30, 0x7, 0xff, + 0xfc, 0x3, 0xff, 0xfe, 0x1, 0xff, 0xff, 0x0, + 0x0, + + /* U+0040 "@" */ + 0x0, 0xe1, 0x5a, 0xef, 0xff, 0xff, 0x16, 0xca, + 0x8, 0x7, 0xf0, 0xa4, 0xe5, 0x28, 0x80, 0x7f, + 0xf8, 0x89, 0xaf, 0x25, 0x4, 0x3, 0x96, 0xec, + 0xc4, 0x1, 0xff, 0xe8, 0x26, 0xbb, 0x28, 0x4, + 0x26, 0x20, 0x1f, 0x8d, 0xa6, 0x7f, 0xfb, 0x4c, + 0x60, 0x1f, 0x84, 0x3, 0xff, 0x86, 0xda, 0xcd, + 0xff, 0xda, 0xd5, 0x10, 0xf, 0xfe, 0x81, 0x23, + 0xbf, 0xff, 0x41, 0x48, 0x3, 0xff, 0xac, 0xdd, + 0x11, 0xff, 0xd0, 0xe7, 0x0, 0xff, 0xff, 0x80, + 0x7f, 0xff, 0xc0, 0x3f, 0xf9, 0xcb, 0x7f, 0xff, + 0xad, 0x84, 0x3, 0xff, 0xfe, 0x1, 0xff, 0xff, + 0x0, 0xff, 0xff, 0x80, 0x7f, 0xff, 0xc0, 0x3f, + 0xf8, 0xab, 0x7f, 0xff, 0xad, 0x84, 0x3, 0xe4, + 0xaf, 0xfa, 0xd8, 0x40, 0x3f, 0xff, 0xe0, 0x1f, + 0xff, 0xf0, 0xf, 0xf2, 0xf4, 0xcf, 0xff, 0x7f, + 0xdc, 0x3, 0xff, 0x8e, 0x28, 0xcd, 0xff, 0xdf, + 0x42, 0x0, 0xff, 0xe1, 0x3f, 0x3b, 0xff, 0xf9, + 0x14, 0x80, 0x21, 0x30, 0xf, 0xe2, 0x58, 0x8f, + 0xff, 0x27, 0x38, 0x6, 0x5a, 0xa2, 0x90, 0x7, + 0xff, 0xc8, 0x56, 0xbe, 0x94, 0x40, 0x3f, 0xfd, + 0xa0, + + /* U+0041 "A" */ + 0x0, 0xff, 0xe4, 0x9c, 0x67, 0xff, 0xff, 0x6e, + 0xd4, 0x3, 0xff, 0x8e, 0x6f, 0x98, 0x73, 0x0, + 0xff, 0xf6, 0x9b, 0xde, 0xc1, 0x80, 0x7f, 0xfb, + 0x49, 0xaf, 0x61, 0x4, 0x3, 0xff, 0xd8, 0x4d, + 0x79, 0x28, 0x20, 0x1f, 0xfc, 0x11, 0x45, 0x66, + 0xff, 0xe2, 0xa9, 0x88, 0x7, 0xff, 0x20, 0x9a, + 0xb2, 0x50, 0x40, 0x3f, 0xf8, 0x22, 0xb5, 0xf7, + 0x53, 0x3f, 0xfc, 0x5b, 0xa5, 0x0, 0xff, 0xe2, + 0x8a, 0xd6, 0x4a, 0x88, 0x7, 0xff, 0x4, 0x56, + 0xb2, 0x94, 0x40, 0x3f, 0xfb, 0x6f, 0xca, 0x20, + 0x1f, 0xfc, 0x11, 0x59, 0xca, 0x52, 0x0, 0xff, + 0xf6, 0xa, 0x4e, 0x53, 0x10, 0x7, 0xff, 0xb8, + 0xe6, 0x98, 0x80, 0x3f, 0xfe, 0x42, 0x1, 0xff, + 0xf4, 0x2a, 0xb9, 0x9f, 0xfe, 0x95, 0xd2, 0x80, + 0x7f, 0xf4, 0x84, 0xd5, 0x9b, 0xff, 0xa4, 0xa6, + 0x20, 0x1f, 0xff, 0xf0, 0xf, 0xff, 0xf8, 0x7, + 0xff, 0xfc, 0x2, 0x39, 0xef, 0xff, 0xfe, 0x97, + 0x4a, 0x0, 0x7f, 0xff, 0xc0, 0x3f, 0xff, 0xe0, + 0x1f, 0xff, 0xf0, 0xf, 0xff, 0xf8, 0x7, 0xff, + 0xfc, 0x3, 0xff, 0xae, + + /* U+0042 "B" */ + 0x16, 0xbf, 0xff, 0xff, 0x46, 0xca, 0x8, 0x7, + 0xff, 0xc8, 0x9a, 0xf2, 0x50, 0x40, 0x3f, 0xfe, + 0x44, 0xd7, 0x65, 0x0, 0xff, 0xfa, 0x8, 0x7, + 0xff, 0x18, 0x4d, 0x59, 0xbf, 0xfa, 0x4a, 0x62, + 0x1, 0xff, 0xd2, 0x5a, 0xb9, 0x9f, 0xfe, 0x95, + 0xd2, 0x80, 0x7f, 0xff, 0xc0, 0x3f, 0xff, 0xe0, + 0x1f, 0xff, 0xf0, 0x9, 0x6a, 0xe6, 0x7f, 0xfa, + 0x57, 0x4a, 0x1, 0xfe, 0x23, 0x60, 0xf, 0xfe, + 0x28, 0x9a, 0xb3, 0x7f, 0xf4, 0x94, 0xc4, 0x3, + 0xe2, 0x5a, 0xc8, 0x30, 0xf, 0xff, 0x71, 0xcf, + 0xd2, 0x88, 0x7, 0xff, 0xc0, 0xee, 0xc8, 0x20, + 0x1f, 0xff, 0x22, 0x6b, 0xc8, 0x41, 0x0, 0xff, + 0xe2, 0xa4, 0xf7, 0xff, 0xff, 0x4b, 0xa5, 0x0, + 0x3f, 0x89, 0xfd, 0x0, 0x3f, 0xff, 0xe0, 0x1f, + 0xff, 0xf0, 0xf, 0xff, 0xaa, 0xd5, 0xcc, 0xff, + 0xf4, 0xae, 0x94, 0x3, 0xff, 0xa4, 0x26, 0xac, + 0xdf, 0xfd, 0x25, 0x31, 0x0, 0xff, 0xff, 0x80, + 0x4, 0x3, 0xff, 0xe4, 0x4d, 0x76, 0x50, 0xf, + 0xff, 0x71, 0x2d, 0x64, 0xa0, 0x80, 0x60, + + /* U+0043 "C" */ + 0x0, 0xe1, 0x5a, 0xef, 0xff, 0xff, 0x16, 0xca, + 0x8, 0x7, 0xf0, 0xa4, 0xe5, 0x28, 0x80, 0x7f, + 0xf8, 0x89, 0xaf, 0x25, 0x4, 0x3, 0x96, 0xec, + 0xc4, 0x1, 0xff, 0xe8, 0x26, 0xbb, 0x28, 0x4, + 0x26, 0x20, 0x1f, 0xfe, 0xe1, 0x0, 0xff, 0xe3, + 0x9, 0xab, 0x37, 0xff, 0x49, 0x4c, 0x40, 0x3f, + 0xfa, 0x4b, 0x57, 0x33, 0xff, 0xd2, 0xba, 0x50, + 0xf, 0xff, 0xa8, 0x8f, 0xff, 0x4, 0x3, 0xff, + 0xce, 0x2d, 0x5d, 0xdf, 0xf5, 0x28, 0x7, 0xff, + 0xfc, 0x3, 0xff, 0xfe, 0x1, 0xff, 0xff, 0x0, + 0xff, 0xff, 0x80, 0x7f, 0xff, 0xc0, 0x3f, 0xff, + 0xe0, 0x1f, 0xff, 0xf0, 0xf, 0xff, 0x48, 0xad, + 0x6e, 0xff, 0xd2, 0xa0, 0x1f, 0xfe, 0x73, 0x12, + 0x2f, 0xfe, 0x0, 0x7, 0xff, 0x19, 0x6a, 0xe6, + 0x7f, 0xfa, 0x57, 0x4a, 0x1, 0xff, 0xd2, 0x13, + 0x56, 0x6f, 0xfe, 0x92, 0x98, 0x80, 0x7f, 0xf1, + 0x4, 0xc0, 0x3f, 0xfd, 0xe2, 0x1, 0xcb, 0x54, + 0x52, 0x0, 0xff, 0xf4, 0x13, 0x5d, 0x94, 0x3, + 0x85, 0x6b, 0xe9, 0x44, 0x3, 0xff, 0xc4, 0x4b, + 0x59, 0x28, 0x20, 0x18, + + /* U+0044 "D" */ + 0x16, 0xbf, 0xff, 0xfe, 0xde, 0x39, 0x80, 0x7f, + 0xfc, 0xce, 0x33, 0xe, 0x60, 0x1f, 0xff, 0x33, + 0x8d, 0xb6, 0x20, 0xf, 0xff, 0x90, 0xa4, 0xe5, + 0xb1, 0x0, 0x7f, 0xf3, 0x84, 0xd5, 0x9b, 0xff, + 0x8a, 0xa6, 0x20, 0x1f, 0xfc, 0x11, 0x49, 0xca, + 0x62, 0x0, 0xff, 0xe5, 0xad, 0x5c, 0xcf, 0xff, + 0x16, 0xb3, 0x14, 0xa2, 0x1, 0xff, 0xc1, 0x15, + 0x9c, 0xa5, 0x20, 0xf, 0xfe, 0xf1, 0x2d, 0x64, + 0xa0, 0x80, 0x7f, 0xf0, 0x45, 0x6b, 0xe9, 0x44, + 0x3, 0xff, 0xbc, 0x4d, 0x79, 0x28, 0x20, 0x1f, + 0xfc, 0x12, 0x5e, 0x40, 0xf, 0xff, 0x9, 0x35, + 0xe4, 0x20, 0x80, 0x7f, 0xfc, 0x89, 0xea, 0x4c, + 0x3, 0xff, 0xe8, 0x2e, 0x1, 0xff, 0xff, 0x0, + 0xff, 0xff, 0x80, 0x7f, 0xff, 0xc0, 0x3f, 0xff, + 0xe0, 0x1f, 0xff, 0xf0, 0xf, 0xff, 0xf8, 0x7, + 0xff, 0x79, 0x6a, 0xe6, 0x7f, 0xfa, 0x57, 0x4a, + 0x1, 0xff, 0xd2, 0x13, 0x56, 0x6f, 0xfe, 0x92, + 0x98, 0x80, 0x7f, 0xff, 0xc0, 0x2, 0x1, 0xff, + 0xf2, 0x26, 0xbb, 0x28, 0x7, 0xff, 0xb8, 0x96, + 0xb2, 0x50, 0x40, 0x30, + + /* U+0045 "E" */ + 0x16, 0xbf, 0xff, 0xff, 0x57, 0x4a, 0x0, 0x7f, + 0xff, 0xc0, 0x3f, 0xff, 0xe0, 0x1f, 0xfe, 0x1, + 0x35, 0x66, 0xff, 0xee, 0x3e, 0x30, 0x7, 0xff, + 0x9, 0x6a, 0xe6, 0x7f, 0xfb, 0xaa, 0x40, 0x1f, + 0xff, 0xf0, 0xf, 0xff, 0xf8, 0x7, 0xff, 0x81, + 0x6a, 0xe6, 0x7f, 0xfb, 0x2e, 0x82, 0x1, 0xff, + 0xc5, 0x13, 0x56, 0x6f, 0xfe, 0xcd, 0x99, 0x80, + 0x3f, 0xff, 0xe0, 0x1f, 0xff, 0xf0, 0xf, 0xff, + 0x1a, 0x4f, 0x7f, 0xff, 0xf6, 0x71, 0xc8, 0x3, + 0xff, 0xfe, 0x1, 0xff, 0xff, 0x0, 0xff, 0xf1, + 0xad, 0x5c, 0xcf, 0xff, 0x72, 0x14, 0x80, 0x3f, + 0xf8, 0x42, 0x6a, 0xcd, 0xff, 0xdd, 0xc6, 0x0, + 0xff, 0xff, 0x80, 0x7f, 0xff, 0xc0, 0x3f, 0xfa, + 0x40, + + /* U+0046 "F" */ + 0x16, 0xbf, 0xff, 0xff, 0x57, 0x4a, 0x0, 0x7f, + 0xff, 0xc0, 0x3f, 0xff, 0xe0, 0x1f, 0xfe, 0x1, + 0x35, 0x66, 0xff, 0xee, 0x3e, 0x30, 0x7, 0xff, + 0x9, 0x6a, 0xe6, 0x7f, 0xfb, 0xaa, 0x40, 0x1f, + 0xff, 0xf0, 0xf, 0xff, 0xf8, 0x7, 0xff, 0x81, + 0x6a, 0xe6, 0x7f, 0xfb, 0x2e, 0x82, 0x1, 0xff, + 0xc5, 0x13, 0x56, 0x6f, 0xfe, 0xcd, 0x99, 0x80, + 0x3f, 0xff, 0xe0, 0x1f, 0xff, 0xf0, 0xf, 0xff, + 0x1a, 0x4f, 0x7f, 0xff, 0xf6, 0x71, 0xc8, 0x3, + 0xff, 0xfe, 0x1, 0xff, 0xff, 0x0, 0xff, 0xff, + 0x80, 0x7f, 0xff, 0xc0, 0x3f, 0xff, 0xe0, 0x1f, + 0xff, 0xf0, 0xf, 0xfe, 0xa8, + + /* U+0047 "G" */ + 0x0, 0xe1, 0x5a, 0xef, 0xff, 0xff, 0x16, 0xca, + 0x8, 0x7, 0xf0, 0xa4, 0xe5, 0x28, 0x80, 0x7f, + 0xf8, 0x89, 0xaf, 0x25, 0x4, 0x3, 0x96, 0xec, + 0xc4, 0x1, 0xff, 0xe8, 0x26, 0xbb, 0x28, 0x4, + 0x26, 0x20, 0x1f, 0xfe, 0xe1, 0x0, 0xff, 0xe3, + 0x9, 0xab, 0x37, 0xff, 0x49, 0x4c, 0x40, 0x3f, + 0xfa, 0x4b, 0x57, 0x33, 0xff, 0xd2, 0xba, 0x50, + 0xf, 0xff, 0xf8, 0x7, 0xff, 0xa8, 0x5a, 0xff, + 0xff, 0xeb, 0x50, 0xf, 0xff, 0xf8, 0x7, 0xff, + 0xfc, 0x3, 0xff, 0x88, 0xd7, 0xff, 0xff, 0xd0, + 0xb5, 0x0, 0xff, 0xff, 0x80, 0x7f, 0xff, 0xc0, + 0x3f, 0xff, 0xe0, 0x1f, 0x2e, 0xb3, 0x7f, 0xf0, + 0x94, 0xc4, 0x3, 0xff, 0xc6, 0x6d, 0x33, 0xff, + 0xc2, 0xba, 0x50, 0xf, 0xff, 0xf8, 0x7, 0xff, + 0xfc, 0x3, 0xff, 0x80, 0xb5, 0x73, 0x3f, 0xfd, + 0x2b, 0xa5, 0x0, 0xff, 0xe9, 0x9, 0xab, 0x37, + 0xff, 0x49, 0x4c, 0x40, 0x3f, 0xf8, 0x82, 0x60, + 0x1f, 0xfe, 0xf1, 0x0, 0xe5, 0xaa, 0x29, 0x0, + 0x7f, 0xfa, 0x9, 0xae, 0xca, 0x1, 0xc2, 0xb5, + 0xf4, 0xa2, 0x1, 0xff, 0xe2, 0x25, 0xac, 0x94, + 0x10, 0xc, + + /* U+0048 "H" */ + 0x16, 0xbf, 0xff, 0xfa, 0xd8, 0x40, 0x3f, 0xfa, + 0x42, 0xd7, 0xff, 0xff, 0x5a, 0x80, 0x7f, 0xff, + 0xc0, 0x3f, 0xff, 0xe0, 0x1f, 0xff, 0xf0, 0xf, + 0xff, 0xf8, 0x7, 0xff, 0xfc, 0x3, 0xff, 0xfe, + 0x1, 0xff, 0xff, 0x0, 0xff, 0xe4, 0x2d, 0x5c, + 0xcf, 0xff, 0x4a, 0xe9, 0x40, 0x3f, 0xfa, 0x42, + 0x6a, 0xcd, 0xff, 0xd2, 0x53, 0x10, 0xf, 0xff, + 0xf8, 0x7, 0xff, 0xfc, 0x3, 0xff, 0xfe, 0x1, + 0x24, 0xf7, 0xff, 0xff, 0x4b, 0xa5, 0x0, 0x3f, + 0xff, 0xe0, 0x1f, 0xff, 0xf0, 0xf, 0xff, 0xf8, + 0x7, 0xff, 0xfc, 0x3, 0xff, 0xfe, 0x1, 0xff, + 0xff, 0x0, 0xff, 0xff, 0x80, 0x7f, 0xf1, 0xc0, + + /* U+0049 "I" */ + 0x16, 0xbf, 0xff, 0xfa, 0xd8, 0x40, 0x3f, 0xff, + 0xe0, 0x1f, 0xff, 0xf0, 0xf, 0xff, 0xf8, 0x7, + 0xff, 0xfc, 0x3, 0xff, 0xfe, 0x1, 0xff, 0xca, + + /* U+004A "J" */ + 0x0, 0xff, 0xe7, 0x8b, 0x67, 0xff, 0xff, 0x4e, + 0xd8, 0x3, 0xff, 0xfe, 0x1, 0xff, 0xff, 0x0, + 0xff, 0xff, 0x80, 0x62, 0xb6, 0x6f, 0xfe, 0x2a, + 0x98, 0x80, 0x7f, 0xf7, 0xc5, 0x1e, 0x67, 0xff, + 0x8b, 0x54, 0x50, 0xf, 0xff, 0xf8, 0x7, 0xff, + 0xfc, 0x3, 0xff, 0xfe, 0x1, 0xff, 0xff, 0x0, + 0xff, 0xf1, 0x92, 0xbb, 0xff, 0xca, 0x60, 0x1f, + 0xfe, 0x77, 0xf8, 0x8f, 0xfa, 0x50, 0x40, 0x3f, + 0xfe, 0xa6, 0x1, 0xff, 0xf3, 0x39, 0x93, 0x90, + 0x7, 0xff, 0x38, 0x9a, 0xa1, 0x0, 0x3f, 0xfa, + 0x62, 0x91, 0x96, 0xc4, 0x1, 0xff, 0xc8, 0x25, + 0xac, 0x95, 0x10, 0xf, 0xfe, 0x32, 0x7a, 0x88, + 0x7, 0xff, 0x4, 0x52, 0x72, 0xd8, 0x80, 0x3f, + 0xf8, 0x42, 0xb5, 0x94, 0xa2, 0x1, 0xff, 0xc1, + 0x14, 0xd4, 0x0, 0xc2, 0xb5, 0x94, 0xa2, 0x1, + 0xff, 0xc1, 0x14, 0x9c, 0xa5, 0x20, 0xf, 0xc2, + 0xb3, 0x94, 0xa2, 0x1, 0xff, 0xc1, 0x14, 0x9c, + 0xb6, 0x20, 0xf, 0x89, 0x6b, 0x25, 0x4, 0x3, + 0xff, 0x82, 0x2b, 0x59, 0x73, 0x3e, 0xbc, 0xa6, + 0x20, 0xf, 0xfe, 0x8, 0xa4, 0xe5, 0xb1, 0x0, + 0x7f, 0xf0, 0x49, 0xaf, 0x25, 0x4, 0x3, 0xff, + 0x82, 0x28, 0xcd, 0xe4, 0x20, 0xf, 0xfe, 0x8, + 0xa4, 0x6d, 0xb1, 0x0, 0x7f, 0xf1, 0xc9, 0xaf, + 0x21, 0x4, 0x3, 0xff, 0xa6, 0x71, 0xb6, 0xe6, + 0x1, 0xff, 0xcd, 0x27, 0xbd, 0x83, 0x10, 0xf, + 0xfe, 0x69, 0xbe, 0x61, 0xcc, 0x3, 0xff, 0xa6, + 0x6f, 0x9b, 0x6, 0x1, 0xff, 0xc8, 0x37, 0xcc, + 0x41, 0x80, 0x7f, 0xf1, 0x80, + + /* U+004B "K" */ + 0x16, 0xbf, 0xff, 0xfa, 0xd8, 0x40, 0x3f, 0xfa, + 0x42, 0xd7, 0xff, 0xff, 0x5a, 0x80, 0x7f, 0xff, + 0xc0, 0x3f, 0xff, 0xe0, 0x1f, 0xff, 0xf0, 0xf, + 0xfe, 0x60, 0xb8, 0x7, 0xff, 0xc4, 0xdf, 0x60, + 0xc0, 0x3f, 0xfd, 0xc6, 0xf7, 0xb0, 0x60, 0x1f, + 0xfe, 0xd2, 0x6b, 0xd8, 0x41, 0x0, 0xff, 0xe0, + 0x93, 0x7a, 0x0, 0x7f, 0xf6, 0xc9, 0x6b, 0x25, + 0x4, 0x3, 0xff, 0x82, 0x2b, 0x59, 0x28, 0x20, + 0x1f, 0xfc, 0x55, 0xab, 0x99, 0xff, 0xe3, 0x5e, + 0x52, 0x88, 0x7, 0xff, 0x4, 0x56, 0xb2, 0x94, + 0x40, 0x3f, 0xf9, 0x2, 0x6a, 0xcd, 0xff, 0xc6, + 0x41, 0x0, 0xff, 0xe0, 0x8a, 0x4e, 0x52, 0x90, + 0x7, 0xff, 0xb4, 0x9f, 0x6d, 0x88, 0x3, 0xff, + 0xe0, 0x4d, 0x2a, 0x40, 0x1f, 0xff, 0x21, 0x5a, + 0xca, 0x51, 0x0, 0xff, 0xe6, 0x24, 0xf7, 0xff, + 0xff, 0x1b, 0x65, 0x4, 0x3, 0xff, 0x82, 0x2b, + 0x59, 0x4a, 0x20, 0x1f, 0xfd, 0xe2, 0x6b, 0xc9, + 0x41, 0x0, 0xff, 0xe0, 0x92, 0xd6, 0x4a, 0x8, + 0x7, 0xff, 0x78, 0x9a, 0xf2, 0x50, 0x40, 0x3f, + 0xf8, 0x24, 0xd7, 0x65, 0x0, 0xff, 0xf0, 0x13, + 0x5e, 0x4a, 0x8, 0x7, 0xff, 0x4, 0x40, 0x3f, + 0xfc, 0x84, 0xd7, 0xae, 0x40, 0x1f, 0xff, 0x32, + 0xe6, 0x0, 0xff, 0xff, 0x80, 0x7f, 0xff, 0xc0, + 0x3f, 0xfe, 0x80, + + /* U+004C "L" */ + 0x16, 0xbf, 0xff, 0xfa, 0xd8, 0x40, 0x3f, 0xff, + 0xe0, 0x1f, 0xff, 0xf0, 0xf, 0xff, 0xf8, 0x7, + 0xff, 0xfc, 0x3, 0xff, 0xfe, 0x1, 0xff, 0xff, + 0x0, 0xff, 0xff, 0x80, 0x7f, 0xff, 0xc0, 0x3f, + 0xff, 0xe0, 0x1f, 0xff, 0xf0, 0xf, 0xff, 0xf8, + 0x7, 0xff, 0xfc, 0x3, 0xff, 0xfe, 0x1, 0xff, + 0xff, 0x0, 0xff, 0xe7, 0xad, 0x5c, 0xcf, 0xff, + 0x72, 0x14, 0x80, 0x3f, 0xf8, 0x42, 0x6a, 0xcd, + 0xff, 0xdd, 0xc6, 0x0, 0xff, 0xff, 0x80, 0x7f, + 0xff, 0xc0, 0x3f, 0xfa, 0x40, + + /* U+004D "M" */ + 0x16, 0xbf, 0xff, 0xfe, 0x5, 0xb1, 0x0, 0x7f, + 0xf7, 0x8e, 0x37, 0xff, 0xfe, 0xc7, 0x20, 0xf, + 0xfe, 0x22, 0x4f, 0x39, 0x0, 0x7f, 0xf6, 0x8e, + 0x79, 0xc8, 0x3, 0xff, 0xa8, 0x71, 0xd0, 0x40, + 0x1f, 0xfd, 0x51, 0x4a, 0xd6, 0x20, 0xf, 0xfe, + 0xc1, 0xbf, 0xc1, 0x80, 0x7f, 0xf4, 0x45, 0x6e, + 0x94, 0x40, 0x3f, 0xfb, 0x84, 0xfd, 0x6, 0x1, + 0xff, 0xcd, 0x16, 0xab, 0x51, 0x0, 0xff, 0xf0, + 0x13, 0xec, 0xa0, 0x7, 0xff, 0x24, 0x9b, 0x65, + 0x4, 0x3, 0xff, 0xc8, 0x2d, 0x54, 0x41, 0x0, + 0xff, 0xe2, 0x13, 0xf4, 0x98, 0x7, 0xff, 0x70, + 0x46, 0x0, 0xff, 0xa, 0xd5, 0xa8, 0x80, 0x7f, + 0xf0, 0xe, 0x3e, 0xc, 0x3, 0xfc, 0x23, 0x0, + 0x7f, 0xf4, 0x56, 0x6d, 0x88, 0x3, 0xfc, 0x2b, + 0x74, 0xa2, 0x1, 0xf8, 0xe3, 0x9c, 0x80, 0x3f, + 0xc2, 0xb7, 0x8, 0x1, 0xff, 0xd2, 0x14, 0x9e, + 0x72, 0x0, 0xff, 0xa, 0x55, 0x18, 0x40, 0x32, + 0x4e, 0xb9, 0x0, 0x7f, 0x85, 0x6e, 0xca, 0x60, + 0x1f, 0xfd, 0x63, 0x8e, 0x72, 0x0, 0xff, 0x92, + 0x75, 0xcd, 0x6a, 0x8c, 0x20, 0x1f, 0xe1, 0x5b, + 0xb2, 0x88, 0x7, 0xff, 0x68, 0xe3, 0x9c, 0x80, + 0x3f, 0xe3, 0x8c, 0xa5, 0x10, 0xf, 0xf0, 0xad, + 0xd9, 0x44, 0x3, 0xff, 0xbc, 0x71, 0xce, 0x40, + 0x1f, 0xfc, 0xb1, 0x5b, 0xb2, 0x88, 0x7, 0xff, + 0x88, 0xe3, 0x9c, 0x80, 0x3f, 0xf8, 0xe2, 0xb7, + 0x65, 0x10, 0xf, 0xff, 0x31, 0xc7, 0x39, 0x0, + 0x7f, 0xf0, 0xc5, 0x2e, 0xca, 0x20, 0x1f, 0xfe, + 0xa3, 0x8e, 0x83, 0x0, 0xff, 0x85, 0x2e, 0x94, + 0x40, 0x3f, 0xfd, 0xc6, 0xfb, 0x95, 0x5f, 0xd7, + 0xb4, 0xa2, 0x1, 0xff, 0xf2, 0x13, 0x55, 0xfe, + 0x43, 0x10, 0xf, 0xff, 0xf8, 0x7, 0xff, 0xfc, + 0x3, 0xff, 0xfe, 0x1, 0xff, 0xff, 0x0, 0xff, + 0xff, 0x80, 0x7f, 0xf8, 0xc0, + + /* U+004E "N" */ + 0x16, 0xbf, 0xff, 0xfe, 0x6, 0x39, 0x0, 0x7f, + 0xf4, 0x45, 0xaf, 0xff, 0xfe, 0xb5, 0x0, 0xff, + 0xe3, 0x1c, 0x7b, 0x98, 0x7, 0xff, 0xcc, 0xa3, + 0xa4, 0xc0, 0x3f, 0xfe, 0x64, 0xdb, 0x48, 0x20, + 0x1f, 0xff, 0x21, 0x5a, 0xb5, 0x10, 0xf, 0xff, + 0x90, 0xad, 0x51, 0x88, 0x3, 0xff, 0xe6, 0x93, + 0xce, 0x40, 0x1f, 0xff, 0x33, 0x8f, 0x83, 0x0, + 0xff, 0xf1, 0xa4, 0x4a, 0x88, 0x7, 0xfc, 0x4f, + 0xb2, 0x82, 0x1, 0xff, 0xe1, 0x17, 0xaa, 0x31, + 0x0, 0x7f, 0xc2, 0xd5, 0x6a, 0x20, 0x1f, 0xfe, + 0x24, 0x9e, 0x72, 0x0, 0xff, 0x85, 0x6a, 0x8c, + 0x40, 0x1f, 0xfe, 0x23, 0x8f, 0x83, 0x0, 0xff, + 0xe0, 0x24, 0xf3, 0x90, 0x7, 0xff, 0x88, 0x9f, + 0xa5, 0x0, 0x3f, 0xf8, 0x7, 0x1f, 0x6, 0x1, + 0xff, 0xe2, 0x26, 0xaa, 0x28, 0x80, 0x7f, 0xc4, + 0xfd, 0x28, 0x1, 0xff, 0xe2, 0x15, 0xba, 0x61, + 0x0, 0xff, 0x89, 0xaa, 0x8f, 0xce, 0x1, 0xff, + 0xe0, 0x14, 0x9d, 0x72, 0x0, 0xff, 0x85, 0x65, + 0xcc, 0x3, 0xff, 0xc6, 0x71, 0xf0, 0x60, 0x1f, + 0xff, 0x32, 0x7e, 0x94, 0x0, 0xff, 0xf9, 0x93, + 0x55, 0x10, 0x40, 0x3f, 0xfe, 0x42, 0xb5, 0x45, + 0x10, 0xf, 0xff, 0x90, 0xa5, 0x51, 0x88, 0x3, + 0xff, 0xe6, 0x93, 0xce, 0x40, 0x1f, 0xff, 0x33, + 0x8f, 0x83, 0x0, 0xff, 0xe2, 0x80, + + /* U+004F "O" */ + 0x0, 0xe1, 0x5a, 0xef, 0xff, 0xff, 0x16, 0xca, + 0x8, 0x7, 0xf0, 0xa4, 0xe5, 0x28, 0x80, 0x7f, + 0xf8, 0x89, 0xaf, 0x25, 0x4, 0x3, 0x96, 0xec, + 0xc4, 0x1, 0xff, 0xe8, 0x26, 0xbb, 0x28, 0x4, + 0x26, 0x20, 0x1f, 0xfe, 0xe1, 0x0, 0xff, 0xe3, + 0x9, 0xab, 0x37, 0xff, 0x49, 0x4c, 0x40, 0x3f, + 0xfa, 0x4b, 0x57, 0x33, 0xff, 0xd2, 0xba, 0x50, + 0xf, 0xff, 0xf8, 0x7, 0xff, 0xfc, 0x3, 0xff, + 0xfe, 0x1, 0xff, 0xff, 0x0, 0xff, 0xff, 0x80, + 0x7f, 0xff, 0xc0, 0x3f, 0xff, 0xe0, 0x1f, 0xff, + 0xf0, 0xf, 0xff, 0xf8, 0x7, 0xff, 0xfc, 0x3, + 0xff, 0xf8, 0xb5, 0x73, 0x3f, 0xfd, 0x2b, 0xa5, + 0x0, 0xff, 0xe9, 0x9, 0xab, 0x37, 0xff, 0x49, + 0x4c, 0x40, 0x3f, 0xf8, 0x82, 0x60, 0x1f, 0xfe, + 0xf1, 0x0, 0xe5, 0xaa, 0x29, 0x0, 0x7f, 0xfa, + 0x9, 0xae, 0xca, 0x1, 0xc2, 0xb5, 0xf4, 0xa2, + 0x1, 0xff, 0xe2, 0x25, 0xac, 0x94, 0x10, 0xc, + + /* U+0050 "P" */ + 0x16, 0xbf, 0xff, 0xff, 0x46, 0xca, 0x8, 0x7, + 0xff, 0xc8, 0x9a, 0xf2, 0x50, 0x40, 0x3f, 0xfe, + 0x44, 0xd7, 0x65, 0x0, 0xff, 0xfa, 0x8, 0x7, + 0xff, 0x18, 0x4d, 0x59, 0xbf, 0xfa, 0x4a, 0x62, + 0x1, 0xff, 0xd2, 0x5a, 0xb9, 0x9f, 0xfe, 0x95, + 0xd2, 0x80, 0x7f, 0xff, 0xc0, 0x3f, 0xff, 0xe0, + 0x1f, 0xff, 0xf0, 0xf, 0xff, 0xf8, 0x7, 0xff, + 0xc1, 0x6a, 0xe6, 0x7f, 0xfa, 0x57, 0x4a, 0x1, + 0xff, 0xd2, 0x13, 0x56, 0x6f, 0xfe, 0x92, 0x98, + 0x80, 0x7f, 0xff, 0xc0, 0x2, 0x1, 0xff, 0xf2, + 0x26, 0xbb, 0x28, 0x7, 0xff, 0xb8, 0x96, 0xf2, + 0x50, 0x40, 0x3f, 0xf8, 0xc9, 0x3d, 0xff, 0xff, + 0xda, 0xda, 0x41, 0x0, 0xff, 0xff, 0x80, 0x7f, + 0xff, 0xc0, 0x3f, 0xff, 0xe0, 0x1f, 0xff, 0xf0, + 0xf, 0xff, 0xf8, 0x7, 0xff, 0x40, + + /* U+0051 "Q" */ + 0x0, 0xe1, 0x5a, 0xef, 0xff, 0xff, 0x16, 0xca, + 0x8, 0x7, 0xf0, 0xa4, 0xe5, 0x28, 0x80, 0x7f, + 0xf8, 0x89, 0xaf, 0x25, 0x4, 0x3, 0x96, 0xec, + 0xc4, 0x1, 0xff, 0xe8, 0x26, 0xbb, 0x28, 0x4, + 0x26, 0x20, 0x1f, 0xfe, 0xe1, 0x0, 0xff, 0xe3, + 0x9, 0xab, 0x37, 0xff, 0x49, 0x4c, 0x40, 0x3f, + 0xfa, 0x4b, 0x57, 0x33, 0xff, 0xd2, 0xba, 0x50, + 0xf, 0xff, 0xf8, 0x7, 0xff, 0xfc, 0x3, 0xff, + 0xfe, 0x1, 0xff, 0xff, 0x0, 0xff, 0xff, 0x80, + 0x7f, 0xff, 0xc0, 0x3f, 0xfd, 0x42, 0x45, 0xff, + 0xc3, 0x10, 0xe, 0x17, 0x0, 0xff, 0xef, 0x1a, + 0x4e, 0x6e, 0xff, 0xf0, 0x32, 0x5d, 0xd5, 0x90, + 0x60, 0x1f, 0xfd, 0xe2, 0x6a, 0xa3, 0x10, 0x7, + 0xf8, 0x9a, 0x20, 0xa4, 0x1, 0xff, 0xe2, 0x14, + 0x9f, 0x94, 0x10, 0xf, 0xfe, 0x58, 0x9b, 0xfa, + 0x0, 0x7f, 0xf5, 0x44, 0x40, 0x3, 0x0, 0xff, + 0xe3, 0x89, 0xbd, 0xfe, 0x42, 0x8, 0x7, 0xff, + 0x15, 0x6a, 0xe6, 0x7f, 0xea, 0xcf, 0xc9, 0x42, + 0x0, 0xff, 0xe3, 0x25, 0xec, 0x20, 0x80, 0x7f, + 0xf2, 0x44, 0xd5, 0x9b, 0xfe, 0x53, 0x10, 0xf, + 0xfe, 0x52, 0x5d, 0x31, 0x0, 0x7e, 0x13, 0x0, + 0xff, 0xf4, 0xa, 0x4f, 0xca, 0x8, 0x7, 0x96, + 0xa8, 0xa4, 0x1, 0xff, 0xd5, 0x25, 0x9d, 0xd5, + 0xa8, 0x80, 0x7f, 0x89, 0xaa, 0x8c, 0x40, 0x1c, + 0x2b, 0x5f, 0x4a, 0x20, 0x1f, 0xfc, 0xe1, 0x59, + 0xcd, 0xa6, 0x22, 0x25, 0x6c, 0x18, 0x7, 0xf8, + 0x52, 0x7e, 0x50, 0x40, + + /* U+0052 "R" */ + 0x16, 0xbf, 0xff, 0xff, 0x46, 0xca, 0x8, 0x7, + 0xff, 0xc8, 0x9a, 0xf2, 0x50, 0x40, 0x3f, 0xfe, + 0x44, 0xd7, 0x65, 0x0, 0xff, 0xfa, 0x8, 0x7, + 0xff, 0x18, 0x4d, 0x59, 0xbf, 0xfa, 0x4a, 0x62, + 0x1, 0xff, 0xd2, 0x5a, 0xb9, 0x9f, 0xfe, 0x95, + 0xd2, 0x80, 0x7f, 0xff, 0xc0, 0x3f, 0xff, 0xe0, + 0x1f, 0xff, 0xf0, 0xf, 0xff, 0xf8, 0x7, 0xff, + 0xc1, 0x6a, 0xe6, 0x7f, 0xfa, 0x57, 0x4a, 0x1, + 0xff, 0xd2, 0x13, 0x56, 0x6f, 0xfe, 0x92, 0x98, + 0x80, 0x7f, 0xff, 0xc0, 0x2, 0x1, 0xff, 0xf2, + 0x26, 0xbb, 0x28, 0x7, 0xff, 0xb8, 0x96, 0xf2, + 0x50, 0x40, 0x3f, 0xf8, 0xc9, 0x3d, 0xff, 0xff, + 0xc6, 0xd9, 0x41, 0x0, 0xff, 0xf9, 0x13, 0x5e, + 0x42, 0x8, 0x7, 0xff, 0x4, 0x96, 0xf2, 0x50, + 0x40, 0x3f, 0xfb, 0xc4, 0xf7, 0xb0, 0x60, 0x1f, + 0xfc, 0x22, 0x6b, 0xb2, 0x80, 0x7f, 0xf8, 0xd, + 0xf3, 0xe, 0x60, 0x1f, 0xfc, 0x21, 0x0, 0xff, + 0xf2, 0x1c, 0x6d, 0xa8, 0x80, 0x7f, 0xfc, 0x85, + 0x71, 0x40, 0x3f, 0xff, 0xe0, 0x1f, 0x0, + + /* U+0053 "S" */ + 0x0, 0xe1, 0x5a, 0xef, 0xff, 0xff, 0x16, 0xca, + 0x8, 0x7, 0xf0, 0xa4, 0xe5, 0x28, 0x80, 0x7f, + 0xf8, 0x89, 0xaf, 0x25, 0x4, 0x3, 0x96, 0xec, + 0xc4, 0x1, 0xff, 0xe8, 0x26, 0xbb, 0x28, 0x4, + 0x26, 0x20, 0x1f, 0xfe, 0xe1, 0x0, 0xff, 0xe3, + 0x9, 0xab, 0x37, 0xff, 0x49, 0x4c, 0x40, 0x3f, + 0xfa, 0x4b, 0x57, 0x33, 0xff, 0xd2, 0xba, 0x50, + 0xf, 0xff, 0xf8, 0x7, 0xff, 0xa8, 0x5a, 0xff, + 0xff, 0xeb, 0x50, 0xf, 0xff, 0xf8, 0x7, 0xe5, + 0xab, 0x99, 0xff, 0xed, 0x3a, 0x8, 0x7, 0xff, + 0x28, 0x4d, 0x59, 0xbf, 0xfb, 0x51, 0x79, 0x28, + 0x20, 0x1f, 0xff, 0x22, 0x6b, 0xd7, 0x30, 0x8, + 0x57, 0xc, 0x40, 0x3f, 0xfd, 0x67, 0x8c, 0x1, + 0x8d, 0xf3, 0xed, 0xcc, 0x40, 0x3f, 0xfe, 0x22, + 0x91, 0x9d, 0xff, 0xff, 0xda, 0xe9, 0x40, 0xf, + 0xff, 0xf8, 0x7, 0xe5, 0x9c, 0xcf, 0xfa, 0x54, + 0x3, 0xff, 0xcc, 0x26, 0x46, 0x7f, 0xf1, 0x18, + 0x80, 0x7f, 0xfc, 0xd6, 0xae, 0x67, 0xff, 0xa5, + 0x74, 0xa0, 0x1f, 0xfd, 0x21, 0x35, 0x66, 0xff, + 0xe9, 0x29, 0x88, 0x7, 0xff, 0x10, 0x4c, 0x3, + 0xff, 0xde, 0x20, 0x1c, 0xb5, 0x45, 0x20, 0xf, + 0xff, 0x41, 0x35, 0xd9, 0x40, 0x38, 0x56, 0xbe, + 0x94, 0x40, 0x3f, 0xfc, 0x44, 0xb5, 0x92, 0x82, + 0x1, 0x80, + + /* U+0054 "T" */ + 0x5, 0xaf, 0xff, 0xff, 0x75, 0xb0, 0x7, 0xff, + 0xfc, 0x3, 0xff, 0xfe, 0x1, 0xff, 0xe8, 0x6c, + 0x66, 0xff, 0xe4, 0xa9, 0x80, 0x7f, 0xf0, 0x9, + 0x19, 0xbf, 0xf9, 0x38, 0xa0, 0x18, 0xda, 0x67, + 0xff, 0x93, 0x8, 0x40, 0x1f, 0xf2, 0x7c, 0xcf, + 0xff, 0x25, 0xcc, 0x3, 0xff, 0xfe, 0x1, 0xff, + 0xff, 0x0, 0xff, 0xff, 0x80, 0x7f, 0xff, 0xc0, + 0x3f, 0xff, 0xe0, 0x1f, 0xff, 0xf0, 0xf, 0xff, + 0xf8, 0x7, 0xff, 0xfc, 0x3, 0xff, 0xfe, 0x1, + 0xff, 0xff, 0x0, 0xff, 0xff, 0x80, 0x7f, 0xff, + 0xc0, 0x3f, 0xff, 0xe0, 0x1f, 0xff, 0xf0, 0xf, + 0xff, 0xf8, + + /* U+0055 "U" */ + 0x16, 0xbf, 0xff, 0xfa, 0xd8, 0x40, 0x3f, 0xfa, + 0x42, 0xd7, 0xff, 0xff, 0x5a, 0x80, 0x7f, 0xff, + 0xc0, 0x3f, 0xff, 0xe0, 0x1f, 0xff, 0xf0, 0xf, + 0xff, 0xf8, 0x7, 0xff, 0xfc, 0x3, 0xff, 0xfe, + 0x1, 0xff, 0xff, 0x0, 0xff, 0xff, 0x80, 0x7f, + 0xff, 0xc0, 0x3f, 0xff, 0xe0, 0x1f, 0xff, 0xf0, + 0xf, 0xff, 0xf8, 0x7, 0xff, 0xfc, 0x3, 0xff, + 0xfe, 0x1, 0xff, 0xff, 0x0, 0xff, 0xe1, 0x2d, + 0x5c, 0xcf, 0xff, 0x4a, 0xe9, 0x40, 0x3f, 0xfa, + 0x42, 0x6a, 0xcd, 0xff, 0xd2, 0x53, 0x10, 0xf, + 0xfe, 0x20, 0x98, 0x7, 0xff, 0xbc, 0x40, 0x39, + 0x6a, 0x8a, 0x40, 0x1f, 0xfe, 0x82, 0x6b, 0xb2, + 0x80, 0x70, 0xad, 0x7d, 0x28, 0x80, 0x7f, 0xf8, + 0x89, 0x6b, 0x25, 0x4, 0x3, 0x0, + + /* U+0056 "V" */ + 0x0, 0x9a, 0xff, 0xff, 0xec, 0x61, 0x0, 0xff, + 0xe9, 0xb, 0x5f, 0xff, 0xfd, 0x6a, 0x1, 0xff, + 0xff, 0x0, 0xff, 0xff, 0x80, 0x7f, 0xff, 0xc0, + 0x3f, 0xff, 0xe0, 0x1f, 0xff, 0xf0, 0xf, 0xff, + 0xf8, 0x7, 0xff, 0xfc, 0x3, 0xff, 0xfe, 0x1, + 0xff, 0xff, 0x0, 0xff, 0xff, 0x80, 0x7f, 0xfc, + 0x4, 0x3, 0xff, 0xaa, 0xe0, 0x1f, 0xfd, 0x23, + 0x9a, 0x62, 0x0, 0xff, 0xe7, 0x13, 0x54, 0x18, + 0x7, 0xff, 0x4c, 0x52, 0x72, 0x98, 0x80, 0x3f, + 0xf9, 0x4, 0xd5, 0x92, 0x82, 0x1, 0xff, 0xc6, + 0x4e, 0x51, 0x0, 0xff, 0xe0, 0x8a, 0xce, 0x52, + 0x90, 0x7, 0xff, 0x8, 0x96, 0xb2, 0x54, 0x40, + 0x3f, 0xf8, 0x22, 0xbc, 0xe0, 0x18, 0x96, 0xb2, + 0x50, 0x40, 0x3f, 0xf8, 0x22, 0xb5, 0xf4, 0xa2, + 0x1, 0xf8, 0x56, 0xbe, 0x94, 0x40, 0x3f, 0xf8, + 0x22, 0x93, 0x94, 0xa4, 0x1, 0xf1, 0x35, 0xe4, + 0xa0, 0x80, 0x7f, 0xf0, 0x49, 0x6b, 0x2e, 0x67, + 0xd7, 0x94, 0xa4, 0x1, 0xff, 0xc1, 0x14, 0x9c, + 0xb6, 0x20, 0xf, 0xfe, 0x9, 0x35, 0xec, 0x20, + 0x80, 0x7f, 0xf0, 0x49, 0x19, 0xbc, 0x84, 0x1, + 0xff, 0xc1, 0x14, 0x9c, 0xb6, 0x20, 0xf, 0xfe, + 0x39, 0xbd, 0xec, 0x18, 0x7, 0xff, 0x4c, 0x4e, + 0x36, 0xd8, 0x80, 0x3f, 0xf9, 0xa6, 0xf9, 0x88, + 0x30, 0xf, 0xfe, 0x71, 0xc6, 0xe3, 0x98, 0x7, + 0xff, 0x4c, 0xdf, 0x30, 0xe6, 0x1, 0xff, 0xc8, + 0x37, 0xcc, 0x39, 0x80, 0x7f, 0xf1, 0x0, + + /* U+0057 "W" */ + 0x0, 0x9a, 0xff, 0xff, 0xec, 0x61, 0x0, 0xff, + 0xe2, 0x9c, 0x6f, 0xff, 0xfb, 0xa4, 0xc0, 0x3f, + 0xf8, 0xcb, 0x5f, 0xff, 0xf6, 0x30, 0x80, 0x7f, + 0xff, 0xc0, 0x3f, 0xff, 0xe0, 0x1f, 0xff, 0xf0, + 0xf, 0xff, 0xf8, 0x7, 0xff, 0xfc, 0x3, 0xff, + 0xfe, 0x1, 0xff, 0xff, 0x0, 0xff, 0xff, 0x80, + 0x7f, 0xff, 0xc0, 0x3f, 0xff, 0xe0, 0x1f, 0xff, + 0xf0, 0xf, 0xff, 0xf8, 0x7, 0xff, 0xfc, 0x3, + 0xff, 0xfe, 0x1, 0xff, 0xc0, 0x10, 0xf, 0xfe, + 0x41, 0x80, 0x7f, 0xf0, 0x1c, 0x3, 0xff, 0x8e, + 0x20, 0x1f, 0xfd, 0x33, 0xa8, 0x40, 0xf, 0xfe, + 0x10, 0xac, 0x30, 0x80, 0x7f, 0x85, 0xbd, 0x88, + 0x3, 0xff, 0x84, 0x71, 0x4, 0x0, 0xff, 0xea, + 0x13, 0x55, 0x14, 0x40, 0x3f, 0x89, 0xaa, 0x88, + 0x20, 0x1f, 0xfc, 0x14, 0x9e, 0x73, 0x0, 0xff, + 0x24, 0xf3, 0x90, 0x7, 0xff, 0x1d, 0x35, 0x0, + 0x3f, 0xf8, 0x22, 0xb5, 0x46, 0x20, 0xe, 0x27, + 0xe9, 0x40, 0xf, 0xfe, 0x31, 0xc7, 0x49, 0x80, + 0x70, 0xa5, 0x51, 0x88, 0x3, 0xff, 0x82, 0x76, + 0x82, 0x1, 0x89, 0xaa, 0xd8, 0x80, 0x3f, 0xf8, + 0x29, 0x3c, 0xe4, 0x7, 0x1f, 0x6, 0x1, 0xff, + 0xca, 0x26, 0xda, 0x51, 0x12, 0xd5, 0x14, 0x40, + 0x3f, 0xf8, 0x2, 0xb5, 0xae, 0x40, 0x1f, 0xa, + 0x4f, 0xc1, 0x80, 0x7f, 0xf0, 0x4e, 0x33, 0xb5, + 0xc8, 0x3, 0xff, 0x9c, 0x2b, 0x7f, 0xea, 0x41, + 0x0, 0xff, 0xe0, 0x13, 0xed, 0x28, 0x80, 0x7f, + 0xf0, 0x9, 0xf6, 0x94, 0x40, 0x3f, 0xf8, 0x2, + 0x30, 0x7, 0xff, 0x0, 0x9e, 0xf2, 0xc, 0x3, + 0xff, 0x80, 0x23, 0x0, 0x7f, 0xf0, 0x5, 0x27, + 0xe0, 0xc0, 0x3f, 0xf8, 0xa2, 0xb5, 0xb0, 0x60, + 0x1f, 0xfc, 0xa1, 0x49, 0xf8, 0x43, 0x7d, 0xa5, + 0x10, 0xf, 0xfe, 0x51, 0x35, 0x5b, 0x10, 0x7, + 0xff, 0x28, 0xdf, 0x69, 0x44, 0x3, 0xff, 0x8a, + 0x4d, 0x56, 0xc4, 0x1, 0x85, 0x6b, 0x60, 0xc0, + 0x3f, 0xf8, 0xc7, 0x1f, 0x28, 0x1, 0xff, 0xcf, + 0x15, 0xad, 0x72, 0x0, 0xff, 0xe0, 0xa4, 0xfc, + 0xa0, 0x7, 0xf8, 0xdf, 0x69, 0x44, 0x3, 0xff, + 0x80, 0x2b, 0x7a, 0xe4, 0x1, 0xff, 0xc2, + + /* U+0058 "X" */ + 0x0, 0x9a, 0xff, 0xff, 0xec, 0x61, 0x0, 0xff, + 0xe9, 0xb, 0x5f, 0xff, 0xfd, 0x6a, 0x1, 0xff, + 0xff, 0x0, 0xff, 0xff, 0x80, 0x7f, 0xfd, 0x84, + 0xc0, 0x3f, 0xfa, 0x62, 0xe0, 0x1f, 0xfd, 0x23, + 0x8e, 0x83, 0x0, 0xff, 0xe7, 0x1b, 0xec, 0x18, + 0x7, 0xff, 0x50, 0xdf, 0x6d, 0xc8, 0x3, 0xff, + 0x90, 0x4f, 0x7b, 0x6, 0x1, 0xff, 0xc7, 0x7e, + 0x62, 0x0, 0xff, 0xe0, 0x8a, 0x46, 0x5b, 0x10, + 0x7, 0xff, 0x8, 0x9a, 0xf2, 0x10, 0x40, 0x3f, + 0xf8, 0x24, 0xde, 0x80, 0x18, 0x56, 0x72, 0x94, + 0x40, 0x3f, 0xf8, 0x22, 0x93, 0x94, 0xa4, 0x1, + 0xf8, 0x56, 0xb2, 0x50, 0x40, 0x3f, 0xf8, 0x22, + 0xb5, 0x92, 0x82, 0x1, 0xf0, 0xad, 0x65, 0x28, + 0x80, 0x7f, 0xf0, 0x45, 0x6b, 0xee, 0x67, 0xd7, + 0x94, 0xa2, 0x1, 0xff, 0xc1, 0x14, 0xac, 0xa5, + 0x10, 0xf, 0xfe, 0x9, 0x2d, 0x64, 0xa0, 0x80, + 0x7f, 0xf0, 0x49, 0x19, 0xbc, 0x84, 0x1, 0xff, + 0xc1, 0x14, 0x9c, 0xb5, 0x20, 0xf, 0xfe, 0x39, + 0x35, 0xeb, 0x90, 0x7, 0xff, 0x50, 0x9f, 0x6d, + 0x88, 0x3, 0xff, 0x96, 0x4b, 0x2c, 0x40, 0x1f, + 0xfd, 0x42, 0x69, 0x62, 0x0, 0xff, 0xe4, 0x8a, + 0xd6, 0x52, 0x88, 0x7, 0xff, 0x58, 0x56, 0x72, + 0x94, 0x40, 0x3f, 0xf8, 0x62, 0xb5, 0x94, 0xa2, + 0x1, 0xff, 0xc1, 0x15, 0x9d, 0xff, 0xf6, 0xca, + 0x8, 0x7, 0xff, 0x4, 0x56, 0xb2, 0x94, 0x40, + 0x3f, 0x85, 0x6b, 0x29, 0x48, 0x3, 0xff, 0x82, + 0x29, 0x39, 0x4c, 0x40, 0x1e, 0x26, 0xbc, 0x94, + 0x10, 0xf, 0xfe, 0x9, 0x2d, 0x64, 0xa8, 0x80, + 0x72, 0xdd, 0x29, 0x0, 0x7f, 0xf0, 0x45, 0x27, + 0x2d, 0x88, 0x3, 0xff, 0x80, 0x4d, 0x79, 0x28, + 0x20, 0x1f, 0xfc, 0x12, 0x6a, 0xb5, 0x0, 0xc6, + 0x20, 0x1f, 0xfc, 0x11, 0x49, 0xcb, 0x62, 0x0, + 0xff, 0xe3, 0x13, 0x5e, 0x4a, 0x8, 0x7, 0xff, + 0x4, 0x40, 0x3f, 0xf8, 0xc4, 0xfb, 0x6c, 0x40, + 0x1f, 0xfc, 0xc2, 0x6b, 0xd7, 0x20, 0xf, 0xfe, + 0x90, 0xf1, 0x0, 0x7f, 0xf4, 0x8b, 0x98, 0x3, + 0xff, 0xfe, 0x1, 0xff, 0xff, 0x0, 0xff, 0xf9, + 0x0, + + /* U+0059 "Y" */ + 0x0, 0x2d, 0xff, 0xff, 0xd8, 0xc2, 0x1, 0xff, + 0xd3, 0x6b, 0xff, 0xff, 0xad, 0x80, 0x3f, 0xff, + 0xe0, 0x1f, 0xff, 0xf0, 0xf, 0xff, 0xf8, 0x7, + 0xff, 0xfc, 0x3, 0xff, 0xc6, 0x3c, 0x40, 0x1f, + 0xfd, 0x22, 0x17, 0x0, 0xff, 0xe9, 0x13, 0xe6, + 0xcb, 0x10, 0x7, 0xff, 0x28, 0x96, 0x73, 0x60, + 0xc0, 0x3f, 0xf8, 0xa2, 0x42, 0x1, 0xff, 0xc1, + 0x26, 0x9d, 0xd5, 0x39, 0x88, 0x7, 0xff, 0x0, + 0x4d, 0xeb, 0x75, 0x4c, 0x60, 0x1f, 0xfc, 0x11, + 0x22, 0x0, 0x64, 0x9f, 0xc8, 0x41, 0x0, 0xff, + 0xe0, 0x92, 0xc6, 0x7d, 0xc2, 0x8, 0x6, 0x24, + 0x8c, 0xfc, 0x85, 0x20, 0xf, 0xfe, 0x8, 0xa4, + 0x67, 0xca, 0x0, 0x78, 0x4d, 0xef, 0xf2, 0x14, + 0x40, 0x3f, 0xf8, 0x22, 0x8f, 0x7f, 0x95, 0x4d, + 0xd5, 0xb9, 0x88, 0x7, 0xff, 0x4, 0x52, 0x33, + 0xed, 0xcc, 0x40, 0x3f, 0xf8, 0x2, 0x6f, 0x5f, + 0x92, 0xa4, 0x1, 0xff, 0xc1, 0x13, 0x55, 0x10, + 0x7, 0xff, 0x8, 0x92, 0x33, 0xed, 0xcc, 0x40, + 0x3f, 0xf9, 0x2, 0x6d, 0x5b, 0xa9, 0x52, 0x0, + 0xff, 0xe6, 0x12, 0xce, 0x6d, 0xb9, 0x88, 0x7, + 0xff, 0x44, 0x9a, 0xb7, 0x52, 0xc4, 0x1, 0xff, + 0xc4, 0x25, 0x9c, 0xda, 0x63, 0x0, 0xff, 0xed, + 0x13, 0x4e, 0xdb, 0x8, 0x7, 0xfc, 0xb5, 0xb4, + 0xc6, 0x1, 0xff, 0xe2, 0x71, 0x30, 0xf, 0xf0, + 0x9b, 0x0, 0x7f, 0xff, 0xc0, 0x3f, 0xff, 0xe0, + 0x1f, 0xff, 0xf0, 0xf, 0xff, 0xf8, 0x7, 0xff, + 0xfc, 0x3, 0xff, 0xfe, 0x1, 0xff, 0xd9, + + /* U+005A "Z" */ + 0x0, 0x2d, 0xff, 0xff, 0xfb, 0xad, 0x80, 0x3f, + 0xff, 0xe0, 0x1f, 0xff, 0xf0, 0xf, 0xff, 0x43, + 0x63, 0x37, 0xff, 0x65, 0x4c, 0x40, 0x3f, 0xf8, + 0xc2, 0x60, 0x18, 0xde, 0x67, 0xff, 0xaf, 0x5c, + 0xc6, 0x20, 0x1f, 0xfc, 0x33, 0x7c, 0xb5, 0x0, + 0xff, 0xed, 0x1b, 0xe6, 0xc1, 0x80, 0x7f, 0xf0, + 0x89, 0xef, 0x60, 0xc4, 0x3, 0xff, 0xb0, 0x4f, + 0x7b, 0x6, 0x20, 0x1f, 0xfc, 0x12, 0x6b, 0xc8, + 0x41, 0x0, 0xff, 0xec, 0x13, 0x5e, 0x42, 0x8, + 0x7, 0xff, 0x4, 0x9a, 0xf2, 0x50, 0x40, 0x3f, + 0xfb, 0x4, 0xd7, 0x92, 0x82, 0x1, 0xff, 0xc1, + 0x25, 0xac, 0x94, 0x10, 0xf, 0xfe, 0xc1, 0x2d, + 0x64, 0xa0, 0x80, 0x7f, 0xf0, 0x45, 0x6b, 0x29, + 0x44, 0x3, 0xff, 0xb0, 0x2b, 0x59, 0x4a, 0x20, + 0x1f, 0xfc, 0x11, 0x5a, 0xca, 0x51, 0x0, 0xff, + 0xec, 0xa, 0xce, 0x52, 0x88, 0x7, 0xff, 0x4, + 0x52, 0x72, 0x94, 0x80, 0x3f, 0xfb, 0x2, 0x93, + 0x94, 0xc4, 0x1, 0xff, 0xc1, 0x14, 0x9c, 0xb6, + 0x20, 0xf, 0xfe, 0xc0, 0xa4, 0xe5, 0xb1, 0x0, + 0x7f, 0xf0, 0x45, 0x23, 0x2d, 0x88, 0x3, 0xff, + 0xb0, 0x29, 0x19, 0x6c, 0x40, 0x1f, 0xfc, 0x23, + 0x8d, 0xb7, 0x20, 0xf, 0xfe, 0xc0, 0x9c, 0x6d, + 0xb9, 0x0, 0x7f, 0xf0, 0x8e, 0x33, 0xe, 0x60, + 0x1f, 0xfd, 0x93, 0x7d, 0xc7, 0x30, 0xf, 0xfe, + 0x11, 0xbe, 0x61, 0xcc, 0x3, 0xff, 0xb4, 0x95, + 0x90, 0x60, 0x1f, 0xfc, 0x31, 0x36, 0x1a, 0x99, + 0xff, 0xeb, 0xb1, 0x80, 0x61, 0x10, 0x7, 0xff, + 0x18, 0x4d, 0x59, 0xbf, 0xfb, 0x3a, 0xa0, 0x1f, + 0xff, 0xf0, 0xf, 0xff, 0xf8, 0x7, 0xff, 0x98, + + /* U+005B "[" */ + 0x3, 0x79, 0x9f, 0xfe, 0x64, 0x28, 0x89, 0x71, + 0x9b, 0xff, 0x98, 0xba, 0x40, 0x1f, 0xff, 0xf0, + 0xf, 0xfe, 0x8a, 0x4f, 0x7f, 0xff, 0xb6, 0xc, + 0x3, 0xff, 0xfe, 0x1, 0xff, 0xff, 0x0, 0xff, + 0xff, 0x80, 0x7f, 0xff, 0xc0, 0x3f, 0xff, 0xe0, + 0x1f, 0xff, 0xf0, 0xf, 0xff, 0xf2, 0xec, 0x47, + 0xfc, 0xe8, 0x20, 0x1f, 0xfc, 0x21, 0x46, 0x77, + 0xff, 0x56, 0x10, 0x7, 0xff, 0xfc, 0x3, 0xff, + 0x86, + + /* U+005C "\\" */ + 0x0, 0xb, 0x5f, 0xff, 0xff, 0x7, 0xa5, 0x0, + 0x3f, 0xfb, 0xa2, 0xd0, 0xe4, 0x1, 0xff, 0xb, + 0x43, 0x90, 0x7, 0xff, 0x74, 0xe2, 0xa, 0x20, + 0x1f, 0xf1, 0xcc, 0x28, 0x80, 0x7f, 0xf7, 0x56, + 0x20, 0x60, 0x1f, 0xf0, 0xac, 0x49, 0x80, 0x7f, + 0xf7, 0x49, 0xbd, 0xc8, 0x3, 0xfe, 0x27, 0xf7, + 0x20, 0xf, 0xfe, 0xe9, 0xcc, 0x20, 0x7, 0xff, + 0x0, 0xe6, 0x14, 0x40, 0x3f, 0xfb, 0x82, 0xb3, + 0x6, 0x1, 0xff, 0xa, 0xc4, 0x98, 0x7, 0xff, + 0x74, 0x9e, 0x18, 0x40, 0x3f, 0xe2, 0x78, 0x61, + 0x0, 0xff, 0xee, 0xa4, 0x41, 0x0, 0x3f, 0xf8, + 0x9, 0x16, 0x80, 0x1f, 0xfd, 0xd1, 0x69, 0x72, + 0x0, 0xff, 0x85, 0x66, 0x8, 0x3, 0xff, 0xba, + 0x51, 0x2a, 0x20, 0x1f, 0xf1, 0x3c, 0xb0, 0x80, + 0x7f, 0xf7, 0x52, 0xe0, 0xc0, 0x3f, 0xf8, 0x9, + 0x10, 0x40, 0xf, 0xfe, 0xe8, 0xb7, 0xb9, 0x0, + 0x7f, 0xc2, 0xd0, 0xe4, 0x1, 0xff, 0xdd, 0x39, + 0x85, 0x10, 0xf, 0xf8, 0xe2, 0x54, 0x40, 0x3f, + 0xfb, 0x82, 0xb1, 0x26, 0x1, 0xff, 0xc0, 0x4b, + 0x83, 0x0, 0xff, 0xee, 0x93, 0xc3, 0x8, 0x7, + 0xfc, 0x2d, 0xee, 0x40, 0x1f, 0xfd, 0xd4, 0x8b, + 0x40, 0xf, 0xfe, 0x1, 0xcc, 0x28, 0x80, 0x7f, + 0xf7, 0x5, 0x65, 0xc8, 0x3, 0xfe, 0x15, 0x89, + 0x30, 0xf, 0xfe, 0xe9, 0x44, 0xa8, 0x80, 0x7f, + 0xc4, 0xfe, 0xc4, 0x1, 0xff, 0xdd, 0x4b, 0x84, + 0x0, 0xff, 0xe0, 0x1c, 0x41, 0x0, 0x3f, 0xfb, + 0xa2, 0xd0, 0xe4, 0x1, 0xff, 0xa, 0xcc, 0x18, + 0x7, 0xff, 0x74, 0xe6, 0x14, 0x40, 0x3f, 0xe2, + 0x78, 0x61, 0x0, 0xff, 0xee, 0xa, 0xc4, 0x98, + 0x7, 0xff, 0x1, 0x22, 0x8, 0x1, 0x0, + + /* U+005D "]" */ + 0x0, 0x1b, 0xcc, 0xff, 0xf3, 0x21, 0x48, 0x3, + 0x36, 0x33, 0x7f, 0xf3, 0x74, 0x40, 0x3f, 0xff, + 0xe0, 0x1f, 0xfd, 0x5, 0xbf, 0xff, 0xfb, 0x1c, + 0x40, 0x3f, 0xff, 0xe0, 0x1f, 0xff, 0xf0, 0xf, + 0xff, 0xf8, 0x7, 0xff, 0xfc, 0x3, 0xff, 0xfe, + 0x1, 0xff, 0xff, 0x0, 0xff, 0xff, 0x80, 0x7f, + 0xfa, 0x4d, 0xa2, 0x3f, 0xe9, 0x41, 0x0, 0xff, + 0xe2, 0xb6, 0xbb, 0xff, 0xca, 0x60, 0x1f, 0xff, + 0xf0, 0xf, 0xfe, 0xe0, + + /* U+005E "^" */ + 0x0, 0xff, 0xe8, 0x1a, 0xa0, 0x80, 0x7f, 0xfa, + 0x92, 0x76, 0xae, 0x98, 0x40, 0x3f, 0xfc, 0xa2, + 0xb5, 0x46, 0x10, 0x2, 0x4e, 0xb9, 0x0, 0x7f, + 0xf8, 0x45, 0x6e, 0xca, 0x20, 0x1e, 0x38, 0xe7, + 0x20, 0xf, 0xfe, 0xe8, 0xad, 0x5a, 0x88, 0x7, + 0xf8, 0xe3, 0xe0, 0xc0, 0x3f, 0xfb, 0x24, 0xd5, + 0x44, 0x10, 0xf, 0xfe, 0x11, 0x3f, 0x49, 0x80, + 0x7f, 0xf5, 0x49, 0xfa, 0x50, 0x3, 0xff, 0x8e, + 0x4d, 0xb2, 0x82, 0x1, 0xff, 0xd0, 0x27, 0xe8, + 0x30, 0xf, 0xfe, 0x58, 0xb5, 0x5a, 0x88, 0x7, + 0xff, 0x30, 0xe3, 0xe0, 0xc0, 0x3f, 0xf8, 0x6, + 0x88, 0x10, 0xf, 0xf8, 0x56, 0xe9, 0x44, 0x3, + 0xff, 0x90, 0x71, 0xce, 0x40, 0x1f, 0xfc, 0x3, + 0x9e, 0xbb, 0x53, 0x10, 0x7, 0xfc, 0x29, 0x54, + 0x62, 0x0, 0xff, 0xe2, 0x24, 0xf3, 0x90, 0x7, + 0xfc, 0x29, 0x5a, 0xc4, 0x0, 0x49, 0xe7, 0x20, + 0xf, 0xfe, 0x2, 0x4f, 0x39, 0x0, 0x7f, 0xc2, + 0x93, 0x4c, 0x40, 0x1f, 0xf0, 0xad, 0xd2, 0x88, + 0x7, 0x8e, 0x3e, 0xc, 0x3, 0xff, 0x80, 0x71, + 0xce, 0x40, 0x1f, 0xa, 0xdd, 0x30, 0x80, 0x7f, + 0xc4, 0xd5, 0x45, 0x10, 0xf, 0xf1, 0x3e, 0xca, + 0x8, 0x7, 0xfc, 0x71, 0xf0, 0x60, 0x10, + + /* U+005F "_" */ + 0x0, 0x13, 0x44, 0x7f, 0xf6, 0x1d, 0x4, 0x3, + 0x3e, 0x3b, 0xff, 0xf6, 0x2c, 0xc0, 0x3f, 0xff, + 0xe0, 0x1f, 0xff, 0x30, + + /* U+0060 "`" */ + 0x0, 0xff, 0xe9, 0xb, 0x5f, 0x64, 0xb1, 0x88, + 0x7, 0xff, 0x30, 0x4d, 0xa7, 0x3b, 0x97, 0xc, + 0x62, 0x1, 0xff, 0xcc, 0x14, 0x79, 0xce, 0xdb, + 0x85, 0x31, 0x0, 0xff, 0xe6, 0x12, 0x3d, 0x67, + 0x6d, 0x3a, 0x90, 0x6, 0x15, 0xd5, 0x20, 0xf, + 0xfe, 0x21, 0x2c, 0x56, 0xf5, 0xb1, 0x1, 0xb5, + 0x6f, 0x6d, 0x3a, 0x10, 0x7, 0xff, 0xc, 0x5b, + 0x84, 0x3, 0x84, 0x96, 0x2f, 0x7b, 0x29, 0xd0, + 0x80, 0x3f, 0xf9, 0x82, 0x6b, 0x17, 0xbd, 0x92, + 0xe8, 0x20, 0x1f, 0xfc, 0xc1, 0x36, 0x8b, 0xee, + 0x64, 0xb2, 0x70, 0x80, + + /* U+0061 "a" */ + 0x0, 0xff, 0xe4, 0x9c, 0x67, 0xff, 0xff, 0x6e, + 0xd4, 0x3, 0xff, 0x8e, 0x6f, 0x98, 0x73, 0x0, + 0xff, 0xf6, 0x9b, 0xde, 0xc1, 0x80, 0x7f, 0xfb, + 0x49, 0xaf, 0x61, 0x4, 0x3, 0xff, 0xd8, 0x4d, + 0x79, 0x28, 0x20, 0x1f, 0xfc, 0x11, 0x45, 0x66, + 0xff, 0xe2, 0xa9, 0x88, 0x7, 0xff, 0x20, 0x9a, + 0xb2, 0x50, 0x40, 0x3f, 0xf8, 0x22, 0xb5, 0xf7, + 0x53, 0x3f, 0xfc, 0x5b, 0xa5, 0x0, 0xff, 0xe2, + 0x8a, 0xd6, 0x4a, 0x88, 0x7, 0xff, 0x4, 0x56, + 0xb2, 0x94, 0x40, 0x3f, 0xfb, 0x6f, 0xca, 0x20, + 0x1f, 0xfc, 0x11, 0x59, 0xca, 0x52, 0x0, 0xff, + 0xf6, 0xa, 0x4e, 0x53, 0x10, 0x7, 0xff, 0xb8, + 0xe6, 0x98, 0x80, 0x3f, 0xfe, 0x42, 0x1, 0xff, + 0xf4, 0x2a, 0xb9, 0x9f, 0xfe, 0x95, 0xd2, 0x80, + 0x7f, 0xf4, 0x84, 0xd5, 0x9b, 0xff, 0xa4, 0xa6, + 0x20, 0x1f, 0xff, 0xf0, 0xf, 0xff, 0xf8, 0x7, + 0xff, 0xfc, 0x2, 0x39, 0xef, 0xff, 0xfe, 0x97, + 0x4a, 0x0, 0x7f, 0xff, 0xc0, 0x3f, 0xff, 0xe0, + 0x1f, 0xff, 0xf0, 0xf, 0xff, 0xf8, 0x7, 0xff, + 0xfc, 0x3, 0xff, 0xae, + + /* U+0062 "b" */ + 0x16, 0xbf, 0xff, 0xff, 0x46, 0xca, 0x8, 0x7, + 0xff, 0xc8, 0x9a, 0xf2, 0x50, 0x40, 0x3f, 0xfe, + 0x44, 0xd7, 0x65, 0x0, 0xff, 0xfa, 0x8, 0x7, + 0xff, 0x18, 0x4d, 0x59, 0xbf, 0xfa, 0x4a, 0x62, + 0x1, 0xff, 0xd2, 0x5a, 0xb9, 0x9f, 0xfe, 0x95, + 0xd2, 0x80, 0x7f, 0xff, 0xc0, 0x3f, 0xff, 0xe0, + 0x1f, 0xff, 0xf0, 0x9, 0x6a, 0xe6, 0x7f, 0xfa, + 0x57, 0x4a, 0x1, 0xfe, 0x23, 0x60, 0xf, 0xfe, + 0x28, 0x9a, 0xb3, 0x7f, 0xf4, 0x94, 0xc4, 0x3, + 0xe2, 0x5a, 0xc8, 0x30, 0xf, 0xff, 0x71, 0xcf, + 0xd2, 0x88, 0x7, 0xff, 0xc0, 0xee, 0xc8, 0x20, + 0x1f, 0xff, 0x22, 0x6b, 0xc8, 0x41, 0x0, 0xff, + 0xe2, 0xa4, 0xf7, 0xff, 0xff, 0x4b, 0xa5, 0x0, + 0x3f, 0x89, 0xfd, 0x0, 0x3f, 0xff, 0xe0, 0x1f, + 0xff, 0xf0, 0xf, 0xff, 0xaa, 0xd5, 0xcc, 0xff, + 0xf4, 0xae, 0x94, 0x3, 0xff, 0xa4, 0x26, 0xac, + 0xdf, 0xfd, 0x25, 0x31, 0x0, 0xff, 0xff, 0x80, + 0x4, 0x3, 0xff, 0xe4, 0x4d, 0x76, 0x50, 0xf, + 0xff, 0x71, 0x2d, 0x64, 0xa0, 0x80, 0x60, + + /* U+0063 "c" */ + 0x0, 0xe1, 0x5a, 0xef, 0xff, 0xff, 0x16, 0xca, + 0x8, 0x7, 0xf0, 0xa4, 0xe5, 0x28, 0x80, 0x7f, + 0xf8, 0x89, 0xaf, 0x25, 0x4, 0x3, 0x96, 0xec, + 0xc4, 0x1, 0xff, 0xe8, 0x26, 0xbb, 0x28, 0x4, + 0x26, 0x20, 0x1f, 0xfe, 0xe1, 0x0, 0xff, 0xe3, + 0x9, 0xab, 0x37, 0xff, 0x49, 0x4c, 0x40, 0x3f, + 0xfa, 0x4b, 0x57, 0x33, 0xff, 0xd2, 0xba, 0x50, + 0xf, 0xff, 0xa8, 0x8f, 0xff, 0x4, 0x3, 0xff, + 0xce, 0x2d, 0x5d, 0xdf, 0xf5, 0x28, 0x7, 0xff, + 0xfc, 0x3, 0xff, 0xfe, 0x1, 0xff, 0xff, 0x0, + 0xff, 0xff, 0x80, 0x7f, 0xff, 0xc0, 0x3f, 0xff, + 0xe0, 0x1f, 0xff, 0xf0, 0xf, 0xff, 0x48, 0xad, + 0x6e, 0xff, 0xd2, 0xa0, 0x1f, 0xfe, 0x73, 0x12, + 0x2f, 0xfe, 0x0, 0x7, 0xff, 0x19, 0x6a, 0xe6, + 0x7f, 0xfa, 0x57, 0x4a, 0x1, 0xff, 0xd2, 0x13, + 0x56, 0x6f, 0xfe, 0x92, 0x98, 0x80, 0x7f, 0xf1, + 0x4, 0xc0, 0x3f, 0xfd, 0xe2, 0x1, 0xcb, 0x54, + 0x52, 0x0, 0xff, 0xf4, 0x13, 0x5d, 0x94, 0x3, + 0x85, 0x6b, 0xe9, 0x44, 0x3, 0xff, 0xc4, 0x4b, + 0x59, 0x28, 0x20, 0x18, + + /* U+0064 "d" */ + 0x16, 0xbf, 0xff, 0xfe, 0xde, 0x39, 0x80, 0x7f, + 0xfc, 0xce, 0x33, 0xe, 0x60, 0x1f, 0xff, 0x33, + 0x8d, 0xb6, 0x20, 0xf, 0xff, 0x90, 0xa4, 0xe5, + 0xb1, 0x0, 0x7f, 0xf3, 0x84, 0xd5, 0x9b, 0xff, + 0x8a, 0xa6, 0x20, 0x1f, 0xfc, 0x11, 0x49, 0xca, + 0x62, 0x0, 0xff, 0xe5, 0xad, 0x5c, 0xcf, 0xff, + 0x16, 0xb3, 0x14, 0xa2, 0x1, 0xff, 0xc1, 0x15, + 0x9c, 0xa5, 0x20, 0xf, 0xfe, 0xf1, 0x2d, 0x64, + 0xa0, 0x80, 0x7f, 0xf0, 0x45, 0x6b, 0xe9, 0x44, + 0x3, 0xff, 0xbc, 0x4d, 0x79, 0x28, 0x20, 0x1f, + 0xfc, 0x12, 0x5e, 0x40, 0xf, 0xff, 0x9, 0x35, + 0xe4, 0x20, 0x80, 0x7f, 0xfc, 0x89, 0xea, 0x4c, + 0x3, 0xff, 0xe8, 0x2e, 0x1, 0xff, 0xff, 0x0, + 0xff, 0xff, 0x80, 0x7f, 0xff, 0xc0, 0x3f, 0xff, + 0xe0, 0x1f, 0xff, 0xf0, 0xf, 0xff, 0xf8, 0x7, + 0xff, 0x79, 0x6a, 0xe6, 0x7f, 0xfa, 0x57, 0x4a, + 0x1, 0xff, 0xd2, 0x13, 0x56, 0x6f, 0xfe, 0x92, + 0x98, 0x80, 0x7f, 0xff, 0xc0, 0x2, 0x1, 0xff, + 0xf2, 0x26, 0xbb, 0x28, 0x7, 0xff, 0xb8, 0x96, + 0xb2, 0x50, 0x40, 0x30, + + /* U+0065 "e" */ + 0x16, 0xbf, 0xff, 0xff, 0x57, 0x4a, 0x0, 0x7f, + 0xff, 0xc0, 0x3f, 0xff, 0xe0, 0x1f, 0xfe, 0x1, + 0x35, 0x66, 0xff, 0xee, 0x3e, 0x30, 0x7, 0xff, + 0x9, 0x6a, 0xe6, 0x7f, 0xfb, 0xaa, 0x40, 0x1f, + 0xff, 0xf0, 0xf, 0xff, 0xf8, 0x7, 0xff, 0x81, + 0x6a, 0xe6, 0x7f, 0xfb, 0x2e, 0x82, 0x1, 0xff, + 0xc5, 0x13, 0x56, 0x6f, 0xfe, 0xcd, 0x99, 0x80, + 0x3f, 0xff, 0xe0, 0x1f, 0xff, 0xf0, 0xf, 0xff, + 0x1a, 0x4f, 0x7f, 0xff, 0xf6, 0x71, 0xc8, 0x3, + 0xff, 0xfe, 0x1, 0xff, 0xff, 0x0, 0xff, 0xf1, + 0xad, 0x5c, 0xcf, 0xff, 0x72, 0x14, 0x80, 0x3f, + 0xf8, 0x42, 0x6a, 0xcd, 0xff, 0xdd, 0xc6, 0x0, + 0xff, 0xff, 0x80, 0x7f, 0xff, 0xc0, 0x3f, 0xfa, + 0x40, + + /* U+0066 "f" */ + 0x16, 0xbf, 0xff, 0xff, 0x57, 0x4a, 0x0, 0x7f, + 0xff, 0xc0, 0x3f, 0xff, 0xe0, 0x1f, 0xfe, 0x1, + 0x35, 0x66, 0xff, 0xee, 0x3e, 0x30, 0x7, 0xff, + 0x9, 0x6a, 0xe6, 0x7f, 0xfb, 0xaa, 0x40, 0x1f, + 0xff, 0xf0, 0xf, 0xff, 0xf8, 0x7, 0xff, 0x81, + 0x6a, 0xe6, 0x7f, 0xfb, 0x2e, 0x82, 0x1, 0xff, + 0xc5, 0x13, 0x56, 0x6f, 0xfe, 0xcd, 0x99, 0x80, + 0x3f, 0xff, 0xe0, 0x1f, 0xff, 0xf0, 0xf, 0xff, + 0x1a, 0x4f, 0x7f, 0xff, 0xf6, 0x71, 0xc8, 0x3, + 0xff, 0xfe, 0x1, 0xff, 0xff, 0x0, 0xff, 0xff, + 0x80, 0x7f, 0xff, 0xc0, 0x3f, 0xff, 0xe0, 0x1f, + 0xff, 0xf0, 0xf, 0xfe, 0xa8, + + /* U+0067 "g" */ + 0x0, 0xe1, 0x5a, 0xef, 0xff, 0xff, 0x16, 0xca, + 0x8, 0x7, 0xf0, 0xa4, 0xe5, 0x28, 0x80, 0x7f, + 0xf8, 0x89, 0xaf, 0x25, 0x4, 0x3, 0x96, 0xec, + 0xc4, 0x1, 0xff, 0xe8, 0x26, 0xbb, 0x28, 0x4, + 0x26, 0x20, 0x1f, 0xfe, 0xe1, 0x0, 0xff, 0xe3, + 0x9, 0xab, 0x37, 0xff, 0x49, 0x4c, 0x40, 0x3f, + 0xfa, 0x4b, 0x57, 0x33, 0xff, 0xd2, 0xba, 0x50, + 0xf, 0xff, 0xf8, 0x7, 0xff, 0xa8, 0x5a, 0xff, + 0xff, 0xeb, 0x50, 0xf, 0xff, 0xf8, 0x7, 0xff, + 0xfc, 0x3, 0xff, 0x88, 0xd7, 0xff, 0xff, 0xd0, + 0xb5, 0x0, 0xff, 0xff, 0x80, 0x7f, 0xff, 0xc0, + 0x3f, 0xff, 0xe0, 0x1f, 0x2e, 0xb3, 0x7f, 0xf0, + 0x94, 0xc4, 0x3, 0xff, 0xc6, 0x6d, 0x33, 0xff, + 0xc2, 0xba, 0x50, 0xf, 0xff, 0xf8, 0x7, 0xff, + 0xfc, 0x3, 0xff, 0x80, 0xb5, 0x73, 0x3f, 0xfd, + 0x2b, 0xa5, 0x0, 0xff, 0xe9, 0x9, 0xab, 0x37, + 0xff, 0x49, 0x4c, 0x40, 0x3f, 0xf8, 0x82, 0x60, + 0x1f, 0xfe, 0xf1, 0x0, 0xe5, 0xaa, 0x29, 0x0, + 0x7f, 0xfa, 0x9, 0xae, 0xca, 0x1, 0xc2, 0xb5, + 0xf4, 0xa2, 0x1, 0xff, 0xe2, 0x25, 0xac, 0x94, + 0x10, 0xc, + + /* U+0068 "h" */ + 0x16, 0xbf, 0xff, 0xfa, 0xd8, 0x40, 0x3f, 0xfa, + 0x42, 0xd7, 0xff, 0xff, 0x5a, 0x80, 0x7f, 0xff, + 0xc0, 0x3f, 0xff, 0xe0, 0x1f, 0xff, 0xf0, 0xf, + 0xff, 0xf8, 0x7, 0xff, 0xfc, 0x3, 0xff, 0xfe, + 0x1, 0xff, 0xff, 0x0, 0xff, 0xe4, 0x2d, 0x5c, + 0xcf, 0xff, 0x4a, 0xe9, 0x40, 0x3f, 0xfa, 0x42, + 0x6a, 0xcd, 0xff, 0xd2, 0x53, 0x10, 0xf, 0xff, + 0xf8, 0x7, 0xff, 0xfc, 0x3, 0xff, 0xfe, 0x1, + 0x24, 0xf7, 0xff, 0xff, 0x4b, 0xa5, 0x0, 0x3f, + 0xff, 0xe0, 0x1f, 0xff, 0xf0, 0xf, 0xff, 0xf8, + 0x7, 0xff, 0xfc, 0x3, 0xff, 0xfe, 0x1, 0xff, + 0xff, 0x0, 0xff, 0xff, 0x80, 0x7f, 0xf1, 0xc0, + + /* U+0069 "i" */ + 0x16, 0xbf, 0xff, 0xfa, 0xd8, 0x40, 0x3f, 0xff, + 0xe0, 0x1f, 0xff, 0xf0, 0xf, 0xff, 0xf8, 0x7, + 0xff, 0xfc, 0x3, 0xff, 0xfe, 0x1, 0xff, 0xca, + + /* U+006A "j" */ + 0x0, 0xff, 0xe7, 0x8b, 0x67, 0xff, 0xff, 0x4e, + 0xd8, 0x3, 0xff, 0xfe, 0x1, 0xff, 0xff, 0x0, + 0xff, 0xff, 0x80, 0x62, 0xb6, 0x6f, 0xfe, 0x2a, + 0x98, 0x80, 0x7f, 0xf7, 0xc5, 0x1e, 0x67, 0xff, + 0x8b, 0x54, 0x50, 0xf, 0xff, 0xf8, 0x7, 0xff, + 0xfc, 0x3, 0xff, 0xfe, 0x1, 0xff, 0xff, 0x0, + 0xff, 0xf1, 0x92, 0xbb, 0xff, 0xca, 0x60, 0x1f, + 0xfe, 0x77, 0xf8, 0x8f, 0xfa, 0x50, 0x40, 0x3f, + 0xfe, 0xa6, 0x1, 0xff, 0xf3, 0x39, 0x93, 0x90, + 0x7, 0xff, 0x38, 0x9a, 0xa1, 0x0, 0x3f, 0xfa, + 0x62, 0x91, 0x96, 0xc4, 0x1, 0xff, 0xc8, 0x25, + 0xac, 0x95, 0x10, 0xf, 0xfe, 0x32, 0x7a, 0x88, + 0x7, 0xff, 0x4, 0x52, 0x72, 0xd8, 0x80, 0x3f, + 0xf8, 0x42, 0xb5, 0x94, 0xa2, 0x1, 0xff, 0xc1, + 0x14, 0xd4, 0x0, 0xc2, 0xb5, 0x94, 0xa2, 0x1, + 0xff, 0xc1, 0x14, 0x9c, 0xa5, 0x20, 0xf, 0xc2, + 0xb3, 0x94, 0xa2, 0x1, 0xff, 0xc1, 0x14, 0x9c, + 0xb6, 0x20, 0xf, 0x89, 0x6b, 0x25, 0x4, 0x3, + 0xff, 0x82, 0x2b, 0x59, 0x73, 0x3e, 0xbc, 0xa6, + 0x20, 0xf, 0xfe, 0x8, 0xa4, 0xe5, 0xb1, 0x0, + 0x7f, 0xf0, 0x49, 0xaf, 0x25, 0x4, 0x3, 0xff, + 0x82, 0x28, 0xcd, 0xe4, 0x20, 0xf, 0xfe, 0x8, + 0xa4, 0x6d, 0xb1, 0x0, 0x7f, 0xf1, 0xc9, 0xaf, + 0x21, 0x4, 0x3, 0xff, 0xa6, 0x71, 0xb6, 0xe6, + 0x1, 0xff, 0xcd, 0x27, 0xbd, 0x83, 0x10, 0xf, + 0xfe, 0x69, 0xbe, 0x61, 0xcc, 0x3, 0xff, 0xa6, + 0x6f, 0x9b, 0x6, 0x1, 0xff, 0xc8, 0x37, 0xcc, + 0x41, 0x80, 0x7f, 0xf1, 0x80, + + /* U+006B "k" */ + 0x16, 0xbf, 0xff, 0xfa, 0xd8, 0x40, 0x3f, 0xfa, + 0x42, 0xd7, 0xff, 0xff, 0x5a, 0x80, 0x7f, 0xff, + 0xc0, 0x3f, 0xff, 0xe0, 0x1f, 0xff, 0xf0, 0xf, + 0xfe, 0x60, 0xb8, 0x7, 0xff, 0xc4, 0xdf, 0x60, + 0xc0, 0x3f, 0xfd, 0xc6, 0xf7, 0xb0, 0x60, 0x1f, + 0xfe, 0xd2, 0x6b, 0xd8, 0x41, 0x0, 0xff, 0xe0, + 0x93, 0x7a, 0x0, 0x7f, 0xf6, 0xc9, 0x6b, 0x25, + 0x4, 0x3, 0xff, 0x82, 0x2b, 0x59, 0x28, 0x20, + 0x1f, 0xfc, 0x55, 0xab, 0x99, 0xff, 0xe3, 0x5e, + 0x52, 0x88, 0x7, 0xff, 0x4, 0x56, 0xb2, 0x94, + 0x40, 0x3f, 0xf9, 0x2, 0x6a, 0xcd, 0xff, 0xc6, + 0x41, 0x0, 0xff, 0xe0, 0x8a, 0x4e, 0x52, 0x90, + 0x7, 0xff, 0xb4, 0x9f, 0x6d, 0x88, 0x3, 0xff, + 0xe0, 0x4d, 0x2a, 0x40, 0x1f, 0xff, 0x21, 0x5a, + 0xca, 0x51, 0x0, 0xff, 0xe6, 0x24, 0xf7, 0xff, + 0xff, 0x1b, 0x65, 0x4, 0x3, 0xff, 0x82, 0x2b, + 0x59, 0x4a, 0x20, 0x1f, 0xfd, 0xe2, 0x6b, 0xc9, + 0x41, 0x0, 0xff, 0xe0, 0x92, 0xd6, 0x4a, 0x8, + 0x7, 0xff, 0x78, 0x9a, 0xf2, 0x50, 0x40, 0x3f, + 0xf8, 0x24, 0xd7, 0x65, 0x0, 0xff, 0xf0, 0x13, + 0x5e, 0x4a, 0x8, 0x7, 0xff, 0x4, 0x40, 0x3f, + 0xfc, 0x84, 0xd7, 0xae, 0x40, 0x1f, 0xff, 0x32, + 0xe6, 0x0, 0xff, 0xff, 0x80, 0x7f, 0xff, 0xc0, + 0x3f, 0xfe, 0x80, + + /* U+006C "l" */ + 0x16, 0xbf, 0xff, 0xfa, 0xd8, 0x40, 0x3f, 0xff, + 0xe0, 0x1f, 0xff, 0xf0, 0xf, 0xff, 0xf8, 0x7, + 0xff, 0xfc, 0x3, 0xff, 0xfe, 0x1, 0xff, 0xff, + 0x0, 0xff, 0xff, 0x80, 0x7f, 0xff, 0xc0, 0x3f, + 0xff, 0xe0, 0x1f, 0xff, 0xf0, 0xf, 0xff, 0xf8, + 0x7, 0xff, 0xfc, 0x3, 0xff, 0xfe, 0x1, 0xff, + 0xff, 0x0, 0xff, 0xe7, 0xad, 0x5c, 0xcf, 0xff, + 0x72, 0x14, 0x80, 0x3f, 0xf8, 0x42, 0x6a, 0xcd, + 0xff, 0xdd, 0xc6, 0x0, 0xff, 0xff, 0x80, 0x7f, + 0xff, 0xc0, 0x3f, 0xfa, 0x40, + + /* U+006D "m" */ + 0x16, 0xbf, 0xff, 0xfe, 0x5, 0xb1, 0x0, 0x7f, + 0xf7, 0x8e, 0x37, 0xff, 0xfe, 0xc7, 0x20, 0xf, + 0xfe, 0x22, 0x4f, 0x39, 0x0, 0x7f, 0xf6, 0x8e, + 0x79, 0xc8, 0x3, 0xff, 0xa8, 0x71, 0xd0, 0x40, + 0x1f, 0xfd, 0x51, 0x4a, 0xd6, 0x20, 0xf, 0xfe, + 0xc1, 0xbf, 0xc1, 0x80, 0x7f, 0xf4, 0x45, 0x6e, + 0x94, 0x40, 0x3f, 0xfb, 0x84, 0xfd, 0x6, 0x1, + 0xff, 0xcd, 0x16, 0xab, 0x51, 0x0, 0xff, 0xf0, + 0x13, 0xec, 0xa0, 0x7, 0xff, 0x24, 0x9b, 0x65, + 0x4, 0x3, 0xff, 0xc8, 0x2d, 0x54, 0x41, 0x0, + 0xff, 0xe2, 0x13, 0xf4, 0x98, 0x7, 0xff, 0x70, + 0x46, 0x0, 0xff, 0xa, 0xd5, 0xa8, 0x80, 0x7f, + 0xf0, 0xe, 0x3e, 0xc, 0x3, 0xfc, 0x23, 0x0, + 0x7f, 0xf4, 0x56, 0x6d, 0x88, 0x3, 0xfc, 0x2b, + 0x74, 0xa2, 0x1, 0xf8, 0xe3, 0x9c, 0x80, 0x3f, + 0xc2, 0xb7, 0x8, 0x1, 0xff, 0xd2, 0x14, 0x9e, + 0x72, 0x0, 0xff, 0xa, 0x55, 0x18, 0x40, 0x32, + 0x4e, 0xb9, 0x0, 0x7f, 0x85, 0x6e, 0xca, 0x60, + 0x1f, 0xfd, 0x63, 0x8e, 0x72, 0x0, 0xff, 0x92, + 0x75, 0xcd, 0x6a, 0x8c, 0x20, 0x1f, 0xe1, 0x5b, + 0xb2, 0x88, 0x7, 0xff, 0x68, 0xe3, 0x9c, 0x80, + 0x3f, 0xe3, 0x8c, 0xa5, 0x10, 0xf, 0xf0, 0xad, + 0xd9, 0x44, 0x3, 0xff, 0xbc, 0x71, 0xce, 0x40, + 0x1f, 0xfc, 0xb1, 0x5b, 0xb2, 0x88, 0x7, 0xff, + 0x88, 0xe3, 0x9c, 0x80, 0x3f, 0xf8, 0xe2, 0xb7, + 0x65, 0x10, 0xf, 0xff, 0x31, 0xc7, 0x39, 0x0, + 0x7f, 0xf0, 0xc5, 0x2e, 0xca, 0x20, 0x1f, 0xfe, + 0xa3, 0x8e, 0x83, 0x0, 0xff, 0x85, 0x2e, 0x94, + 0x40, 0x3f, 0xfd, 0xc6, 0xfb, 0x95, 0x5f, 0xd7, + 0xb4, 0xa2, 0x1, 0xff, 0xf2, 0x13, 0x55, 0xfe, + 0x43, 0x10, 0xf, 0xff, 0xf8, 0x7, 0xff, 0xfc, + 0x3, 0xff, 0xfe, 0x1, 0xff, 0xff, 0x0, 0xff, + 0xff, 0x80, 0x7f, 0xf8, 0xc0, + + /* U+006E "n" */ + 0x16, 0xbf, 0xff, 0xfe, 0x6, 0x39, 0x0, 0x7f, + 0xf4, 0x45, 0xaf, 0xff, 0xfe, 0xb5, 0x0, 0xff, + 0xe3, 0x1c, 0x7b, 0x98, 0x7, 0xff, 0xcc, 0xa3, + 0xa4, 0xc0, 0x3f, 0xfe, 0x64, 0xdb, 0x48, 0x20, + 0x1f, 0xff, 0x21, 0x5a, 0xb5, 0x10, 0xf, 0xff, + 0x90, 0xad, 0x51, 0x88, 0x3, 0xff, 0xe6, 0x93, + 0xce, 0x40, 0x1f, 0xff, 0x33, 0x8f, 0x83, 0x0, + 0xff, 0xf1, 0xa4, 0x4a, 0x88, 0x7, 0xfc, 0x4f, + 0xb2, 0x82, 0x1, 0xff, 0xe1, 0x17, 0xaa, 0x31, + 0x0, 0x7f, 0xc2, 0xd5, 0x6a, 0x20, 0x1f, 0xfe, + 0x24, 0x9e, 0x72, 0x0, 0xff, 0x85, 0x6a, 0x8c, + 0x40, 0x1f, 0xfe, 0x23, 0x8f, 0x83, 0x0, 0xff, + 0xe0, 0x24, 0xf3, 0x90, 0x7, 0xff, 0x88, 0x9f, + 0xa5, 0x0, 0x3f, 0xf8, 0x7, 0x1f, 0x6, 0x1, + 0xff, 0xe2, 0x26, 0xaa, 0x28, 0x80, 0x7f, 0xc4, + 0xfd, 0x28, 0x1, 0xff, 0xe2, 0x15, 0xba, 0x61, + 0x0, 0xff, 0x89, 0xaa, 0x8f, 0xce, 0x1, 0xff, + 0xe0, 0x14, 0x9d, 0x72, 0x0, 0xff, 0x85, 0x65, + 0xcc, 0x3, 0xff, 0xc6, 0x71, 0xf0, 0x60, 0x1f, + 0xff, 0x32, 0x7e, 0x94, 0x0, 0xff, 0xf9, 0x93, + 0x55, 0x10, 0x40, 0x3f, 0xfe, 0x42, 0xb5, 0x45, + 0x10, 0xf, 0xff, 0x90, 0xa5, 0x51, 0x88, 0x3, + 0xff, 0xe6, 0x93, 0xce, 0x40, 0x1f, 0xff, 0x33, + 0x8f, 0x83, 0x0, 0xff, 0xe2, 0x80, + + /* U+006F "o" */ + 0x0, 0xe1, 0x5a, 0xef, 0xff, 0xff, 0x16, 0xca, + 0x8, 0x7, 0xf0, 0xa4, 0xe5, 0x28, 0x80, 0x7f, + 0xf8, 0x89, 0xaf, 0x25, 0x4, 0x3, 0x96, 0xec, + 0xc4, 0x1, 0xff, 0xe8, 0x26, 0xbb, 0x28, 0x4, + 0x26, 0x20, 0x1f, 0xfe, 0xe1, 0x0, 0xff, 0xe3, + 0x9, 0xab, 0x37, 0xff, 0x49, 0x4c, 0x40, 0x3f, + 0xfa, 0x4b, 0x57, 0x33, 0xff, 0xd2, 0xba, 0x50, + 0xf, 0xff, 0xf8, 0x7, 0xff, 0xfc, 0x3, 0xff, + 0xfe, 0x1, 0xff, 0xff, 0x0, 0xff, 0xff, 0x80, + 0x7f, 0xff, 0xc0, 0x3f, 0xff, 0xe0, 0x1f, 0xff, + 0xf0, 0xf, 0xff, 0xf8, 0x7, 0xff, 0xfc, 0x3, + 0xff, 0xf8, 0xb5, 0x73, 0x3f, 0xfd, 0x2b, 0xa5, + 0x0, 0xff, 0xe9, 0x9, 0xab, 0x37, 0xff, 0x49, + 0x4c, 0x40, 0x3f, 0xf8, 0x82, 0x60, 0x1f, 0xfe, + 0xf1, 0x0, 0xe5, 0xaa, 0x29, 0x0, 0x7f, 0xfa, + 0x9, 0xae, 0xca, 0x1, 0xc2, 0xb5, 0xf4, 0xa2, + 0x1, 0xff, 0xe2, 0x25, 0xac, 0x94, 0x10, 0xc, + + /* U+0070 "p" */ + 0x16, 0xbf, 0xff, 0xff, 0x46, 0xca, 0x8, 0x7, + 0xff, 0xc8, 0x9a, 0xf2, 0x50, 0x40, 0x3f, 0xfe, + 0x44, 0xd7, 0x65, 0x0, 0xff, 0xfa, 0x8, 0x7, + 0xff, 0x18, 0x4d, 0x59, 0xbf, 0xfa, 0x4a, 0x62, + 0x1, 0xff, 0xd2, 0x5a, 0xb9, 0x9f, 0xfe, 0x95, + 0xd2, 0x80, 0x7f, 0xff, 0xc0, 0x3f, 0xff, 0xe0, + 0x1f, 0xff, 0xf0, 0xf, 0xff, 0xf8, 0x7, 0xff, + 0xc1, 0x6a, 0xe6, 0x7f, 0xfa, 0x57, 0x4a, 0x1, + 0xff, 0xd2, 0x13, 0x56, 0x6f, 0xfe, 0x92, 0x98, + 0x80, 0x7f, 0xff, 0xc0, 0x2, 0x1, 0xff, 0xf2, + 0x26, 0xbb, 0x28, 0x7, 0xff, 0xb8, 0x96, 0xf2, + 0x50, 0x40, 0x3f, 0xf8, 0xc9, 0x3d, 0xff, 0xff, + 0xda, 0xda, 0x41, 0x0, 0xff, 0xff, 0x80, 0x7f, + 0xff, 0xc0, 0x3f, 0xff, 0xe0, 0x1f, 0xff, 0xf0, + 0xf, 0xff, 0xf8, 0x7, 0xff, 0x40, + + /* U+0071 "q" */ + 0x0, 0xe1, 0x5a, 0xef, 0xff, 0xff, 0x16, 0xca, + 0x8, 0x7, 0xf0, 0xa4, 0xe5, 0x28, 0x80, 0x7f, + 0xf8, 0x89, 0xaf, 0x25, 0x4, 0x3, 0x96, 0xec, + 0xc4, 0x1, 0xff, 0xe8, 0x26, 0xbb, 0x28, 0x4, + 0x26, 0x20, 0x1f, 0xfe, 0xe1, 0x0, 0xff, 0xe3, + 0x9, 0xab, 0x37, 0xff, 0x49, 0x4c, 0x40, 0x3f, + 0xfa, 0x4b, 0x57, 0x33, 0xff, 0xd2, 0xba, 0x50, + 0xf, 0xff, 0xf8, 0x7, 0xff, 0xfc, 0x3, 0xff, + 0xfe, 0x1, 0xff, 0xff, 0x0, 0xff, 0xff, 0x80, + 0x7f, 0xff, 0xc0, 0x3f, 0xfd, 0x42, 0x45, 0xff, + 0xc3, 0x10, 0xe, 0x17, 0x0, 0xff, 0xef, 0x1a, + 0x4e, 0x6e, 0xff, 0xf0, 0x32, 0x5d, 0xd5, 0x90, + 0x60, 0x1f, 0xfd, 0xe2, 0x6a, 0xa3, 0x10, 0x7, + 0xf8, 0x9a, 0x20, 0xa4, 0x1, 0xff, 0xe2, 0x14, + 0x9f, 0x94, 0x10, 0xf, 0xfe, 0x58, 0x9b, 0xfa, + 0x0, 0x7f, 0xf5, 0x44, 0x40, 0x3, 0x0, 0xff, + 0xe3, 0x89, 0xbd, 0xfe, 0x42, 0x8, 0x7, 0xff, + 0x15, 0x6a, 0xe6, 0x7f, 0xea, 0xcf, 0xc9, 0x42, + 0x0, 0xff, 0xe3, 0x25, 0xec, 0x20, 0x80, 0x7f, + 0xf2, 0x44, 0xd5, 0x9b, 0xfe, 0x53, 0x10, 0xf, + 0xfe, 0x52, 0x5d, 0x31, 0x0, 0x7e, 0x13, 0x0, + 0xff, 0xf4, 0xa, 0x4f, 0xca, 0x8, 0x7, 0x96, + 0xa8, 0xa4, 0x1, 0xff, 0xd5, 0x25, 0x9d, 0xd5, + 0xa8, 0x80, 0x7f, 0x89, 0xaa, 0x8c, 0x40, 0x1c, + 0x2b, 0x5f, 0x4a, 0x20, 0x1f, 0xfc, 0xe1, 0x59, + 0xcd, 0xa6, 0x22, 0x25, 0x6c, 0x18, 0x7, 0xf8, + 0x52, 0x7e, 0x50, 0x40, + + /* U+0072 "r" */ + 0x16, 0xbf, 0xff, 0xff, 0x46, 0xca, 0x8, 0x7, + 0xff, 0xc8, 0x9a, 0xf2, 0x50, 0x40, 0x3f, 0xfe, + 0x44, 0xd7, 0x65, 0x0, 0xff, 0xfa, 0x8, 0x7, + 0xff, 0x18, 0x4d, 0x59, 0xbf, 0xfa, 0x4a, 0x62, + 0x1, 0xff, 0xd2, 0x5a, 0xb9, 0x9f, 0xfe, 0x95, + 0xd2, 0x80, 0x7f, 0xff, 0xc0, 0x3f, 0xff, 0xe0, + 0x1f, 0xff, 0xf0, 0xf, 0xff, 0xf8, 0x7, 0xff, + 0xc1, 0x6a, 0xe6, 0x7f, 0xfa, 0x57, 0x4a, 0x1, + 0xff, 0xd2, 0x13, 0x56, 0x6f, 0xfe, 0x92, 0x98, + 0x80, 0x7f, 0xff, 0xc0, 0x2, 0x1, 0xff, 0xf2, + 0x26, 0xbb, 0x28, 0x7, 0xff, 0xb8, 0x96, 0xf2, + 0x50, 0x40, 0x3f, 0xf8, 0xc9, 0x3d, 0xff, 0xff, + 0xc6, 0xd9, 0x41, 0x0, 0xff, 0xf9, 0x13, 0x5e, + 0x42, 0x8, 0x7, 0xff, 0x4, 0x96, 0xf2, 0x50, + 0x40, 0x3f, 0xfb, 0xc4, 0xf7, 0xb0, 0x60, 0x1f, + 0xfc, 0x22, 0x6b, 0xb2, 0x80, 0x7f, 0xf8, 0xd, + 0xf3, 0xe, 0x60, 0x1f, 0xfc, 0x21, 0x0, 0xff, + 0xf2, 0x1c, 0x6d, 0xa8, 0x80, 0x7f, 0xfc, 0x85, + 0x71, 0x40, 0x3f, 0xff, 0xe0, 0x1f, 0x0, + + /* U+0073 "s" */ + 0x0, 0xe1, 0x5a, 0xef, 0xff, 0xff, 0x16, 0xca, + 0x8, 0x7, 0xf0, 0xa4, 0xe5, 0x28, 0x80, 0x7f, + 0xf8, 0x89, 0xaf, 0x25, 0x4, 0x3, 0x96, 0xec, + 0xc4, 0x1, 0xff, 0xe8, 0x26, 0xbb, 0x28, 0x4, + 0x26, 0x20, 0x1f, 0xfe, 0xe1, 0x0, 0xff, 0xe3, + 0x9, 0xab, 0x37, 0xff, 0x49, 0x4c, 0x40, 0x3f, + 0xfa, 0x4b, 0x57, 0x33, 0xff, 0xd2, 0xba, 0x50, + 0xf, 0xff, 0xf8, 0x7, 0xff, 0xa8, 0x5a, 0xff, + 0xff, 0xeb, 0x50, 0xf, 0xff, 0xf8, 0x7, 0xe5, + 0xab, 0x99, 0xff, 0xed, 0x3a, 0x8, 0x7, 0xff, + 0x28, 0x4d, 0x59, 0xbf, 0xfb, 0x51, 0x79, 0x28, + 0x20, 0x1f, 0xff, 0x22, 0x6b, 0xd7, 0x30, 0x8, + 0x57, 0xc, 0x40, 0x3f, 0xfd, 0x67, 0x8c, 0x1, + 0x8d, 0xf3, 0xed, 0xcc, 0x40, 0x3f, 0xfe, 0x22, + 0x91, 0x9d, 0xff, 0xff, 0xda, 0xe9, 0x40, 0xf, + 0xff, 0xf8, 0x7, 0xe5, 0x9c, 0xcf, 0xfa, 0x54, + 0x3, 0xff, 0xcc, 0x26, 0x46, 0x7f, 0xf1, 0x18, + 0x80, 0x7f, 0xfc, 0xd6, 0xae, 0x67, 0xff, 0xa5, + 0x74, 0xa0, 0x1f, 0xfd, 0x21, 0x35, 0x66, 0xff, + 0xe9, 0x29, 0x88, 0x7, 0xff, 0x10, 0x4c, 0x3, + 0xff, 0xde, 0x20, 0x1c, 0xb5, 0x45, 0x20, 0xf, + 0xff, 0x41, 0x35, 0xd9, 0x40, 0x38, 0x56, 0xbe, + 0x94, 0x40, 0x3f, 0xfc, 0x44, 0xb5, 0x92, 0x82, + 0x1, 0x80, + + /* U+0074 "t" */ + 0x5, 0xaf, 0xff, 0xff, 0x75, 0xb0, 0x7, 0xff, + 0xfc, 0x3, 0xff, 0xfe, 0x1, 0xff, 0xe8, 0x6c, + 0x66, 0xff, 0xe4, 0xa9, 0x80, 0x7f, 0xf0, 0x9, + 0x19, 0xbf, 0xf9, 0x38, 0xa0, 0x18, 0xda, 0x67, + 0xff, 0x93, 0x8, 0x40, 0x1f, 0xf2, 0x7c, 0xcf, + 0xff, 0x25, 0xcc, 0x3, 0xff, 0xfe, 0x1, 0xff, + 0xff, 0x0, 0xff, 0xff, 0x80, 0x7f, 0xff, 0xc0, + 0x3f, 0xff, 0xe0, 0x1f, 0xff, 0xf0, 0xf, 0xff, + 0xf8, 0x7, 0xff, 0xfc, 0x3, 0xff, 0xfe, 0x1, + 0xff, 0xff, 0x0, 0xff, 0xff, 0x80, 0x7f, 0xff, + 0xc0, 0x3f, 0xff, 0xe0, 0x1f, 0xff, 0xf0, 0xf, + 0xff, 0xf8, + + /* U+0075 "u" */ + 0x16, 0xbf, 0xff, 0xfa, 0xd8, 0x40, 0x3f, 0xfa, + 0x42, 0xd7, 0xff, 0xff, 0x5a, 0x80, 0x7f, 0xff, + 0xc0, 0x3f, 0xff, 0xe0, 0x1f, 0xff, 0xf0, 0xf, + 0xff, 0xf8, 0x7, 0xff, 0xfc, 0x3, 0xff, 0xfe, + 0x1, 0xff, 0xff, 0x0, 0xff, 0xff, 0x80, 0x7f, + 0xff, 0xc0, 0x3f, 0xff, 0xe0, 0x1f, 0xff, 0xf0, + 0xf, 0xff, 0xf8, 0x7, 0xff, 0xfc, 0x3, 0xff, + 0xfe, 0x1, 0xff, 0xff, 0x0, 0xff, 0xe1, 0x2d, + 0x5c, 0xcf, 0xff, 0x4a, 0xe9, 0x40, 0x3f, 0xfa, + 0x42, 0x6a, 0xcd, 0xff, 0xd2, 0x53, 0x10, 0xf, + 0xfe, 0x20, 0x98, 0x7, 0xff, 0xbc, 0x40, 0x39, + 0x6a, 0x8a, 0x40, 0x1f, 0xfe, 0x82, 0x6b, 0xb2, + 0x80, 0x70, 0xad, 0x7d, 0x28, 0x80, 0x7f, 0xf8, + 0x89, 0x6b, 0x25, 0x4, 0x3, 0x0, + + /* U+0076 "v" */ + 0x0, 0x9a, 0xff, 0xff, 0xec, 0x61, 0x0, 0xff, + 0xe9, 0xb, 0x5f, 0xff, 0xfd, 0x6a, 0x1, 0xff, + 0xff, 0x0, 0xff, 0xff, 0x80, 0x7f, 0xff, 0xc0, + 0x3f, 0xff, 0xe0, 0x1f, 0xff, 0xf0, 0xf, 0xff, + 0xf8, 0x7, 0xff, 0xfc, 0x3, 0xff, 0xfe, 0x1, + 0xff, 0xff, 0x0, 0xff, 0xff, 0x80, 0x7f, 0xfc, + 0x4, 0x3, 0xff, 0xaa, 0xe0, 0x1f, 0xfd, 0x23, + 0x9a, 0x62, 0x0, 0xff, 0xe7, 0x13, 0x54, 0x18, + 0x7, 0xff, 0x4c, 0x52, 0x72, 0x98, 0x80, 0x3f, + 0xf9, 0x4, 0xd5, 0x92, 0x82, 0x1, 0xff, 0xc6, + 0x4e, 0x51, 0x0, 0xff, 0xe0, 0x8a, 0xce, 0x52, + 0x90, 0x7, 0xff, 0x8, 0x96, 0xb2, 0x54, 0x40, + 0x3f, 0xf8, 0x22, 0xbc, 0xe0, 0x18, 0x96, 0xb2, + 0x50, 0x40, 0x3f, 0xf8, 0x22, 0xb5, 0xf4, 0xa2, + 0x1, 0xf8, 0x56, 0xbe, 0x94, 0x40, 0x3f, 0xf8, + 0x22, 0x93, 0x94, 0xa4, 0x1, 0xf1, 0x35, 0xe4, + 0xa0, 0x80, 0x7f, 0xf0, 0x49, 0x6b, 0x2e, 0x67, + 0xd7, 0x94, 0xa4, 0x1, 0xff, 0xc1, 0x14, 0x9c, + 0xb6, 0x20, 0xf, 0xfe, 0x9, 0x35, 0xec, 0x20, + 0x80, 0x7f, 0xf0, 0x49, 0x19, 0xbc, 0x84, 0x1, + 0xff, 0xc1, 0x14, 0x9c, 0xb6, 0x20, 0xf, 0xfe, + 0x39, 0xbd, 0xec, 0x18, 0x7, 0xff, 0x4c, 0x4e, + 0x36, 0xd8, 0x80, 0x3f, 0xf9, 0xa6, 0xf9, 0x88, + 0x30, 0xf, 0xfe, 0x71, 0xc6, 0xe3, 0x98, 0x7, + 0xff, 0x4c, 0xdf, 0x30, 0xe6, 0x1, 0xff, 0xc8, + 0x37, 0xcc, 0x39, 0x80, 0x7f, 0xf1, 0x0, + + /* U+0077 "w" */ + 0x0, 0x9a, 0xff, 0xff, 0xec, 0x61, 0x0, 0xff, + 0xe2, 0x9c, 0x6f, 0xff, 0xfb, 0xa4, 0xc0, 0x3f, + 0xf8, 0xcb, 0x5f, 0xff, 0xf6, 0x30, 0x80, 0x7f, + 0xff, 0xc0, 0x3f, 0xff, 0xe0, 0x1f, 0xff, 0xf0, + 0xf, 0xff, 0xf8, 0x7, 0xff, 0xfc, 0x3, 0xff, + 0xfe, 0x1, 0xff, 0xff, 0x0, 0xff, 0xff, 0x80, + 0x7f, 0xff, 0xc0, 0x3f, 0xff, 0xe0, 0x1f, 0xff, + 0xf0, 0xf, 0xff, 0xf8, 0x7, 0xff, 0xfc, 0x3, + 0xff, 0xfe, 0x1, 0xff, 0xc0, 0x10, 0xf, 0xfe, + 0x41, 0x80, 0x7f, 0xf0, 0x1c, 0x3, 0xff, 0x8e, + 0x20, 0x1f, 0xfd, 0x33, 0xa8, 0x40, 0xf, 0xfe, + 0x10, 0xac, 0x30, 0x80, 0x7f, 0x85, 0xbd, 0x88, + 0x3, 0xff, 0x84, 0x71, 0x4, 0x0, 0xff, 0xea, + 0x13, 0x55, 0x14, 0x40, 0x3f, 0x89, 0xaa, 0x88, + 0x20, 0x1f, 0xfc, 0x14, 0x9e, 0x73, 0x0, 0xff, + 0x24, 0xf3, 0x90, 0x7, 0xff, 0x1d, 0x35, 0x0, + 0x3f, 0xf8, 0x22, 0xb5, 0x46, 0x20, 0xe, 0x27, + 0xe9, 0x40, 0xf, 0xfe, 0x31, 0xc7, 0x49, 0x80, + 0x70, 0xa5, 0x51, 0x88, 0x3, 0xff, 0x82, 0x76, + 0x82, 0x1, 0x89, 0xaa, 0xd8, 0x80, 0x3f, 0xf8, + 0x29, 0x3c, 0xe4, 0x7, 0x1f, 0x6, 0x1, 0xff, + 0xca, 0x26, 0xda, 0x51, 0x12, 0xd5, 0x14, 0x40, + 0x3f, 0xf8, 0x2, 0xb5, 0xae, 0x40, 0x1f, 0xa, + 0x4f, 0xc1, 0x80, 0x7f, 0xf0, 0x4e, 0x33, 0xb5, + 0xc8, 0x3, 0xff, 0x9c, 0x2b, 0x7f, 0xea, 0x41, + 0x0, 0xff, 0xe0, 0x13, 0xed, 0x28, 0x80, 0x7f, + 0xf0, 0x9, 0xf6, 0x94, 0x40, 0x3f, 0xf8, 0x2, + 0x30, 0x7, 0xff, 0x0, 0x9e, 0xf2, 0xc, 0x3, + 0xff, 0x80, 0x23, 0x0, 0x7f, 0xf0, 0x5, 0x27, + 0xe0, 0xc0, 0x3f, 0xf8, 0xa2, 0xb5, 0xb0, 0x60, + 0x1f, 0xfc, 0xa1, 0x49, 0xf8, 0x43, 0x7d, 0xa5, + 0x10, 0xf, 0xfe, 0x51, 0x35, 0x5b, 0x10, 0x7, + 0xff, 0x28, 0xdf, 0x69, 0x44, 0x3, 0xff, 0x8a, + 0x4d, 0x56, 0xc4, 0x1, 0x85, 0x6b, 0x60, 0xc0, + 0x3f, 0xf8, 0xc7, 0x1f, 0x28, 0x1, 0xff, 0xcf, + 0x15, 0xad, 0x72, 0x0, 0xff, 0xe0, 0xa4, 0xfc, + 0xa0, 0x7, 0xf8, 0xdf, 0x69, 0x44, 0x3, 0xff, + 0x80, 0x2b, 0x7a, 0xe4, 0x1, 0xff, 0xc2, + + /* U+0078 "x" */ + 0x0, 0x9a, 0xff, 0xff, 0xec, 0x61, 0x0, 0xff, + 0xe9, 0xb, 0x5f, 0xff, 0xfd, 0x6a, 0x1, 0xff, + 0xff, 0x0, 0xff, 0xff, 0x80, 0x7f, 0xfd, 0x84, + 0xc0, 0x3f, 0xfa, 0x62, 0xe0, 0x1f, 0xfd, 0x23, + 0x8e, 0x83, 0x0, 0xff, 0xe7, 0x1b, 0xec, 0x18, + 0x7, 0xff, 0x50, 0xdf, 0x6d, 0xc8, 0x3, 0xff, + 0x90, 0x4f, 0x7b, 0x6, 0x1, 0xff, 0xc7, 0x7e, + 0x62, 0x0, 0xff, 0xe0, 0x8a, 0x46, 0x5b, 0x10, + 0x7, 0xff, 0x8, 0x9a, 0xf2, 0x10, 0x40, 0x3f, + 0xf8, 0x24, 0xde, 0x80, 0x18, 0x56, 0x72, 0x94, + 0x40, 0x3f, 0xf8, 0x22, 0x93, 0x94, 0xa4, 0x1, + 0xf8, 0x56, 0xb2, 0x50, 0x40, 0x3f, 0xf8, 0x22, + 0xb5, 0x92, 0x82, 0x1, 0xf0, 0xad, 0x65, 0x28, + 0x80, 0x7f, 0xf0, 0x45, 0x6b, 0xee, 0x67, 0xd7, + 0x94, 0xa2, 0x1, 0xff, 0xc1, 0x14, 0xac, 0xa5, + 0x10, 0xf, 0xfe, 0x9, 0x2d, 0x64, 0xa0, 0x80, + 0x7f, 0xf0, 0x49, 0x19, 0xbc, 0x84, 0x1, 0xff, + 0xc1, 0x14, 0x9c, 0xb5, 0x20, 0xf, 0xfe, 0x39, + 0x35, 0xeb, 0x90, 0x7, 0xff, 0x50, 0x9f, 0x6d, + 0x88, 0x3, 0xff, 0x96, 0x4b, 0x2c, 0x40, 0x1f, + 0xfd, 0x42, 0x69, 0x62, 0x0, 0xff, 0xe4, 0x8a, + 0xd6, 0x52, 0x88, 0x7, 0xff, 0x58, 0x56, 0x72, + 0x94, 0x40, 0x3f, 0xf8, 0x62, 0xb5, 0x94, 0xa2, + 0x1, 0xff, 0xc1, 0x15, 0x9d, 0xff, 0xf6, 0xca, + 0x8, 0x7, 0xff, 0x4, 0x56, 0xb2, 0x94, 0x40, + 0x3f, 0x85, 0x6b, 0x29, 0x48, 0x3, 0xff, 0x82, + 0x29, 0x39, 0x4c, 0x40, 0x1e, 0x26, 0xbc, 0x94, + 0x10, 0xf, 0xfe, 0x9, 0x2d, 0x64, 0xa8, 0x80, + 0x72, 0xdd, 0x29, 0x0, 0x7f, 0xf0, 0x45, 0x27, + 0x2d, 0x88, 0x3, 0xff, 0x80, 0x4d, 0x79, 0x28, + 0x20, 0x1f, 0xfc, 0x12, 0x6a, 0xb5, 0x0, 0xc6, + 0x20, 0x1f, 0xfc, 0x11, 0x49, 0xcb, 0x62, 0x0, + 0xff, 0xe3, 0x13, 0x5e, 0x4a, 0x8, 0x7, 0xff, + 0x4, 0x40, 0x3f, 0xf8, 0xc4, 0xfb, 0x6c, 0x40, + 0x1f, 0xfc, 0xc2, 0x6b, 0xd7, 0x20, 0xf, 0xfe, + 0x90, 0xf1, 0x0, 0x7f, 0xf4, 0x8b, 0x98, 0x3, + 0xff, 0xfe, 0x1, 0xff, 0xff, 0x0, 0xff, 0xf9, + 0x0, + + /* U+0079 "y" */ + 0x0, 0x2d, 0xff, 0xff, 0xd8, 0xc2, 0x1, 0xff, + 0xd3, 0x6b, 0xff, 0xff, 0xad, 0x80, 0x3f, 0xff, + 0xe0, 0x1f, 0xff, 0xf0, 0xf, 0xff, 0xf8, 0x7, + 0xff, 0xfc, 0x3, 0xff, 0xc6, 0x3c, 0x40, 0x1f, + 0xfd, 0x22, 0x17, 0x0, 0xff, 0xe9, 0x13, 0xe6, + 0xcb, 0x10, 0x7, 0xff, 0x28, 0x96, 0x73, 0x60, + 0xc0, 0x3f, 0xf8, 0xa2, 0x42, 0x1, 0xff, 0xc1, + 0x26, 0x9d, 0xd5, 0x39, 0x88, 0x7, 0xff, 0x0, + 0x4d, 0xeb, 0x75, 0x4c, 0x60, 0x1f, 0xfc, 0x11, + 0x22, 0x0, 0x64, 0x9f, 0xc8, 0x41, 0x0, 0xff, + 0xe0, 0x92, 0xc6, 0x7d, 0xc2, 0x8, 0x6, 0x24, + 0x8c, 0xfc, 0x85, 0x20, 0xf, 0xfe, 0x8, 0xa4, + 0x67, 0xca, 0x0, 0x78, 0x4d, 0xef, 0xf2, 0x14, + 0x40, 0x3f, 0xf8, 0x22, 0x8f, 0x7f, 0x95, 0x4d, + 0xd5, 0xb9, 0x88, 0x7, 0xff, 0x4, 0x52, 0x33, + 0xed, 0xcc, 0x40, 0x3f, 0xf8, 0x2, 0x6f, 0x5f, + 0x92, 0xa4, 0x1, 0xff, 0xc1, 0x13, 0x55, 0x10, + 0x7, 0xff, 0x8, 0x92, 0x33, 0xed, 0xcc, 0x40, + 0x3f, 0xf9, 0x2, 0x6d, 0x5b, 0xa9, 0x52, 0x0, + 0xff, 0xe6, 0x12, 0xce, 0x6d, 0xb9, 0x88, 0x7, + 0xff, 0x44, 0x9a, 0xb7, 0x52, 0xc4, 0x1, 0xff, + 0xc4, 0x25, 0x9c, 0xda, 0x63, 0x0, 0xff, 0xed, + 0x13, 0x4e, 0xdb, 0x8, 0x7, 0xfc, 0xb5, 0xb4, + 0xc6, 0x1, 0xff, 0xe2, 0x71, 0x30, 0xf, 0xf0, + 0x9b, 0x0, 0x7f, 0xff, 0xc0, 0x3f, 0xff, 0xe0, + 0x1f, 0xff, 0xf0, 0xf, 0xff, 0xf8, 0x7, 0xff, + 0xfc, 0x3, 0xff, 0xfe, 0x1, 0xff, 0xd9, + + /* U+007A "z" */ + 0x0, 0x2d, 0xff, 0xff, 0xfb, 0xad, 0x80, 0x3f, + 0xff, 0xe0, 0x1f, 0xff, 0xf0, 0xf, 0xff, 0x43, + 0x63, 0x37, 0xff, 0x65, 0x4c, 0x40, 0x3f, 0xf8, + 0xc2, 0x60, 0x18, 0xde, 0x67, 0xff, 0xaf, 0x5c, + 0xc6, 0x20, 0x1f, 0xfc, 0x33, 0x7c, 0xb5, 0x0, + 0xff, 0xed, 0x1b, 0xe6, 0xc1, 0x80, 0x7f, 0xf0, + 0x89, 0xef, 0x60, 0xc4, 0x3, 0xff, 0xb0, 0x4f, + 0x7b, 0x6, 0x20, 0x1f, 0xfc, 0x12, 0x6b, 0xc8, + 0x41, 0x0, 0xff, 0xec, 0x13, 0x5e, 0x42, 0x8, + 0x7, 0xff, 0x4, 0x9a, 0xf2, 0x50, 0x40, 0x3f, + 0xfb, 0x4, 0xd7, 0x92, 0x82, 0x1, 0xff, 0xc1, + 0x25, 0xac, 0x94, 0x10, 0xf, 0xfe, 0xc1, 0x2d, + 0x64, 0xa0, 0x80, 0x7f, 0xf0, 0x45, 0x6b, 0x29, + 0x44, 0x3, 0xff, 0xb0, 0x2b, 0x59, 0x4a, 0x20, + 0x1f, 0xfc, 0x11, 0x5a, 0xca, 0x51, 0x0, 0xff, + 0xec, 0xa, 0xce, 0x52, 0x88, 0x7, 0xff, 0x4, + 0x52, 0x72, 0x94, 0x80, 0x3f, 0xfb, 0x2, 0x93, + 0x94, 0xc4, 0x1, 0xff, 0xc1, 0x14, 0x9c, 0xb6, + 0x20, 0xf, 0xfe, 0xc0, 0xa4, 0xe5, 0xb1, 0x0, + 0x7f, 0xf0, 0x45, 0x23, 0x2d, 0x88, 0x3, 0xff, + 0xb0, 0x29, 0x19, 0x6c, 0x40, 0x1f, 0xfc, 0x23, + 0x8d, 0xb7, 0x20, 0xf, 0xfe, 0xc0, 0x9c, 0x6d, + 0xb9, 0x0, 0x7f, 0xf0, 0x8e, 0x33, 0xe, 0x60, + 0x1f, 0xfd, 0x93, 0x7d, 0xc7, 0x30, 0xf, 0xfe, + 0x11, 0xbe, 0x61, 0xcc, 0x3, 0xff, 0xb4, 0x95, + 0x90, 0x60, 0x1f, 0xfc, 0x31, 0x36, 0x1a, 0x99, + 0xff, 0xeb, 0xb1, 0x80, 0x61, 0x10, 0x7, 0xff, + 0x18, 0x4d, 0x59, 0xbf, 0xfb, 0x3a, 0xa0, 0x1f, + 0xff, 0xf0, 0xf, 0xff, 0xf8, 0x7, 0xff, 0x98, + + /* U+007B "{" */ + 0x0, 0xff, 0xe0, 0x8a, 0x44, 0xcf, 0xff, 0x19, + 0xd0, 0x40, 0x3f, 0xf8, 0x2, 0xb5, 0x96, 0xec, + 0xdf, 0xfc, 0x6b, 0x33, 0x0, 0x7f, 0xa, 0x4e, + 0x52, 0x90, 0x7, 0xff, 0x50, 0xcc, 0x84, 0x1, + 0xff, 0xff, 0x0, 0xff, 0xe0, 0xad, 0x7f, 0xff, + 0xd8, 0xe4, 0x1, 0xff, 0xff, 0x0, 0xff, 0xff, + 0x80, 0x7f, 0xff, 0xc0, 0x3f, 0xf8, 0x84, 0xb1, + 0x24, 0x1, 0xf8, 0x4e, 0x20, 0xa0, 0x1f, 0xfc, + 0x61, 0x5a, 0xfa, 0x51, 0x0, 0xf8, 0xe3, 0x71, + 0xc8, 0x3, 0xff, 0x8c, 0x4f, 0xc8, 0x40, 0x1f, + 0xc9, 0x4a, 0x60, 0x1f, 0xfc, 0x92, 0x6b, 0xd8, + 0x30, 0xf, 0xc9, 0x39, 0x4a, 0x20, 0x1f, 0xfc, + 0xa3, 0x7c, 0xb6, 0x10, 0xf, 0x85, 0x6b, 0x20, + 0xc0, 0x3f, 0xf9, 0x6d, 0xc6, 0x1, 0xfe, 0x22, + 0x30, 0x7, 0xff, 0xfc, 0x3, 0xff, 0xfe, 0x1, + 0xff, 0xff, 0x0, 0xf9, 0xfe, 0x23, 0xfe, 0x64, + 0x10, 0xf, 0xfe, 0x59, 0x2b, 0xbf, 0xfd, 0x46, + 0x60, 0xf, 0xf8, 0x40, 0x3f, 0xfb, 0x4, 0xfd, + 0x2a, 0x20, 0x1f, 0xfd, 0x72, 0x6a, 0xca, 0x51, + 0x0, 0xff, 0xe5, 0x80, + + /* U+007C "|" */ + 0x3, 0x69, 0x9f, 0xf9, 0xcc, 0x0, 0x2b, 0xac, + 0xdf, 0xf6, 0x28, 0x80, 0x7f, 0xff, 0xc0, 0x3f, + 0xff, 0xe0, 0x1f, 0xff, 0xf0, 0xf, 0xff, 0xf8, + 0x7, 0xff, 0xfc, 0x3, 0xff, 0xfe, 0x1, 0xff, + 0xc7, + + /* U+007D "}" */ + 0x0, 0x1b, 0xcc, 0xff, 0xf1, 0xa1, 0x48, 0x3, + 0xff, 0x88, 0xd8, 0xcd, 0xff, 0xc6, 0x7a, 0xcb, + 0x62, 0x0, 0xff, 0xeb, 0x8a, 0x4e, 0x52, 0x88, + 0x7, 0xff, 0x5c, 0x53, 0x48, 0x3, 0xff, 0xca, + 0xb7, 0xff, 0xff, 0x63, 0x88, 0x7, 0xff, 0xfc, + 0x3, 0xff, 0xfe, 0x1, 0xff, 0xff, 0x0, 0xff, + 0xe4, 0x8, 0x7, 0xff, 0x30, 0xea, 0xd4, 0x40, + 0x3f, 0xb, 0xc3, 0x90, 0x7, 0xff, 0x28, 0x96, + 0xb2, 0x50, 0x40, 0x3c, 0x29, 0x19, 0x6c, 0x40, + 0x1f, 0xfc, 0xa2, 0x7e, 0x41, 0x0, 0xfc, 0x29, + 0x4a, 0x40, 0x1f, 0xfc, 0x71, 0x49, 0xca, 0x51, + 0x0, 0xf8, 0x9a, 0xf5, 0xc8, 0x3, 0xff, 0x8a, + 0x4d, 0xb6, 0xc4, 0x1, 0xf9, 0x2b, 0x25, 0x4, + 0x3, 0xff, 0x8e, 0x3c, 0x40, 0x1f, 0xe1, 0x36, + 0x10, 0xf, 0xff, 0xf8, 0x7, 0xff, 0xfc, 0x3, + 0xff, 0xd4, 0x6d, 0x11, 0xff, 0x4a, 0x8, 0x7, + 0xff, 0x2d, 0xb5, 0xdf, 0xfe, 0x53, 0x0, 0xff, + 0xf3, 0x18, 0x8, 0x7, 0xff, 0x54, 0x52, 0x3a, + 0x8, 0x3, 0xff, 0xa4, 0x29, 0x1b, 0x6e, 0x60, + 0x1f, 0xe0, + + /* U+007E "~" */ + 0x0, 0xff, 0xfd, 0x9, 0xb5, 0x6f, 0x72, 0xe5, + 0x8c, 0x40, 0x3f, 0xf9, 0xa2, 0x6d, 0x34, 0xe6, + 0x1, 0xf8, 0x4d, 0xa7, 0x3f, 0x25, 0x48, 0x44, + 0x8d, 0x39, 0xdc, 0xb8, 0x63, 0x10, 0xf, 0xfe, + 0x10, 0x9b, 0x4e, 0x7e, 0x4b, 0x3f, 0x80, 0x71, + 0x2c, 0xe7, 0xe4, 0xb1, 0x88, 0x7, 0xfc, 0x28, + 0xf3, 0x9d, 0xb7, 0xc, 0x62, 0x1, 0x89, 0x67, + 0x3f, 0x25, 0x8c, 0x40, 0x3e, 0x49, 0xed, 0xa6, + 0x31, 0x0, 0xff, 0xe5, 0x12, 0x3c, 0xe7, 0x6e, + 0x63, 0xb6, 0x98, 0xc4, 0x3, 0xff, 0x80, 0x26, + 0x20, 0x1f, 0xfd, 0x52, 0x33, 0x8, 0x7, 0xff, + 0x48, 0x4d, 0xa6, 0xea, 0x14, 0x84, 0x3, 0xff, + 0x9e, 0x26, 0xd1, 0x46, 0x1, 0xfe, 0x25, 0x9c, + 0xfc, 0x96, 0x45, 0x7a, 0xde, 0xda, 0x75, 0x20, + 0xf, 0xfe, 0x31, 0x34, 0xe7, 0xe4, 0xa9, 0x0, + 0x78, 0x96, 0x2f, 0xb6, 0x98, 0xc4, 0x3, 0xf8, + 0x96, 0x2b, 0x7b, 0x29, 0xd0, 0x80, 0x3e, 0x25, + 0x8c, 0xed, 0x96, 0x31, 0x0, 0xf3, 0xf5, 0xf6, + 0xd3, 0xa0, 0x80, 0x7f, 0xf1, 0xc4, 0xd6, 0x2f, + 0x7b, 0x26, 0x26, 0xfb, 0x69, 0xcc, 0x40, 0x3f, + 0xc0 +}; + + +/*--------------------- + * GLYPH DESCRIPTION + *--------------------*/ + +static const lv_font_fmt_txt_glyph_dsc_t glyph_dsc[] = { + {.bitmap_index = 0, .adv_w = 0, .box_w = 0, .box_h = 0, .ofs_x = 0, .ofs_y = 0} /* id = 0 reserved */, + {.bitmap_index = 0, .adv_w = 205, .box_w = 6, .box_h = 0, .ofs_x = -1, .ofs_y = 0}, + {.bitmap_index = 0, .adv_w = 123, .box_w = 18, .box_h = 23, .ofs_x = 1, .ofs_y = 0}, + {.bitmap_index = 43, .adv_w = 220, .box_w = 39, .box_h = 10, .ofs_x = 0, .ofs_y = 13}, + {.bitmap_index = 82, .adv_w = 362, .box_w = 66, .box_h = 23, .ofs_x = 0, .ofs_y = 0}, + {.bitmap_index = 258, .adv_w = 373, .box_w = 66, .box_h = 28, .ofs_x = 1, .ofs_y = -3}, + {.bitmap_index = 534, .adv_w = 389, .box_w = 72, .box_h = 23, .ofs_x = 0, .ofs_y = 0}, + {.bitmap_index = 863, .adv_w = 355, .box_w = 69, .box_h = 23, .ofs_x = 0, .ofs_y = 0}, + {.bitmap_index = 1202, .adv_w = 113, .box_w = 21, .box_h = 10, .ofs_x = 0, .ofs_y = 13}, + {.bitmap_index = 1224, .adv_w = 184, .box_w = 30, .box_h = 28, .ofs_x = 1, .ofs_y = -2}, + {.bitmap_index = 1309, .adv_w = 184, .box_w = 33, .box_h = 28, .ofs_x = 0, .ofs_y = -2}, + {.bitmap_index = 1401, .adv_w = 286, .box_w = 54, .box_h = 17, .ofs_x = 0, .ofs_y = 6}, + {.bitmap_index = 1654, .adv_w = 307, .box_w = 57, .box_h = 19, .ofs_x = 0, .ofs_y = 2}, + {.bitmap_index = 1750, .adv_w = 113, .box_w = 21, .box_h = 10, .ofs_x = 0, .ofs_y = -5}, + {.bitmap_index = 1796, .adv_w = 163, .box_w = 30, .box_h = 5, .ofs_x = 0, .ofs_y = 9}, + {.bitmap_index = 1814, .adv_w = 113, .box_w = 21, .box_h = 5, .ofs_x = 0, .ofs_y = 0}, + {.bitmap_index = 1829, .adv_w = 286, .box_w = 60, .box_h = 23, .ofs_x = -1, .ofs_y = 0}, + {.bitmap_index = 2072, .adv_w = 373, .box_w = 66, .box_h = 23, .ofs_x = 1, .ofs_y = 0}, + {.bitmap_index = 2294, .adv_w = 179, .box_w = 30, .box_h = 23, .ofs_x = 0, .ofs_y = 0}, + {.bitmap_index = 2341, .adv_w = 347, .box_w = 66, .box_h = 23, .ofs_x = 0, .ofs_y = 0}, + {.bitmap_index = 2596, .adv_w = 362, .box_w = 66, .box_h = 23, .ofs_x = 0, .ofs_y = 0}, + {.bitmap_index = 2802, .adv_w = 332, .box_w = 66, .box_h = 23, .ofs_x = -1, .ofs_y = 0}, + {.bitmap_index = 3005, .adv_w = 373, .box_w = 66, .box_h = 23, .ofs_x = 1, .ofs_y = 0}, + {.bitmap_index = 3149, .adv_w = 373, .box_w = 66, .box_h = 23, .ofs_x = 1, .ofs_y = 0}, + {.bitmap_index = 3316, .adv_w = 332, .box_w = 66, .box_h = 23, .ofs_x = -1, .ofs_y = 0}, + {.bitmap_index = 3535, .adv_w = 373, .box_w = 66, .box_h = 23, .ofs_x = 1, .ofs_y = 0}, + {.bitmap_index = 3735, .adv_w = 373, .box_w = 66, .box_h = 23, .ofs_x = 1, .ofs_y = 0}, + {.bitmap_index = 3910, .adv_w = 113, .box_w = 21, .box_h = 14, .ofs_x = 0, .ofs_y = 0}, + {.bitmap_index = 3947, .adv_w = 113, .box_w = 21, .box_h = 19, .ofs_x = 0, .ofs_y = -5}, + {.bitmap_index = 4015, .adv_w = 312, .box_w = 60, .box_h = 23, .ofs_x = -1, .ofs_y = 0}, + {.bitmap_index = 4298, .adv_w = 327, .box_w = 60, .box_h = 12, .ofs_x = 0, .ofs_y = 6}, + {.bitmap_index = 4353, .adv_w = 312, .box_w = 57, .box_h = 23, .ofs_x = 1, .ofs_y = 0}, + {.bitmap_index = 4634, .adv_w = 357, .box_w = 66, .box_h = 23, .ofs_x = 0, .ofs_y = 0}, + {.bitmap_index = 4803, .adv_w = 373, .box_w = 66, .box_h = 23, .ofs_x = 1, .ofs_y = 0}, + {.bitmap_index = 4964, .adv_w = 368, .box_w = 66, .box_h = 23, .ofs_x = 0, .ofs_y = 0}, + {.bitmap_index = 5120, .adv_w = 373, .box_w = 66, .box_h = 23, .ofs_x = 1, .ofs_y = 0}, + {.bitmap_index = 5271, .adv_w = 368, .box_w = 66, .box_h = 23, .ofs_x = 1, .ofs_y = 0}, + {.bitmap_index = 5427, .adv_w = 368, .box_w = 66, .box_h = 23, .ofs_x = 1, .ofs_y = 0}, + {.bitmap_index = 5583, .adv_w = 350, .box_w = 60, .box_h = 23, .ofs_x = 1, .ofs_y = 0}, + {.bitmap_index = 5688, .adv_w = 340, .box_w = 60, .box_h = 23, .ofs_x = 1, .ofs_y = 0}, + {.bitmap_index = 5781, .adv_w = 373, .box_w = 66, .box_h = 23, .ofs_x = 1, .ofs_y = 0}, + {.bitmap_index = 5943, .adv_w = 373, .box_w = 66, .box_h = 23, .ofs_x = 1, .ofs_y = 0}, + {.bitmap_index = 6039, .adv_w = 123, .box_w = 18, .box_h = 23, .ofs_x = 1, .ofs_y = 0}, + {.bitmap_index = 6063, .adv_w = 357, .box_w = 66, .box_h = 23, .ofs_x = 0, .ofs_y = 0}, + {.bitmap_index = 6284, .adv_w = 368, .box_w = 66, .box_h = 23, .ofs_x = 1, .ofs_y = 0}, + {.bitmap_index = 6471, .adv_w = 340, .box_w = 60, .box_h = 23, .ofs_x = 1, .ofs_y = 0}, + {.bitmap_index = 6548, .adv_w = 444, .box_w = 78, .box_h = 23, .ofs_x = 1, .ofs_y = 0}, + {.bitmap_index = 6809, .adv_w = 373, .box_w = 66, .box_h = 23, .ofs_x = 1, .ofs_y = 0}, + {.bitmap_index = 6999, .adv_w = 373, .box_w = 66, .box_h = 23, .ofs_x = 1, .ofs_y = 0}, + {.bitmap_index = 7135, .adv_w = 368, .box_w = 66, .box_h = 23, .ofs_x = 1, .ofs_y = 0}, + {.bitmap_index = 7253, .adv_w = 378, .box_w = 66, .box_h = 23, .ofs_x = 1, .ofs_y = 0}, + {.bitmap_index = 7465, .adv_w = 373, .box_w = 66, .box_h = 23, .ofs_x = 1, .ofs_y = 0}, + {.bitmap_index = 7616, .adv_w = 373, .box_w = 66, .box_h = 23, .ofs_x = 1, .ofs_y = 0}, + {.bitmap_index = 7802, .adv_w = 342, .box_w = 66, .box_h = 23, .ofs_x = 0, .ofs_y = 0}, + {.bitmap_index = 7892, .adv_w = 373, .box_w = 66, .box_h = 23, .ofs_x = 1, .ofs_y = 0}, + {.bitmap_index = 8002, .adv_w = 362, .box_w = 66, .box_h = 23, .ofs_x = 0, .ofs_y = 0}, + {.bitmap_index = 8209, .adv_w = 470, .box_w = 87, .box_h = 23, .ofs_x = 0, .ofs_y = 0}, + {.bitmap_index = 8512, .adv_w = 362, .box_w = 66, .box_h = 23, .ofs_x = 0, .ofs_y = 0}, + {.bitmap_index = 8809, .adv_w = 352, .box_w = 66, .box_h = 23, .ofs_x = 0, .ofs_y = 0}, + {.bitmap_index = 9024, .adv_w = 352, .box_w = 66, .box_h = 23, .ofs_x = 0, .ofs_y = 0}, + {.bitmap_index = 9256, .adv_w = 184, .box_w = 30, .box_h = 28, .ofs_x = 1, .ofs_y = -2}, + {.bitmap_index = 9321, .adv_w = 286, .box_w = 60, .box_h = 23, .ofs_x = -1, .ofs_y = 0}, + {.bitmap_index = 9560, .adv_w = 184, .box_w = 33, .box_h = 28, .ofs_x = 0, .ofs_y = -2}, + {.bitmap_index = 9628, .adv_w = 286, .box_w = 60, .box_h = 13, .ofs_x = -1, .ofs_y = 10}, + {.bitmap_index = 9803, .adv_w = 205, .box_w = 45, .box_h = 5, .ofs_x = -1, .ofs_y = -5}, + {.bitmap_index = 9823, .adv_w = 194, .box_w = 30, .box_h = 10, .ofs_x = 1, .ofs_y = 16}, + {.bitmap_index = 9907, .adv_w = 368, .box_w = 66, .box_h = 23, .ofs_x = 0, .ofs_y = 0}, + {.bitmap_index = 10063, .adv_w = 373, .box_w = 66, .box_h = 23, .ofs_x = 1, .ofs_y = 0}, + {.bitmap_index = 10214, .adv_w = 368, .box_w = 66, .box_h = 23, .ofs_x = 1, .ofs_y = 0}, + {.bitmap_index = 10370, .adv_w = 368, .box_w = 66, .box_h = 23, .ofs_x = 1, .ofs_y = 0}, + {.bitmap_index = 10526, .adv_w = 350, .box_w = 60, .box_h = 23, .ofs_x = 1, .ofs_y = 0}, + {.bitmap_index = 10631, .adv_w = 340, .box_w = 60, .box_h = 23, .ofs_x = 1, .ofs_y = 0}, + {.bitmap_index = 10724, .adv_w = 373, .box_w = 66, .box_h = 23, .ofs_x = 1, .ofs_y = 0}, + {.bitmap_index = 10886, .adv_w = 373, .box_w = 66, .box_h = 23, .ofs_x = 1, .ofs_y = 0}, + {.bitmap_index = 10982, .adv_w = 123, .box_w = 18, .box_h = 23, .ofs_x = 1, .ofs_y = 0}, + {.bitmap_index = 11006, .adv_w = 357, .box_w = 66, .box_h = 23, .ofs_x = 0, .ofs_y = 0}, + {.bitmap_index = 11227, .adv_w = 368, .box_w = 66, .box_h = 23, .ofs_x = 1, .ofs_y = 0}, + {.bitmap_index = 11414, .adv_w = 340, .box_w = 60, .box_h = 23, .ofs_x = 1, .ofs_y = 0}, + {.bitmap_index = 11491, .adv_w = 444, .box_w = 78, .box_h = 23, .ofs_x = 1, .ofs_y = 0}, + {.bitmap_index = 11752, .adv_w = 373, .box_w = 66, .box_h = 23, .ofs_x = 1, .ofs_y = 0}, + {.bitmap_index = 11942, .adv_w = 373, .box_w = 66, .box_h = 23, .ofs_x = 1, .ofs_y = 0}, + {.bitmap_index = 12078, .adv_w = 368, .box_w = 66, .box_h = 23, .ofs_x = 1, .ofs_y = 0}, + {.bitmap_index = 12196, .adv_w = 378, .box_w = 66, .box_h = 23, .ofs_x = 1, .ofs_y = 0}, + {.bitmap_index = 12408, .adv_w = 373, .box_w = 66, .box_h = 23, .ofs_x = 1, .ofs_y = 0}, + {.bitmap_index = 12559, .adv_w = 373, .box_w = 66, .box_h = 23, .ofs_x = 1, .ofs_y = 0}, + {.bitmap_index = 12745, .adv_w = 342, .box_w = 66, .box_h = 23, .ofs_x = 0, .ofs_y = 0}, + {.bitmap_index = 12835, .adv_w = 373, .box_w = 66, .box_h = 23, .ofs_x = 1, .ofs_y = 0}, + {.bitmap_index = 12945, .adv_w = 362, .box_w = 66, .box_h = 23, .ofs_x = 0, .ofs_y = 0}, + {.bitmap_index = 13152, .adv_w = 470, .box_w = 87, .box_h = 23, .ofs_x = 0, .ofs_y = 0}, + {.bitmap_index = 13455, .adv_w = 362, .box_w = 66, .box_h = 23, .ofs_x = 0, .ofs_y = 0}, + {.bitmap_index = 13752, .adv_w = 352, .box_w = 66, .box_h = 23, .ofs_x = 0, .ofs_y = 0}, + {.bitmap_index = 13967, .adv_w = 352, .box_w = 66, .box_h = 23, .ofs_x = 0, .ofs_y = 0}, + {.bitmap_index = 14199, .adv_w = 204, .box_w = 39, .box_h = 28, .ofs_x = 0, .ofs_y = -2}, + {.bitmap_index = 14355, .adv_w = 123, .box_w = 18, .box_h = 28, .ofs_x = 1, .ofs_y = -2}, + {.bitmap_index = 14388, .adv_w = 204, .box_w = 39, .box_h = 28, .ofs_x = 0, .ofs_y = -2}, + {.bitmap_index = 14542, .adv_w = 307, .box_w = 57, .box_h = 10, .ofs_x = 0, .ofs_y = 7} +}; + +/*--------------------- + * CHARACTER MAPPING + *--------------------*/ + + + +/*Collect the unicode lists and glyph_id offsets*/ +static const lv_font_fmt_txt_cmap_t cmaps[] = +{ + { + .range_start = 32, .range_length = 95, .glyph_id_start = 1, + .unicode_list = NULL, .glyph_id_ofs_list = NULL, .list_length = 0, .type = LV_FONT_FMT_TXT_CMAP_FORMAT0_TINY + } +}; + +/*----------------- + * KERNING + *----------------*/ + + +/*Pair left and right glyphs for kerning*/ +static const uint8_t kern_pair_glyph_ids[] = +{ + 14, 18, + 14, 24, + 14, 32, + 14, 53, + 14, 85, + 19, 21, + 21, 18, + 21, 24, + 22, 18, + 22, 19, + 22, 24, + 24, 13, + 24, 15, + 24, 21, + 36, 43, + 37, 53, + 37, 58, + 39, 13, + 39, 15, + 39, 34, + 39, 43, + 44, 43, + 45, 14, + 45, 43, + 45, 53, + 45, 55, + 45, 56, + 45, 58, + 49, 13, + 49, 15, + 53, 13, + 53, 14, + 53, 15, + 53, 34, + 53, 43, + 58, 13, + 58, 15, + 58, 34, + 58, 43, + 59, 43, + 68, 75, + 69, 85, + 69, 90, + 71, 13, + 71, 15, + 71, 66, + 71, 75, + 76, 75, + 77, 14, + 77, 75, + 77, 85, + 77, 87, + 77, 88, + 77, 90, + 81, 13, + 81, 15, + 85, 13, + 85, 14, + 85, 15, + 85, 66, + 85, 75, + 90, 13, + 90, 15, + 90, 66, + 90, 75, + 91, 75 +}; + +/* Kerning between the respective left and right glyphs + * 4.4 format which needs to scaled with `kern_scale`*/ +static const int8_t kern_pair_values[] = +{ + -26, -26, -26, -26, -26, -31, -20, -20, + -20, -10, -10, -77, -77, -51, -15, -20, + -15, -77, -77, -15, -20, -10, -26, -20, + -102, -20, -20, -87, -77, -77, -77, -26, + -77, -20, -82, -77, -77, -15, -41, -20, + -15, -20, -15, -77, -77, -15, -20, -10, + -26, -20, -102, -20, -20, -87, -77, -77, + -77, -26, -77, -20, -82, -61, -61, -15, + -41, -20 +}; + +/*Collect the kern pair's data in one place*/ +static const lv_font_fmt_txt_kern_pair_t kern_pairs = +{ + .glyph_ids = kern_pair_glyph_ids, + .values = kern_pair_values, + .pair_cnt = 66, + .glyph_ids_size = 0 +}; + +/*-------------------- + * ALL CUSTOM DATA + *--------------------*/ + +#if LVGL_VERSION_MAJOR >= 8 +/*Store all the custom data of the font*/ +static lv_font_fmt_txt_glyph_cache_t cache; +static const lv_font_fmt_txt_dsc_t font_dsc = { +#else +static lv_font_fmt_txt_dsc_t font_dsc = { +#endif + .glyph_bitmap = glyph_bitmap, + .glyph_dsc = glyph_dsc, + .cmaps = cmaps, + .kern_dsc = &kern_pairs, + .kern_scale = 16, + .cmap_num = 1, + .bpp = 4, + .kern_classes = 0, + .bitmap_format = 1, +#if LVGL_VERSION_MAJOR >= 8 + .cache = &cache +#endif +}; + + +/*----------------- + * PUBLIC FONT + *----------------*/ + +/*Initialize a public general font descriptor*/ +#if LVGL_VERSION_MAJOR >= 8 +const lv_font_t furore_32 = { +#else +lv_font_t furore_32 = { +#endif + .get_glyph_dsc = lv_font_get_glyph_dsc_fmt_txt, /*Function pointer to get glyph's data*/ + .get_glyph_bitmap = lv_font_get_bitmap_fmt_txt, /*Function pointer to get glyph's bitmap*/ + .line_height = 31, /*The maximum line height required by the font*/ + .base_line = 5, /*Baseline measured from the bottom of the line*/ +#if !(LVGL_VERSION_MAJOR == 6 && LVGL_VERSION_MINOR == 0) + .subpx = LV_FONT_SUBPX_HOR, +#endif +#if LV_VERSION_CHECK(7, 4, 0) || LVGL_VERSION_MAJOR >= 8 + .underline_position = 3, + .underline_thickness = 2, +#endif + .dsc = &font_dsc, /*The custom font data. Will be accessed by `get_glyph_bitmap/dsc` */ +}; + + + +#endif /*#if FURORE_32*/ + diff --git a/fonts/ime_num_32.c b/fonts/ime_num_32.c new file mode 100644 index 0000000..8d48fbe --- /dev/null +++ b/fonts/ime_num_32.c @@ -0,0 +1,3297 @@ +/******************************************************************************* + * Size: 32 px + * Bpp: 4 + * Opts: + ******************************************************************************/ + +#ifdef LV_LVGL_H_INCLUDE_SIMPLE +#include "lvgl.h" +#else +#include "lvgl/lvgl.h" +#endif + +#ifndef IME_NUM_32 +#define IME_NUM_32 1 +#endif + +#if IME_NUM_32 + +/*----------------- + * BITMAPS + *----------------*/ + +/*Store the image of the glyphs*/ +static LV_ATTRIBUTE_LARGE_CONST const uint8_t glyph_bitmap[] = { + /* U+0020 " " */ + + /* U+0021 "!" */ + 0x0, 0x35, 0xff, 0xff, 0xa9, 0x0, 0x3f, 0xff, + 0xe0, 0x60, 0x1f, 0xf1, 0x80, 0x70, 0x88, 0x3, + 0xf8, 0x85, 0xc0, 0x33, 0x98, 0x80, 0x7e, 0x1f, + 0x10, 0xc, 0x3c, 0x60, 0x1f, 0x9c, 0x48, 0x3, + 0x18, 0xb0, 0x7, 0xe1, 0x30, 0xe, 0x13, 0x10, + 0xf, 0x84, 0xd8, 0x3, 0xc2, 0x62, 0x1, 0xe3, + 0xe1, 0x0, 0xf3, 0x9, 0x80, 0x79, 0x84, 0xc0, + 0x3c, 0x7c, 0x20, 0x1e, 0x13, 0x10, 0xf, 0xa, + 0xda, 0xaf, 0xb1, 0xc0, 0x3f, 0x1b, 0xd5, 0x79, + 0x88, 0x3, 0xff, 0x9c, 0x26, 0xae, 0xf3, 0x21, + 0x0, 0x7c, 0x71, 0x98, 0xa8, 0x8a, 0x6f, 0x71, + 0xc8, 0x2, 0x2b, 0x52, 0x0, 0xfc, 0x76, 0x82, + 0x0, 0x3e, 0x60, 0xf, 0xf3, 0x10, 0x80, 0x5, + 0xa6, 0x4a, 0x62, 0x0, 0x13, 0x6a, 0xb4, 0x0, + 0x0, + + /* U+0022 "\"" */ + 0x1, 0x6c, 0xff, 0xfb, 0x1c, 0x80, 0x22, 0x8d, + 0xff, 0xfa, 0xd8, 0x3, 0xff, 0xfe, 0x1, 0xff, + 0xff, 0x0, 0xff, 0xf9, 0xb, 0x67, 0xff, 0xd8, + 0xe4, 0x1, 0x14, 0x6f, 0xff, 0xd6, 0xc0, + + /* U+0023 "#" */ + 0x0, 0xff, 0xe4, 0xb, 0xe7, 0xff, 0xd2, 0x80, + 0x1f, 0xfc, 0x25, 0xaf, 0xff, 0xa9, 0x40, 0x3f, + 0xfa, 0x85, 0xc4, 0x1, 0xe3, 0xe6, 0x0, 0xff, + 0xe0, 0x91, 0x1c, 0x3, 0xc2, 0x4c, 0x1, 0xff, + 0xd4, 0x52, 0x10, 0xf, 0x31, 0x10, 0x3, 0xff, + 0x82, 0xda, 0x40, 0x1e, 0x5e, 0x20, 0xf, 0xfe, + 0x99, 0xf3, 0x0, 0x78, 0x88, 0xc0, 0x1f, 0xfc, + 0x11, 0x36, 0x0, 0xf8, 0x88, 0x20, 0x1f, 0xfd, + 0x36, 0x22, 0x0, 0x79, 0xb8, 0xc0, 0x3f, 0xf8, + 0x25, 0xc4, 0x1, 0xe2, 0xe6, 0x0, 0xff, 0xe3, + 0x24, 0xff, 0xff, 0xf0, 0x29, 0x40, 0x3e, 0x49, + 0xff, 0xff, 0xe1, 0x63, 0x8, 0x7, 0x8a, 0x37, + 0xff, 0xfd, 0x8e, 0x20, 0x1c, 0x24, 0x1, 0xff, + 0xef, 0x62, 0x10, 0xc, 0x24, 0xe0, 0x1f, 0xfe, + 0xe1, 0x26, 0x0, 0xe1, 0x7c, 0xee, 0xff, 0x63, + 0x90, 0x7, 0x85, 0xaf, 0xbb, 0xff, 0x83, 0xb0, + 0x60, 0x1f, 0x2d, 0x77, 0x7f, 0xf0, 0x20, 0xc0, + 0x3f, 0x8, 0xff, 0x9c, 0x88, 0x1, 0xe2, 0xe5, + 0x11, 0xff, 0xe1, 0x78, 0x80, 0x78, 0x88, 0xc2, + 0x3f, 0xf0, 0x7, 0xff, 0x20, 0x48, 0x40, 0x3e, + 0x62, 0x10, 0xf, 0xfe, 0xb, 0x11, 0x0, 0x3c, + 0x3c, 0x40, 0x1f, 0xfd, 0x33, 0xe6, 0x0, 0xf0, + 0x9b, 0x0, 0x7f, 0xf0, 0x44, 0xd8, 0x3, 0xe6, + 0x31, 0x0, 0xff, 0xe9, 0xb0, 0x90, 0x7, 0x8b, + 0x88, 0x3, 0xff, 0x82, 0x5c, 0x20, 0x1e, 0x12, + 0x60, 0xf, 0xfe, 0x40, 0x8f, 0xfc, 0x46, 0x40, + 0x1f, 0x38, 0x80, 0x8f, 0xff, 0x5, 0x88, 0x80, + 0x1e, 0x2f, 0x1, 0x1f, 0xf8, 0x3, 0xe4, 0xae, + 0xef, 0xfb, 0x61, 0x0, 0x3e, 0x49, 0xee, 0xff, + 0xe1, 0x52, 0x80, 0x7c, 0x71, 0x9d, 0xdf, 0xea, + 0x60, 0xe, 0x12, 0x10, 0xf, 0xff, 0x79, 0x10, + 0x3, 0x8f, 0x98, 0x3, 0xff, 0xdc, 0x42, 0xc0, + 0x1c, 0x51, 0xbf, 0xff, 0xec, 0x71, 0x0, 0xf1, + 0x3e, 0xff, 0xff, 0xf0, 0x76, 0xc, 0x3, 0xc2, + 0xd7, 0xff, 0xff, 0x6c, 0x10, 0x7, 0xff, 0x19, + 0x8c, 0x40, 0x3c, 0xdc, 0x40, 0x1f, 0xfc, 0x16, + 0xe2, 0x0, 0xf1, 0x73, 0x0, 0x7f, 0xf4, 0xc8, + 0x8c, 0x1, 0xe1, 0x25, 0x0, 0xff, 0xe0, 0x89, + 0x10, 0x40, 0x3c, 0xc4, 0x40, 0xf, 0xfe, 0x9b, + 0x71, 0x0, 0x78, 0xb8, 0x80, 0x3f, 0xf8, 0x25, + 0xca, 0x1, 0xe2, 0x23, 0x0, 0x7f, 0xf4, 0xc4, + 0x88, 0x1, 0xf3, 0x10, 0x80, 0x7f, 0xf0, 0x58, + 0x84, 0x3, 0xcd, 0xc4, 0x1, 0xff, 0xc7, + + /* U+0024 "$" */ + 0x0, 0xff, 0xe6, 0xa4, 0xff, 0xfd, 0xd2, 0x60, + 0x1f, 0xff, 0xf0, 0xf, 0xff, 0xf8, 0x7, 0xff, + 0xe8, 0x4d, 0x5e, 0x6a, 0xf2, 0x98, 0x3, 0xe1, + 0x6d, 0xd6, 0x5d, 0x4c, 0x32, 0x98, 0x80, 0x7f, + 0xf3, 0x49, 0x63, 0x3b, 0x99, 0x50, 0xca, 0x86, + 0x20, 0x1f, 0xe1, 0x23, 0x45, 0x67, 0x9a, 0xce, + 0xfd, 0xb9, 0x64, 0x10, 0xf, 0xfe, 0x19, 0x35, + 0xe5, 0x39, 0x88, 0x7, 0xff, 0x4c, 0x91, 0xa6, + 0xfa, 0x94, 0x40, 0x3f, 0xc4, 0xff, 0x28, 0x20, + 0x1f, 0xfc, 0x31, 0x11, 0x8, 0x80, 0x3f, 0xf9, + 0xb, 0xe8, 0x20, 0x1f, 0xc9, 0x72, 0x40, 0x1f, + 0xf1, 0x34, 0xe7, 0x7f, 0xbb, 0x9b, 0xdc, 0xff, + 0xb7, 0x2e, 0x5d, 0x4c, 0x80, 0x3e, 0x27, 0x95, + 0x10, 0xf, 0xe2, 0xc4, 0x10, 0xf, 0xf0, 0xb7, + 0x4b, 0x18, 0x80, 0x7f, 0x88, 0xd1, 0xa2, 0xb3, + 0x7f, 0x6a, 0x14, 0xd6, 0xe4, 0xc0, 0x3f, 0xe1, + 0x11, 0x80, 0x7f, 0xf0, 0x4, 0x3, 0xff, 0x98, + 0x4a, 0xf5, 0x94, 0xc2, 0x1, 0xff, 0xc0, 0x1e, + 0x30, 0xf, 0xf8, 0x5e, 0x1c, 0x80, 0x3f, 0xfb, + 0xa4, 0x88, 0x10, 0xf, 0xfe, 0x2, 0x46, 0xea, + 0xe1, 0x90, 0x80, 0x3f, 0xfb, 0x7, 0x16, 0x82, + 0x1, 0xff, 0xc1, 0x24, 0x79, 0xbd, 0xfe, 0xdb, + 0x98, 0x64, 0x31, 0x0, 0xff, 0xe7, 0x8a, 0xde, + 0xc2, 0x8, 0x7, 0xff, 0x14, 0x49, 0x19, 0xe6, + 0xf3, 0xbf, 0x6e, 0x5d, 0x8, 0x3, 0xff, 0x96, + 0x6f, 0x7f, 0x92, 0xc8, 0x40, 0x1f, 0xfc, 0xa2, + 0x46, 0x8b, 0xde, 0xb7, 0x41, 0x0, 0xff, 0xe4, + 0x89, 0xb4, 0xde, 0xfe, 0xe5, 0x43, 0x29, 0x88, + 0x7, 0xff, 0x1c, 0x52, 0x2f, 0x21, 0x0, 0x3f, + 0xf9, 0xc4, 0x6a, 0xf3, 0x59, 0xdf, 0xd9, 0x72, + 0xea, 0x62, 0x1, 0xff, 0xc2, 0x27, 0xa8, 0x30, + 0xf, 0xfe, 0xa8, 0x9a, 0x34, 0x56, 0x77, 0x2d, + 0xcc, 0x3, 0xff, 0x80, 0x2d, 0x48, 0x1, 0xfc, + 0x24, 0x41, 0x0, 0xff, 0xe7, 0x8a, 0x46, 0xc9, + 0x80, 0x7f, 0xc2, 0x44, 0x10, 0xf, 0x92, 0x33, + 0x7e, 0xdc, 0xc4, 0x3, 0xff, 0x9c, 0x24, 0xa2, + 0x1, 0xff, 0xc7, 0x27, 0x86, 0x10, 0x14, 0x8c, + 0xfc, 0x97, 0x41, 0x0, 0xff, 0xe4, 0xa6, 0xb8, + 0x80, 0x7f, 0x84, 0x88, 0x20, 0x19, 0x2e, 0x4c, + 0x3, 0xe1, 0x36, 0x8b, 0xee, 0x6d, 0xd4, 0x32, + 0xa2, 0xc, 0xc4, 0x43, 0x32, 0x2b, 0xcd, 0xed, + 0xb0, 0x80, 0x7f, 0x85, 0xf5, 0x0, 0x39, 0xf9, + 0x44, 0x3, 0xff, 0x82, 0x24, 0x8a, 0xf3, 0x57, + 0x6c, 0xc6, 0xeb, 0x31, 0x75, 0xc, 0x84, 0x1, + 0xff, 0xa, 0x44, 0x10, 0x3, 0xc6, 0xf7, 0xf9, + 0x2c, 0x62, 0x1, 0xff, 0xd9, 0x13, 0x8d, 0xb6, + 0x10, 0xf, 0xf0, 0x9b, 0x4e, 0x76, 0xd4, 0x32, + 0x10, 0x80, 0x7f, 0xf3, 0x44, 0xd6, 0x2f, 0xf1, + 0xcc, 0x3, 0xff, 0x8e, 0x4a, 0xf3, 0x7b, 0xdc, + 0xdc, 0xa9, 0x87, 0x52, 0x0, 0xfc, 0x6d, 0x13, + 0x57, 0xbd, 0xcc, 0xa7, 0x41, 0x0, 0xff, 0xe8, + 0x89, 0x1a, 0xb3, 0xc7, 0x20, 0x7, 0xc2, 0xb4, + 0xec, 0xa8, 0x42, 0x1, 0xff, 0xff, 0x0, 0xff, + 0xff, 0x80, 0x7f, 0xf8, 0xc0, + + /* U+0025 "%" */ + 0x0, 0xff, 0x9, 0xac, 0x55, 0xef, 0x73, 0xff, + 0x77, 0x37, 0x2a, 0x18, 0xc4, 0x3, 0xff, 0xa6, + 0x2b, 0x5d, 0xff, 0xec, 0x72, 0x0, 0xff, 0xe6, + 0x13, 0x5f, 0xe5, 0x3a, 0xa1, 0x8, 0x80, 0x30, + 0x88, 0x8d, 0x5e, 0x73, 0xf2, 0xc, 0x40, 0x3f, + 0xf9, 0xa4, 0xdb, 0x4a, 0x20, 0x19, 0x27, 0x9c, + 0x80, 0x3f, 0xf9, 0x47, 0x3f, 0x28, 0x20, 0x18, + 0x4d, 0x5e, 0x26, 0x50, 0xec, 0x82, 0x1, 0x84, + 0xdf, 0x69, 0x44, 0x3, 0xff, 0x92, 0x71, 0xf2, + 0x60, 0x18, 0x56, 0xa8, 0xc4, 0x1, 0xff, 0xca, + 0x16, 0x86, 0x20, 0xc, 0x29, 0x3f, 0x95, 0xe, + 0xcc, 0x78, 0x9b, 0xeb, 0x62, 0x0, 0xc2, 0x91, + 0x26, 0x1, 0xff, 0xc6, 0x49, 0xe7, 0x20, 0xc, + 0x4d, 0x54, 0x51, 0x0, 0xff, 0xe6, 0x3e, 0xa0, + 0x7, 0x14, 0xc9, 0x84, 0x3, 0xfe, 0x48, 0x82, + 0x0, 0x71, 0x2d, 0x90, 0x7, 0xff, 0x8, 0x56, + 0xa8, 0xc4, 0x1, 0x89, 0xfa, 0x50, 0x3, 0xff, + 0x9c, 0x7c, 0xc0, 0x1c, 0x28, 0x64, 0x1, 0xff, + 0xc2, 0x14, 0xc3, 0x0, 0xe2, 0x23, 0x80, 0x7f, + 0xf0, 0x9, 0xaa, 0x8a, 0x20, 0x18, 0xe7, 0xe0, + 0xc0, 0x3f, 0xfa, 0x22, 0x60, 0x1c, 0x62, 0xc0, + 0x1f, 0xfc, 0x41, 0x27, 0x0, 0xf0, 0x80, 0x7f, + 0xc4, 0xfd, 0x28, 0x1, 0x85, 0x2b, 0x58, 0x80, + 0x3f, 0xfa, 0x62, 0x60, 0x1c, 0x62, 0xc0, 0x1f, + 0xfc, 0x41, 0x27, 0x0, 0xf0, 0x80, 0x7f, 0x1c, + 0xfc, 0x18, 0x6, 0x16, 0xaa, 0x28, 0x80, 0x7f, + 0xf5, 0xf, 0x58, 0x3, 0x85, 0x30, 0x80, 0x3f, + 0xf8, 0x42, 0x98, 0x60, 0x1c, 0x5a, 0xe0, 0x1c, + 0x29, 0x5a, 0xc4, 0x1, 0x89, 0xf6, 0x50, 0x40, + 0x3f, 0xfa, 0xe9, 0xa8, 0x1, 0xc4, 0xd2, 0xc2, + 0x1, 0xff, 0x24, 0x41, 0x0, 0x38, 0x95, 0x44, + 0x1, 0xb, 0x55, 0x14, 0x40, 0x31, 0xc7, 0xc1, + 0x80, 0x42, 0x6b, 0x15, 0x7b, 0xdc, 0xff, 0xdd, + 0xcd, 0xca, 0x86, 0x31, 0x0, 0xff, 0xe0, 0x8b, + 0x43, 0x90, 0x6, 0x14, 0x9f, 0xca, 0x87, 0x66, + 0x3c, 0x4d, 0xf5, 0xb1, 0x0, 0x61, 0x58, 0x92, + 0x0, 0x13, 0xec, 0xa0, 0x80, 0x42, 0x93, 0xce, + 0x40, 0x2, 0x6b, 0xfc, 0xa7, 0x54, 0x21, 0x10, + 0x6, 0x11, 0x11, 0xab, 0xce, 0x7e, 0x39, 0x88, + 0x7, 0xfc, 0x71, 0xf2, 0x82, 0x1, 0x84, 0xd5, + 0xe2, 0x65, 0xe, 0xc8, 0x20, 0x18, 0x4e, 0x36, + 0x94, 0x40, 0xe3, 0xe0, 0xc0, 0x30, 0xad, 0xd3, + 0x10, 0x0, 0xe7, 0xe5, 0x4, 0x3, 0x9, 0xab, + 0xc4, 0xca, 0x1d, 0x8c, 0x40, 0x30, 0x9c, 0x6d, + 0xa8, 0x80, 0x7f, 0xc4, 0xd7, 0xfb, 0x4e, 0xa8, + 0x42, 0x20, 0xe, 0x12, 0x35, 0x79, 0xcf, 0xc7, + 0x30, 0x14, 0x9d, 0x72, 0x0, 0xc4, 0xdb, 0x4a, + 0x20, 0x1, 0x6f, 0x62, 0x0, 0xc2, 0xb5, 0xf9, + 0x50, 0xec, 0xc7, 0x89, 0xcf, 0xb6, 0x20, 0xc, + 0x2b, 0x12, 0x60, 0x1f, 0xfc, 0x11, 0x25, 0x8a, + 0xbd, 0xee, 0x7f, 0xf7, 0x6e, 0x54, 0x31, 0x88, + 0x0, 0x56, 0xa8, 0xc2, 0x1, 0x8e, 0x3a, 0x4c, + 0x3, 0x9f, 0x4c, 0x3, 0x8a, 0x61, 0x44, 0x3, + 0xfc, 0x29, 0x10, 0x40, 0xe, 0x25, 0x42, 0x0, + 0xff, 0xeb, 0x13, 0xed, 0x20, 0x80, 0x64, 0x9e, + 0x73, 0x0, 0xf1, 0xf2, 0x80, 0x70, 0xa2, 0x8, + 0x3, 0xff, 0x84, 0x2f, 0x86, 0x1, 0xc5, 0xac, + 0x1, 0xff, 0xd4, 0x38, 0xe8, 0x30, 0xc, 0x2b, + 0x54, 0x62, 0x0, 0xfc, 0xe2, 0x1, 0xe3, 0xe1, + 0x0, 0xff, 0xe2, 0x10, 0xb8, 0x7, 0x84, 0x40, + 0x1f, 0xfd, 0x24, 0x9e, 0x73, 0x0, 0xc4, 0xd5, + 0x6a, 0x20, 0x1f, 0xe7, 0x10, 0xf, 0x1f, 0x8, + 0x7, 0xff, 0x10, 0x85, 0xc0, 0x3c, 0x22, 0x0, + 0xff, 0xe7, 0x8a, 0xd5, 0x18, 0x80, 0x31, 0x3f, + 0x4a, 0x8, 0x7, 0xff, 0x0, 0xf9, 0x40, 0x38, + 0x55, 0x8, 0x3, 0xff, 0x86, 0xfa, 0x60, 0x1c, + 0x7a, 0xc0, 0x1f, 0xfc, 0xd2, 0x6a, 0xa2, 0x88, + 0x6, 0x38, 0xf8, 0x30, 0xf, 0xfe, 0x23, 0xea, + 0x0, 0x71, 0xcc, 0x20, 0x7, 0xff, 0x0, 0xe2, + 0xa, 0x1, 0xc5, 0x6a, 0x40, 0x1f, 0xfc, 0xb3, + 0x7e, 0x94, 0x0, 0xc2, 0x93, 0xae, 0x40, 0x1f, + 0xfc, 0x61, 0x68, 0x62, 0x0, 0xc2, 0xb7, 0xb7, + 0xc, 0xab, 0x9a, 0x2b, 0x30, 0xe4, 0x1, 0x85, + 0x65, 0x88, 0x3, 0xff, 0x94, 0x71, 0xd0, 0x60, + 0x18, 0x56, 0xa8, 0xc2, 0x1, 0xff, 0xca, 0x39, + 0xf9, 0x41, 0x0, 0xc4, 0x8f, 0x35, 0x5a, 0x5d, + 0x4c, 0x3, 0x9, 0xc6, 0xd2, 0x8, 0x7, 0xff, + 0x20, 0x52, 0xb5, 0xc8, 0x3, 0x13, 0xed, 0x20, + 0x80, 0x7f, 0xf3, 0x89, 0xaf, 0xf2, 0x9d, 0x50, + 0x84, 0x40, 0x18, 0x44, 0x46, 0xaf, 0x39, 0xf8, + 0xe6, 0x1, 0xf0, + + /* U+0026 "&" */ + 0x0, 0xff, 0xe2, 0x92, 0x34, 0xd6, 0x6f, 0x73, + 0xff, 0x77, 0x37, 0x2e, 0x61, 0x4c, 0x40, 0x3f, + 0xfb, 0x2, 0xb5, 0xba, 0xb9, 0x65, 0x32, 0x11, + 0x0, 0x61, 0x11, 0x1a, 0x33, 0xd6, 0x7e, 0x41, + 0x88, 0x7, 0xff, 0x48, 0xa3, 0x29, 0x48, 0x3, + 0xe2, 0x45, 0x66, 0x95, 0x8, 0x3, 0xc2, 0x6f, + 0x96, 0xa2, 0x1, 0xff, 0xcf, 0x4b, 0x62, 0x0, + 0xf0, 0xad, 0x76, 0xdd, 0x4c, 0xd5, 0x7b, 0xa8, + 0x30, 0xf, 0x96, 0x58, 0x40, 0x3f, 0xf9, 0xa4, + 0x6a, 0x20, 0x1e, 0x16, 0x95, 0x10, 0xf, 0xe2, + 0x6a, 0x40, 0xf, 0x8f, 0x94, 0x3, 0xff, 0xae, + 0x60, 0x20, 0x1f, 0xfc, 0x2, 0xe6, 0x0, 0xf8, + 0x44, 0xe0, 0x1f, 0xfc, 0xd2, 0x35, 0x10, 0xf, + 0x12, 0x28, 0x80, 0x7f, 0x13, 0xc3, 0x90, 0x7, + 0x85, 0xf0, 0xc0, 0x3f, 0xf9, 0xc9, 0xae, 0x20, + 0x1e, 0x39, 0x84, 0x0, 0xc4, 0xb3, 0x98, 0x84, + 0x0, 0xf0, 0xad, 0xc2, 0x0, 0x7f, 0xf4, 0x12, + 0x20, 0x80, 0x1e, 0x16, 0x9b, 0xac, 0xed, 0xa6, + 0x31, 0x0, 0xe2, 0x6a, 0xca, 0x51, 0x0, 0xff, + 0xe9, 0xb, 0x4c, 0x8c, 0x3, 0xc4, 0x8a, 0x62, + 0x1, 0xc4, 0x8f, 0x7b, 0xa9, 0x52, 0x0, 0xff, + 0xea, 0xa, 0x3c, 0x59, 0x80, 0x7f, 0xf0, 0x5, + 0x6b, 0xb6, 0xe1, 0x8, 0x3, 0xff, 0xa8, 0x29, + 0x19, 0xd7, 0xa, 0x40, 0x1f, 0xfc, 0x11, 0x58, + 0x94, 0x10, 0xf, 0xfe, 0x2, 0x44, 0xb1, 0x0, + 0x7f, 0xf0, 0xc5, 0x2b, 0x2d, 0xcc, 0x3, 0xc4, + 0xd3, 0x9b, 0x6c, 0x40, 0x1e, 0x27, 0xbd, 0x83, + 0x10, 0xf, 0x85, 0xa1, 0xda, 0x77, 0x56, 0xe6, + 0x20, 0x1f, 0xcb, 0x74, 0xa4, 0x1, 0xe3, 0x8c, + 0xd9, 0x63, 0x24, 0x9c, 0xb6, 0x20, 0xf, 0x1b, + 0xe6, 0x21, 0x4, 0x2, 0x38, 0xb3, 0x0, 0xc4, + 0x93, 0x24, 0x0, 0xfc, 0xbc, 0xa2, 0x1, 0xe3, + 0x8e, 0x73, 0x0, 0xf8, 0x52, 0x72, 0xd8, 0x80, + 0x3c, 0x4f, 0x79, 0x2f, 0x3e, 0xc4, 0x1, 0xe2, + 0x68, 0x50, 0xf, 0x8b, 0x58, 0x3, 0xf2, 0x99, + 0x0, 0x7f, 0xf0, 0x5, 0x27, 0x2d, 0x88, 0x3, + 0xc4, 0xd0, 0xc6, 0x1, 0xe1, 0x59, 0x91, 0x0, + 0x7e, 0x3f, 0x10, 0xf, 0xc4, 0x41, 0x0, 0xff, + 0xe1, 0x8a, 0x4e, 0x5b, 0x98, 0x7, 0xff, 0x0, + 0x56, 0xad, 0x4, 0x3, 0xf8, 0x4d, 0x44, 0x3, + 0xe4, 0xb8, 0x41, 0x0, 0xff, 0xe2, 0xbf, 0xb8, + 0x80, 0x7f, 0xf0, 0x4, 0xc8, 0x3, 0xff, 0x80, + 0x94, 0xc4, 0x1, 0xf1, 0x35, 0xfe, 0x4b, 0x29, + 0x98, 0x84, 0x88, 0x68, 0xd1, 0x5b, 0xf9, 0x8, + 0x20, 0x1f, 0xf0, 0xa4, 0x66, 0x20, 0xc4, 0x3, + 0xf8, 0xe3, 0x9c, 0xc0, 0x3f, 0x9, 0xb4, 0xd6, + 0x63, 0x7b, 0x75, 0x97, 0x2e, 0xa4, 0x20, 0x1f, + 0x13, 0x44, 0x10, 0x40, 0x3c, 0x6f, 0x98, 0x94, + 0x10, 0xf, 0xc7, 0x1b, 0x90, 0x84, 0x1, 0xff, + 0xcc, 0x13, 0x6a, 0xdd, 0x4b, 0xba, 0xf2, 0x50, + 0x40, 0x3c, 0x4d, 0x50, 0x80, 0x1f, 0xc2, 0x6f, + 0x7b, 0xab, 0x97, 0x64, 0x32, 0x11, 0x0, 0x61, + 0x11, 0x1a, 0x33, 0xcd, 0xef, 0x64, 0xa9, 0x0, + 0x71, 0x35, 0xe5, 0x28, 0x80, 0x5, 0x27, 0x25, + 0x0, 0x3f, 0xf8, 0x44, 0x8d, 0x13, 0x79, 0xbd, + 0xcf, 0xfd, 0xdc, 0xdc, 0xb9, 0x86, 0x42, 0x0, + 0xff, 0xe0, 0x92, 0xd7, 0xdd, 0xb2, 0xd8, 0x80, + 0x30, + + /* U+0027 "'" */ + 0x1, 0x6c, 0xff, 0xfb, 0x1c, 0x80, 0x3f, 0xff, + 0xe0, 0x1f, 0xfd, 0x41, 0x6c, 0xff, 0xfb, 0x1c, + 0x80, + + /* U+0028 "(" */ + 0x0, 0xff, 0xe0, 0x9c, 0x6f, 0xff, 0xee, 0x94, + 0x0, 0xff, 0xe1, 0x13, 0xfb, 0x90, 0x7, 0xc9, + 0x10, 0x40, 0xf, 0xfe, 0x0, 0xac, 0xc1, 0x80, + 0x7c, 0x4f, 0xc, 0x20, 0x1f, 0xfc, 0x2, 0x98, + 0x40, 0xf, 0xc9, 0x72, 0x60, 0x1f, 0xfc, 0x13, + 0xa6, 0x20, 0xf, 0xc9, 0xcc, 0x20, 0x1f, 0xfc, + 0x14, 0xa6, 0x10, 0xf, 0xcb, 0xca, 0x1, 0xff, + 0xc2, 0x3d, 0x71, 0x0, 0xfc, 0xbe, 0xa0, 0x1f, + 0xfc, 0x21, 0x45, 0x10, 0xf, 0xc7, 0xae, 0x1, + 0xff, 0xc3, 0x4d, 0x30, 0xf, 0xc2, 0xa6, 0x40, + 0x1f, 0xfc, 0x23, 0xd7, 0x0, 0xfe, 0x5f, 0x40, + 0xf, 0xfe, 0x1b, 0x11, 0x0, 0x3f, 0x9, 0x10, + 0x3, 0xff, 0x88, 0x62, 0x1, 0xfc, 0x62, 0xe0, + 0x1f, 0xfc, 0x31, 0x13, 0x80, 0x7f, 0xf, 0x90, + 0x7, 0xff, 0xc, 0xfc, 0x40, 0x3f, 0x9c, 0x40, + 0x3f, 0xf8, 0xbe, 0x20, 0x1f, 0xce, 0x1, 0xff, + 0xc5, 0x31, 0x70, 0xf, 0xe1, 0x11, 0x80, 0x7f, + 0xf0, 0xc4, 0xc4, 0x3, 0xf8, 0xf8, 0x40, 0x3f, + 0xf8, 0x82, 0x62, 0x1, 0xf8, 0x4d, 0x80, 0x3f, + 0xf8, 0x8b, 0xea, 0x1, 0xfc, 0xfa, 0x60, 0x1f, + 0xfc, 0x31, 0x53, 0x20, 0xf, 0xc4, 0x6a, 0x20, + 0x1f, 0xfc, 0x33, 0xd7, 0x0, 0xfe, 0x5f, 0x50, + 0xf, 0xfe, 0x22, 0x62, 0x0, 0x7e, 0x17, 0xc3, + 0x0, 0xff, 0xe1, 0x8b, 0x72, 0x80, 0x7e, 0x16, + 0xa4, 0x0, 0xff, 0xe2, 0x2f, 0x28, 0x80, 0x7c, + 0x2f, 0xa8, 0x1, 0xff, 0xc4, 0x49, 0x62, 0x0, + 0xf8, 0x5b, 0x94, 0x40, 0x3f, 0xf8, 0x67, 0x32, + 0x51, 0x0, 0xf9, 0x62, 0x4c, 0x3, 0xff, 0x86, + 0x29, 0x70, 0x80, 0x1f, 0x13, 0xc3, 0x8, 0x7, + 0xff, 0xc, 0x5a, 0xb2, 0xea, 0xbe, 0xe5, 0x30, + 0x8, + + /* U+0029 ")" */ + 0x15, 0xaf, 0xff, 0xec, 0x72, 0x0, 0xff, 0xe0, + 0xa, 0xc4, 0xc, 0x3, 0xe3, 0x89, 0x51, 0x0, + 0xff, 0xe0, 0x13, 0xc3, 0x8, 0x7, 0xc9, 0x70, + 0x80, 0x1f, 0xfc, 0x14, 0xb6, 0x20, 0xf, 0x85, + 0xbd, 0x84, 0x3, 0xff, 0x80, 0x55, 0x43, 0x0, + 0xfc, 0x94, 0xe2, 0x1, 0xff, 0xc0, 0x25, 0xb3, + 0x0, 0xfc, 0x74, 0xc4, 0x1, 0xff, 0xc0, 0x26, + 0xb3, 0x0, 0xfc, 0x76, 0xa4, 0x1, 0xff, 0xc0, + 0x14, 0x41, 0x0, 0x7e, 0x3c, 0x41, 0x0, 0xff, + 0xe0, 0x1e, 0xb8, 0x7, 0xf2, 0xfa, 0x80, 0x7f, + 0xf0, 0x5f, 0x48, 0x3, 0xf0, 0xa9, 0x88, 0x7, + 0xff, 0x0, 0x88, 0xe0, 0x1f, 0xc5, 0xc4, 0x1, + 0xff, 0xc1, 0x63, 0x10, 0xf, 0xc2, 0x6c, 0x1, + 0xff, 0xc1, 0x11, 0x18, 0x7, 0xf0, 0x98, 0x7, + 0xff, 0xb, 0xc0, 0x3f, 0xce, 0x2, 0x1, 0xff, + 0xc1, 0xf0, 0xf, 0xf3, 0x80, 0x7f, 0xf0, 0x84, + 0xc, 0x3, 0xfc, 0x62, 0x1, 0xff, 0xc0, 0x72, + 0x10, 0xf, 0xc2, 0x42, 0x1, 0xff, 0xc0, 0x12, + 0x60, 0xf, 0xe3, 0xe6, 0x0, 0xff, 0xe0, 0x2f, + 0x90, 0x7, 0xf3, 0x91, 0x0, 0x3f, 0xe2, 0x35, + 0x10, 0xf, 0xc7, 0xae, 0x1, 0xff, 0xc0, 0x4c, + 0x30, 0xf, 0xc2, 0x88, 0x20, 0xf, 0xf9, 0x71, + 0x0, 0x3f, 0xb, 0xe1, 0x80, 0x7f, 0xcb, 0xca, + 0x1, 0xf8, 0x5a, 0x90, 0x3, 0xfc, 0x2d, 0xc8, + 0x1, 0xf8, 0x9a, 0x8c, 0x3, 0xfc, 0x4d, 0x48, + 0x1, 0xf8, 0xea, 0x84, 0x1, 0xfe, 0x48, 0x93, + 0x0, 0xf8, 0x9f, 0xdc, 0x80, 0x3f, 0x8a, 0x25, + 0x44, 0x3, 0xc2, 0xb3, 0x6, 0x1, 0xff, 0xc0, + 0xc8, 0xaa, 0xfa, 0xf2, 0xd0, 0x3, 0xff, 0x80, + + /* U+002A "*" */ + 0x0, 0xff, 0xe1, 0x8, 0xf8, 0x3, 0xff, 0x9c, + 0xd5, 0xdd, 0xb5, 0xc4, 0x3, 0xff, 0x86, 0x48, + 0xa6, 0x20, 0x1f, 0xf0, 0x80, 0x71, 0x2a, 0x10, + 0x7, 0xb, 0x4d, 0xd6, 0x7e, 0x4b, 0x20, 0x80, + 0x78, 0x55, 0x51, 0x9d, 0xb5, 0x7c, 0xe4, 0x1, + 0x2f, 0x38, 0x80, 0x4, 0xda, 0x6e, 0x10, 0x3, + 0x1c, 0x5d, 0x39, 0x88, 0x4, 0x3c, 0xe2, 0x0, + 0x48, 0xce, 0xda, 0x74, 0x20, 0xf, 0xfe, 0x0, + 0xa3, 0xce, 0x76, 0xca, 0x88, 0x7, 0xb, 0x18, + 0xb9, 0x80, 0x7f, 0xf0, 0x5c, 0x85, 0xcc, 0x3, + 0xc9, 0x3b, 0xd7, 0x2c, 0x62, 0x1, 0xff, 0xc0, + 0x13, 0x58, 0xbd, 0xea, 0x51, 0x0, 0x26, 0x38, + 0x80, 0x9, 0x62, 0xf6, 0x54, 0x3, 0x24, 0xe5, + 0xc2, 0x10, 0x4, 0xb8, 0x82, 0x1, 0x2d, 0xe6, + 0x3b, 0x69, 0xd0, 0x8c, 0x40, 0x3c, 0x48, 0xf7, + 0xbd, 0x79, 0x2c, 0x20, 0x1c, 0x24, 0x62, 0x1, + 0xc6, 0x1, 0xce, 0x20, 0x1c, 0x28, 0x64, 0x1, + 0x0, + + /* U+002B "+" */ + 0x0, 0xff, 0xe3, 0xad, 0x7f, 0xfa, 0xd8, 0x3, + 0xff, 0xfe, 0x1, 0xff, 0xff, 0x0, 0xff, 0xf9, + 0x93, 0xde, 0xef, 0xff, 0xa, 0xd4, 0x3, 0xc9, + 0x1b, 0xbf, 0xfc, 0x2c, 0x83, 0x0, 0xc3, 0xea, + 0x45, 0xff, 0xc2, 0x10, 0xf, 0xc2, 0x45, 0xff, + 0xc2, 0x31, 0x70, 0xf, 0xff, 0x41, 0xc7, 0x7f, + 0xff, 0xf0, 0xa9, 0x40, 0x3c, 0x93, 0xff, 0xff, + 0xc3, 0x94, 0x0, 0xff, 0xff, 0x80, 0x7f, 0xff, + 0xc0, 0x3f, 0xfe, 0x6d, 0xa8, 0x9e, 0x32, 0x0, + 0xff, 0xe3, 0x80, + + /* U+002C "," */ + 0x0, 0xe1, 0x37, 0x9b, 0xba, 0xa1, 0x48, 0x3, + 0xf0, 0xad, 0xe4, 0x32, 0x24, 0xaf, 0x5f, 0x6, + 0x1, 0xe3, 0xd7, 0x0, 0xfe, 0x23, 0x60, 0xf, + 0x15, 0xa9, 0x0, 0x7e, 0x3c, 0x70, 0xf, 0x8e, + 0x6d, 0x0, 0x38, 0x56, 0x5c, 0x80, 0x3e, 0x14, + 0xd4, 0x0, 0xc7, 0x30, 0xa0, 0x1f, 0x85, 0xf9, + 0x0, 0x21, 0x68, 0x72, 0x0, 0xfc, 0x2f, 0x48, + 0x1, 0x24, 0x41, 0x0, 0x3f, 0x0, + + /* U+002D "-" */ + 0x1, 0x5a, 0xdd, 0xff, 0xe4, 0xe3, 0x98, 0x6, + 0x26, 0x22, 0xff, 0xe5, 0x73, 0x80, 0x7f, 0xf5, + 0x0, + + /* U+002E "." */ + 0x0, 0x84, 0xd5, 0xde, 0x64, 0x20, 0xf, 0x8e, + 0x33, 0x15, 0x11, 0x4d, 0xee, 0x31, 0x0, 0x47, + 0x6a, 0x40, 0x1f, 0x8f, 0x50, 0x40, 0x5, 0xcc, + 0x1, 0xfe, 0x12, 0x10, 0x0, 0xb4, 0xc9, 0x48, + 0x40, 0x2, 0x6d, 0x76, 0x40, 0x8, + + /* U+002F "/" */ + 0x0, 0xff, 0xea, 0x92, 0xbc, 0x47, 0xcc, 0x82, + 0x1, 0xff, 0xd6, 0x4b, 0xb4, 0x3b, 0xf9, 0xbd, + 0xc4, 0x3, 0xff, 0xaa, 0x9a, 0xe2, 0x1, 0xe1, + 0x6a, 0x30, 0xf, 0xfe, 0xaa, 0x73, 0x88, 0x7, + 0x85, 0xac, 0xc0, 0x3f, 0xfa, 0xa9, 0xca, 0x20, + 0x1e, 0x26, 0xb3, 0x0, 0xff, 0xea, 0xaf, 0x28, + 0x7, 0xc4, 0xb6, 0x60, 0x1f, 0xfd, 0x55, 0xf5, + 0x0, 0xf8, 0x96, 0x8c, 0x3, 0xff, 0xaa, 0xbc, + 0xa0, 0x1f, 0x12, 0xd1, 0x0, 0x7f, 0xf5, 0x57, + 0x90, 0x3, 0xe2, 0xaa, 0x10, 0x7, 0xff, 0x50, + 0x5b, 0x90, 0x3, 0xe2, 0xa5, 0x20, 0xf, 0xfe, + 0xa0, 0xbe, 0xa0, 0x7, 0xc7, 0x4a, 0x40, 0x1f, + 0xfd, 0x41, 0x7d, 0x40, 0xf, 0x8e, 0xd4, 0x80, + 0x3f, 0xfa, 0x82, 0xfa, 0x80, 0x1f, 0x1d, 0xb1, + 0x0, 0x7f, 0xf5, 0x5, 0xe9, 0x0, 0x3e, 0x3b, + 0x61, 0x0, 0xff, 0xea, 0xb, 0x51, 0x80, 0x7c, + 0x74, 0xc2, 0x1, 0xff, 0xd4, 0x16, 0xb3, 0x0, + 0xf9, 0x29, 0xc4, 0x3, 0xff, 0xa8, 0x4d, 0x66, + 0x1, 0xf2, 0x6b, 0x88, 0x7, 0xff, 0x50, 0x96, + 0xcc, 0x3, 0xe4, 0xd7, 0x10, 0xf, 0xfe, 0xa1, + 0x2d, 0x18, 0x7, 0xc9, 0xae, 0x20, 0x1f, 0xfd, + 0x42, 0x5a, 0x20, 0xf, 0x93, 0x9c, 0x40, 0x3f, + 0xfa, 0x85, 0x54, 0x20, 0xf, 0x93, 0x94, 0x40, + 0x3f, 0xfa, 0x87, 0x4a, 0x40, 0x1f, 0x2f, 0x28, + 0x7, 0xff, 0x54, 0xed, 0x48, 0x3, 0xe5, 0xf5, + 0x0, 0xff, 0xea, 0x9d, 0xa9, 0x0, 0x7c, 0xbe, + 0xa0, 0x1f, 0xfd, 0x53, 0xa6, 0x20, 0xf, 0x97, + 0xd4, 0x3, 0xff, 0xaa, 0x74, 0xe2, 0x1, 0xf2, + 0xf2, 0x80, 0x7f, 0xf5, 0x52, 0x9c, 0x40, 0x3c, + 0x2b, 0xc8, 0x1, 0xff, 0xd5, 0x4d, 0x71, 0x0, + 0xf0, 0xbf, 0x20, 0x7, 0xff, 0x55, 0x35, 0xc4, + 0x3, 0xc2, 0xfa, 0x80, 0x1f, 0xfd, 0x54, 0xe7, + 0x10, 0xf, 0xb, 0xea, 0x0, 0x7f, 0xf4, 0xc0, + + /* U+0030 "0" */ + 0x0, 0xff, 0xe2, 0x89, 0xab, 0xc5, 0x5e, 0x6e, + 0xbb, 0x9f, 0xfb, 0xb9, 0xba, 0xcb, 0xa8, 0x75, + 0x31, 0x0, 0xff, 0xe9, 0x12, 0x45, 0xef, 0x65, + 0x43, 0xaa, 0x19, 0x10, 0x44, 0x1, 0x84, 0x44, + 0x43, 0x45, 0x78, 0xac, 0xed, 0xb8, 0x41, 0x0, + 0xff, 0xe5, 0x1b, 0x5e, 0x5b, 0xa1, 0x0, 0x7f, + 0xf4, 0x9, 0x1e, 0xfe, 0xd8, 0x80, 0x3f, 0xf8, + 0xa9, 0x3b, 0x28, 0x20, 0x1f, 0xe1, 0x35, 0x78, + 0x99, 0x55, 0x26, 0x50, 0xea, 0x62, 0x1, 0xfe, + 0x14, 0x9f, 0x93, 0x0, 0xff, 0xe0, 0x9c, 0xd3, + 0x8, 0x7, 0xf0, 0xa4, 0xef, 0x65, 0x43, 0xb3, + 0x15, 0x4c, 0xc7, 0x8a, 0xce, 0xd9, 0x41, 0x0, + 0xfe, 0x26, 0xe8, 0x30, 0xf, 0xf2, 0xcb, 0x8, + 0x7, 0xf0, 0xb6, 0xdb, 0x10, 0x7, 0xff, 0x10, + 0x9a, 0xe9, 0x84, 0x3, 0xf8, 0x9e, 0x54, 0x3, + 0xf3, 0x72, 0x80, 0x7f, 0x8e, 0x20, 0x60, 0x1f, + 0xfc, 0xa4, 0x89, 0x30, 0xf, 0xf2, 0xfa, 0x80, + 0x79, 0x3d, 0x40, 0x3f, 0xc7, 0x68, 0x20, 0x1f, + 0xfc, 0xc1, 0x5b, 0x30, 0xf, 0xf2, 0x62, 0x0, + 0x62, 0x35, 0x10, 0xf, 0xf2, 0x99, 0x0, 0x7f, + 0xf3, 0x88, 0xd8, 0x3, 0xfc, 0x2a, 0x62, 0x1, + 0xf, 0x90, 0x7, 0xf8, 0x85, 0x80, 0x3f, 0xfa, + 0xe, 0x44, 0x0, 0xff, 0xf, 0x98, 0x4, 0xe2, + 0x20, 0xf, 0xf0, 0xf8, 0x7, 0xff, 0x44, 0x7c, + 0x40, 0x3f, 0xc6, 0x22, 0x0, 0xff, 0xf9, 0x38, + 0x4, 0xe2, 0x20, 0xf, 0xf0, 0xf8, 0x7, 0xff, + 0x44, 0x7c, 0x40, 0x3f, 0xc6, 0x2e, 0x1, 0xf, + 0x90, 0x7, 0xf8, 0x85, 0x80, 0x3f, 0xfa, 0xe, + 0x44, 0x0, 0xff, 0xf, 0x90, 0x4, 0x46, 0xa2, + 0x1, 0xfe, 0x53, 0x20, 0xf, 0xfe, 0x71, 0x1b, + 0x0, 0x7f, 0x85, 0x4c, 0x40, 0x32, 0x7a, 0x80, + 0x7f, 0x8e, 0xd0, 0x40, 0x3f, 0xf9, 0x82, 0x96, + 0x60, 0x1f, 0xe5, 0xc4, 0x0, 0xf3, 0x72, 0x80, + 0x7f, 0x8e, 0xe4, 0xc0, 0x3f, 0xf9, 0x47, 0x16, + 0x60, 0x1f, 0xe5, 0xe5, 0x0, 0xfc, 0xb2, 0xc2, + 0x1, 0xfc, 0x4f, 0xb4, 0xa4, 0x1, 0xff, 0xc4, + 0x26, 0xad, 0x62, 0x0, 0xfe, 0x27, 0x95, 0x0, + 0xff, 0x1c, 0xd3, 0x8, 0x7, 0xf0, 0xad, 0x6f, + 0x5c, 0xc3, 0x31, 0x57, 0x33, 0xc4, 0xe7, 0x6c, + 0xa8, 0x80, 0x7f, 0x13, 0x74, 0x18, 0x7, 0xff, + 0x5, 0x27, 0x65, 0x4, 0x3, 0xfc, 0x28, 0xcf, + 0x32, 0xaa, 0xd3, 0xe, 0xc6, 0x20, 0x1f, 0xe1, + 0x49, 0xf9, 0x30, 0xf, 0xfe, 0x29, 0xb5, 0xe5, + 0x3a, 0x8, 0x7, 0xff, 0x40, 0x91, 0xef, 0xed, + 0x88, 0x3, 0xff, 0x94, 0x4b, 0x17, 0xdc, 0xca, + 0x87, 0x54, 0x32, 0x11, 0x80, 0x30, 0x8c, 0x46, + 0x8a, 0xf1, 0x59, 0xdb, 0x70, 0x82, 0x1, 0xff, + 0xc1, + + /* U+0031 "1" */ + 0x0, 0x25, 0x7f, 0xff, 0xf3, 0x6d, 0x40, 0x3f, + 0xff, 0x4f, 0xa8, 0x9f, 0xfc, 0x3, 0x10, 0xf, + 0xfe, 0x29, 0xbd, 0xdf, 0xff, 0x2, 0x1c, 0x3, + 0xff, 0xfe, 0x1, 0xff, 0xff, 0x0, 0xff, 0xff, + 0x80, 0x7f, 0xff, 0xc0, 0x3f, 0xff, 0xe0, 0x1f, + 0xff, 0xf0, 0xf, 0xff, 0xf8, 0x7, 0xff, 0x9c, + + /* U+0032 "2" */ + 0x0, 0xff, 0xe1, 0x9, 0xab, 0x44, 0xde, 0x6e, + 0xbb, 0x9f, 0xfb, 0xba, 0xdc, 0xb9, 0x86, 0x42, + 0x0, 0xff, 0xe6, 0x12, 0xbd, 0x67, 0x73, 0x2a, + 0x5d, 0x90, 0xc8, 0x82, 0x20, 0xc, 0x23, 0x11, + 0xa3, 0x3c, 0xde, 0xf6, 0x4a, 0x90, 0x7, 0xff, + 0x8, 0x92, 0x2f, 0xb6, 0xa1, 0x4c, 0x40, 0x3f, + 0xf9, 0xe2, 0x6d, 0x59, 0x6c, 0x40, 0x1f, 0xc2, + 0xb3, 0x6e, 0x82, 0x1, 0xff, 0xc1, 0x12, 0x33, + 0x22, 0x46, 0x62, 0x10, 0xf, 0xfe, 0x8, 0xa4, + 0xc2, 0x88, 0x7, 0xc2, 0xb0, 0xe4, 0x1, 0xf0, + 0x9a, 0xc5, 0x67, 0x7f, 0x6e, 0x62, 0xee, 0xcc, + 0x6f, 0x6d, 0xb9, 0x80, 0x7f, 0xf0, 0x17, 0xd0, + 0x3, 0xf8, 0xe6, 0x14, 0x40, 0x9a, 0x77, 0xb2, + 0x9d, 0x4c, 0x40, 0x3f, 0xf8, 0x4, 0x91, 0xd0, + 0x40, 0x1f, 0xf3, 0x10, 0x80, 0x7f, 0xa, 0xde, + 0x6e, 0xa5, 0x88, 0x3, 0xff, 0x94, 0x42, 0xc0, + 0x1f, 0xf3, 0x88, 0x80, 0x3f, 0xe1, 0x22, 0x0, + 0x7f, 0xf3, 0x45, 0x75, 0x0, 0x3f, 0xc9, 0xae, + 0x1, 0xff, 0xda, 0x14, 0xbb, 0x20, 0x7, 0xf0, + 0xb7, 0xb0, 0x80, 0x7f, 0xf6, 0x9, 0xaa, 0x8a, + 0x20, 0x1f, 0x89, 0xaa, 0x50, 0x3, 0xff, 0xae, + 0x4b, 0x59, 0x28, 0x20, 0x1f, 0x89, 0xfa, 0x50, + 0x3, 0xff, 0xac, 0x4b, 0x59, 0x4a, 0x20, 0x1f, + 0x85, 0x6b, 0x20, 0xc0, 0x3f, 0xfa, 0xa4, 0xb5, + 0x94, 0xa2, 0x1, 0xf8, 0x52, 0x32, 0x94, 0x40, + 0x3f, 0xfa, 0x84, 0xb5, 0x94, 0xa2, 0x1, 0xf8, + 0x52, 0x36, 0xdc, 0x80, 0x3f, 0xfa, 0x84, 0xb5, + 0x94, 0xa2, 0x1, 0xf8, 0x52, 0x72, 0xdc, 0xc0, + 0x3f, 0xfa, 0x84, 0xb5, 0x94, 0xa2, 0x1, 0xf8, + 0x52, 0x72, 0xd8, 0x80, 0x3f, 0xfa, 0x84, 0xb5, + 0x94, 0xa2, 0x1, 0xf8, 0x52, 0x72, 0xd8, 0x80, + 0x3f, 0xfa, 0x84, 0xb5, 0x94, 0xa2, 0x1, 0xf8, + 0x56, 0x72, 0xd8, 0x80, 0x3f, 0xfa, 0x84, 0xb5, + 0x94, 0xa2, 0x1, 0xfe, 0x12, 0x1d, 0x9b, 0xbf, + 0xfe, 0x7c, 0x28, 0x80, 0x61, 0x59, 0x51, 0x0, + 0xff, 0xe0, 0x89, 0xa2, 0x7f, 0xf4, 0xc8, 0xc0, + 0x3f, 0xff, 0xe0, 0x1f, 0xfd, 0xd0, + + /* U+0033 "3" */ + 0x0, 0x8e, 0x3b, 0xff, 0xff, 0xbd, 0x8c, 0x20, + 0x1f, 0xff, 0x23, 0x0, 0xff, 0xef, 0x31, 0x88, + 0x7, 0x8b, 0x55, 0x9b, 0xff, 0x9a, 0x84, 0x1, + 0xff, 0xa, 0x46, 0x52, 0x80, 0x7c, 0x2b, 0x13, + 0x3f, 0xfc, 0xab, 0xf2, 0x52, 0x0, 0xfc, 0x2b, + 0x39, 0x6e, 0x60, 0x1f, 0xfd, 0x33, 0x7b, 0xc9, + 0x41, 0x0, 0xf1, 0x2d, 0x65, 0x31, 0x0, 0x7f, + 0xf4, 0x84, 0xe3, 0x31, 0x8, 0x20, 0x1e, 0x27, + 0xbc, 0xa5, 0x20, 0xf, 0xfe, 0x90, 0xa4, 0xe6, + 0x1c, 0xc0, 0x3c, 0x27, 0x19, 0x88, 0x41, 0x0, + 0xff, 0xe9, 0x12, 0xd6, 0x5b, 0x10, 0x7, 0x85, + 0x27, 0x30, 0xe6, 0x20, 0x1f, 0xfd, 0x31, 0x6e, + 0xa5, 0x20, 0xf, 0xe1, 0x49, 0xcd, 0xcc, 0x5d, + 0x4b, 0xb2, 0x10, 0x7, 0xff, 0x38, 0x40, 0x3f, + 0xf8, 0x82, 0x46, 0x64, 0x56, 0x89, 0xbd, 0xec, + 0x96, 0x20, 0xf, 0xfe, 0x49, 0x29, 0x9f, 0xff, + 0x0, 0x88, 0x20, 0x1f, 0xf0, 0x9b, 0x4e, 0xe4, + 0x18, 0x7, 0xff, 0x14, 0x56, 0x73, 0x3f, 0xf8, + 0x1b, 0xae, 0xfe, 0xca, 0x74, 0x10, 0xf, 0xe3, + 0x7e, 0x93, 0x0, 0xff, 0xeb, 0x9, 0xac, 0x5e, + 0x41, 0x80, 0x7f, 0x13, 0x4a, 0x0, 0x7f, 0xf6, + 0x89, 0xe9, 0x0, 0x3f, 0xcc, 0x64, 0x1, 0xff, + 0xe7, 0x10, 0xf, 0xa, 0xbb, 0x18, 0x80, 0x7f, + 0xf3, 0xc5, 0x75, 0x0, 0x3f, 0xce, 0x44, 0x0, + 0x92, 0x2e, 0x27, 0x3f, 0x25, 0xd0, 0x84, 0x3, + 0xff, 0x8a, 0x26, 0xb3, 0xb4, 0x80, 0x1f, 0xe4, + 0xf4, 0x0, 0x13, 0xc3, 0x8, 0x4, 0x26, 0xd1, + 0x7b, 0xdf, 0xb9, 0x75, 0x32, 0x88, 0xd3, 0x54, + 0xbc, 0xee, 0x65, 0x31, 0x80, 0x7f, 0x89, 0xe1, + 0x44, 0x5, 0x30, 0x80, 0x3f, 0xf8, 0x24, 0x68, + 0xac, 0xc7, 0x7c, 0xca, 0xa4, 0x31, 0x0, 0xff, + 0xe0, 0x12, 0xd6, 0x41, 0x80, 0x42, 0xd7, 0xf9, + 0x4e, 0x84, 0x20, 0x1f, 0xfd, 0x21, 0x36, 0x9c, + 0xc5, 0x28, 0x80, 0x7e, 0x13, 0x58, 0xbd, 0xee, + 0x65, 0x4c, 0x32, 0xa1, 0x91, 0x4, 0x40, 0x1c, + 0x22, 0x22, 0x1a, 0x2b, 0x45, 0x5e, 0xfe, 0x4b, + 0x18, 0x80, 0x7e, + + /* U+0034 "4" */ + 0x0, 0xff, 0xe5, 0x8b, 0x5f, 0xff, 0xfb, 0x18, + 0x40, 0x3f, 0xfb, 0xe9, 0x10, 0x40, 0xf, 0xc4, + 0xde, 0xc2, 0x1, 0xff, 0xdd, 0x27, 0x86, 0x10, + 0xf, 0xc9, 0x10, 0x30, 0xf, 0xfe, 0xe8, 0xac, + 0x40, 0xc0, 0x3f, 0x13, 0xca, 0x88, 0x7, 0xff, + 0x74, 0xe6, 0x14, 0x3, 0xf0, 0xac, 0xc1, 0x0, + 0x7f, 0xf7, 0x49, 0xbd, 0xc8, 0x3, 0xf1, 0xcc, + 0x20, 0x7, 0xff, 0x79, 0x22, 0x6, 0x1, 0xf8, + 0x5a, 0x1c, 0x80, 0x3f, 0xfb, 0xa5, 0x12, 0xa2, + 0x1, 0xf9, 0x22, 0x8, 0x1, 0xff, 0xdd, 0x16, + 0x97, 0x20, 0xf, 0xc4, 0xf0, 0xc2, 0x1, 0xf2, + 0xd7, 0xff, 0xf7, 0x49, 0x80, 0x7f, 0xf2, 0x12, + 0x20, 0x80, 0x1f, 0x85, 0x62, 0x4c, 0x3, 0xfc, + 0x20, 0x1f, 0xc2, 0xe, 0x1, 0xff, 0xc6, 0x27, + 0x86, 0x10, 0xf, 0xc5, 0x30, 0xa2, 0x1, 0xff, + 0xdc, 0x15, 0x89, 0x30, 0xf, 0xc2, 0xd2, 0xe4, + 0x1, 0xff, 0xdd, 0x39, 0x85, 0x10, 0xf, 0xc7, + 0x10, 0x40, 0xf, 0xfe, 0xf2, 0xcb, 0x90, 0x7, + 0xf8, 0xe7, 0xbf, 0xff, 0xf8, 0x74, 0x80, 0x1f, + 0xe6, 0xbf, 0xff, 0xb6, 0x8, 0x2, 0x13, 0x60, + 0xf, 0xff, 0xf8, 0x7, 0xff, 0x78, 0x4a, 0xd5, + 0x7f, 0xfa, 0x46, 0x20, 0x1f, 0xe2, 0x45, 0x5f, + 0xda, 0x60, 0x19, 0x1e, 0xab, 0xff, 0xa5, 0x2a, + 0x1, 0xfe, 0x4f, 0xaa, 0xfa, 0x14, 0x40, 0x3f, + 0xff, 0xe0, 0x1f, 0xff, 0xf0, 0xf, 0xff, 0xf8, + 0x7, 0xff, 0x10, + + /* U+0035 "5" */ + 0x0, 0xe2, 0x8d, 0xff, 0xff, 0xee, 0x74, 0x98, + 0x7, 0xff, 0xfc, 0x3, 0xff, 0xd4, 0x48, 0x9f, + 0xfd, 0x17, 0xf1, 0x0, 0xff, 0xe4, 0x15, 0x4d, + 0xdf, 0xff, 0x42, 0x58, 0x80, 0x3f, 0xff, 0xe0, + 0x1f, 0xff, 0xf0, 0xf, 0xfe, 0xa1, 0x46, 0xff, + 0xff, 0x77, 0x5b, 0x98, 0xa9, 0x76, 0x42, 0x10, + 0xf, 0xfe, 0xe8, 0x8c, 0x46, 0x65, 0x68, 0x9b, + 0xdf, 0xc9, 0x63, 0x10, 0xf, 0xff, 0x20, 0x9b, + 0x4e, 0x6c, 0x18, 0x7, 0xfd, 0xcc, 0x46, 0x64, + 0x4f, 0xfe, 0x19, 0x98, 0x88, 0x20, 0x1f, 0xfc, + 0x33, 0x7d, 0xa5, 0x10, 0xf, 0x89, 0xaf, 0x73, + 0x17, 0x7f, 0xfc, 0x3c, 0xc6, 0xeb, 0xbf, 0x6e, + 0x14, 0x80, 0x3f, 0xe1, 0x58, 0x92, 0x0, 0xff, + 0xea, 0x92, 0x3d, 0x7c, 0x18, 0x7, 0xfc, 0x48, + 0xa2, 0x1, 0xff, 0xd8, 0x26, 0xa3, 0x0, 0xff, + 0x87, 0xc8, 0x3, 0xff, 0xb4, 0x20, 0x1f, 0xfc, + 0x1f, 0x10, 0xc, 0x4d, 0x32, 0x52, 0x0, 0xff, + 0xe7, 0x13, 0x59, 0x80, 0x7f, 0xce, 0x44, 0x0, + 0x96, 0x20, 0xcc, 0xad, 0xec, 0x97, 0x52, 0x10, + 0xf, 0xfe, 0x18, 0xa3, 0x57, 0xc1, 0x80, 0x7f, + 0x85, 0x79, 0x40, 0x7, 0x10, 0x51, 0x0, 0xc2, + 0x6d, 0x15, 0xbd, 0xfd, 0xb7, 0x6a, 0xa4, 0xca, + 0xae, 0xd9, 0xbd, 0xcb, 0x95, 0x20, 0xf, 0xf9, + 0x22, 0x8, 0x0, 0x16, 0x10, 0xf, 0xfe, 0x18, + 0x92, 0x21, 0x54, 0xcc, 0x54, 0x41, 0x90, 0x80, + 0x7f, 0xf0, 0x49, 0xae, 0x98, 0x80, 0x21, 0x59, + 0xde, 0xc9, 0x74, 0x21, 0x0, 0xff, 0xe8, 0x89, + 0xb4, 0xe6, 0x25, 0x4, 0x3, 0xf8, 0x4d, 0xa2, + 0xf7, 0xb9, 0x97, 0x30, 0xea, 0x86, 0x44, 0x11, + 0x0, 0x70, 0x88, 0x88, 0x68, 0xd1, 0x37, 0xbf, + 0x92, 0xc6, 0x20, 0x1f, 0x80, + + /* U+0036 "6" */ + 0x0, 0xff, 0xe3, 0x12, 0x34, 0x4d, 0xe6, 0xf7, + 0x3f, 0xfd, 0xdc, 0xdc, 0xba, 0x98, 0x75, 0x32, + 0x0, 0xff, 0xe6, 0x12, 0xce, 0x76, 0xdc, 0xbb, + 0x21, 0x90, 0x88, 0x3, 0xc2, 0x22, 0x34, 0x56, + 0x78, 0xac, 0xdf, 0xeb, 0x95, 0x20, 0xf, 0xfe, + 0x10, 0xa4, 0x66, 0xd3, 0x18, 0x80, 0x7f, 0xf4, + 0x45, 0x8, 0xc, 0x3, 0xff, 0x80, 0x4d, 0xb6, + 0xe6, 0x1, 0xff, 0x11, 0xab, 0x3b, 0xa2, 0x33, + 0xb9, 0x95, 0xc, 0x40, 0x3c, 0x51, 0x2a, 0x20, + 0x1f, 0xe2, 0x7e, 0x93, 0x0, 0xfe, 0x25, 0x9c, + 0xed, 0xca, 0x98, 0x83, 0xbe, 0x88, 0x4d, 0x5e, + 0x77, 0xed, 0xc3, 0x44, 0xb9, 0x0, 0x7f, 0xc9, + 0x12, 0x60, 0x1f, 0x85, 0x6b, 0x29, 0x8c, 0x40, + 0x3f, 0xf8, 0xc4, 0x8f, 0x2e, 0x80, 0x1f, 0xfc, + 0x5, 0xf5, 0x10, 0xf, 0xc9, 0x16, 0xa2, 0x1, + 0xff, 0xdb, 0x5f, 0x40, 0xf, 0xe5, 0xe6, 0x10, + 0xf, 0xc2, 0x22, 0x21, 0x9e, 0x22, 0x8, 0x7, + 0xff, 0x24, 0xf5, 0x0, 0x3f, 0x8f, 0x50, 0x2, + 0x35, 0x8a, 0xce, 0xfe, 0xe6, 0xeb, 0x33, 0x6e, + 0xbb, 0xfb, 0x6e, 0x5d, 0x8, 0x3, 0xff, 0x82, + 0xc4, 0x20, 0x1f, 0xcc, 0x46, 0xd5, 0xd9, 0x4e, + 0xa6, 0x20, 0x1f, 0xfc, 0x11, 0x24, 0x68, 0xbd, + 0xc9, 0x41, 0x0, 0xfc, 0x26, 0xc0, 0x1f, 0xe7, + 0x8f, 0x95, 0x10, 0xf, 0xfe, 0x71, 0xb5, 0xeb, + 0x98, 0x7, 0x8c, 0x40, 0x3f, 0xe2, 0x28, 0x2, + 0x13, 0x69, 0xbc, 0xde, 0xff, 0xbb, 0x9b, 0x94, + 0xe8, 0x40, 0x1f, 0xe3, 0x8f, 0x61, 0x0, 0xc6, + 0x20, 0x1f, 0xfc, 0x21, 0x49, 0xcc, 0x4b, 0x21, + 0x90, 0x80, 0x42, 0x22, 0x35, 0x8b, 0xdc, 0x62, + 0x0, 0xfe, 0x3a, 0x61, 0x0, 0x84, 0xd8, 0x3, + 0xff, 0x80, 0x73, 0x26, 0x20, 0xf, 0xfe, 0x31, + 0xc5, 0xa0, 0x7, 0xf1, 0xea, 0x0, 0x67, 0x22, + 0x0, 0x7f, 0x85, 0x4c, 0x80, 0x3f, 0xf9, 0x22, + 0xa4, 0x20, 0x1f, 0xc2, 0x60, 0x18, 0xb1, 0x4, + 0x3, 0xf8, 0x4c, 0x40, 0x3f, 0xf9, 0x6c, 0x62, + 0x1, 0xfc, 0x26, 0x1, 0xc9, 0xae, 0x20, 0x1f, + 0xcb, 0xcc, 0x20, 0x1f, 0xfc, 0x71, 0x5f, 0x40, + 0xf, 0xe2, 0x23, 0x0, 0x79, 0x2e, 0x4c, 0x3, + 0xf9, 0x27, 0x65, 0x48, 0x3, 0xff, 0x82, 0x49, + 0x1b, 0x6a, 0x20, 0x1f, 0x89, 0x68, 0xc0, 0x3e, + 0x27, 0xf7, 0x20, 0xf, 0xe3, 0x6a, 0xde, 0xdb, + 0xaa, 0x4c, 0xd5, 0x76, 0xde, 0xdb, 0x73, 0x10, + 0xf, 0xe4, 0xb9, 0x20, 0xf, 0xf1, 0xc7, 0xd2, + 0x88, 0x7, 0xf8, 0x49, 0x15, 0x4c, 0xd2, 0xa2, + 0x8, 0x40, 0x3f, 0xe1, 0x5b, 0xa6, 0x10, 0xf, + 0xfe, 0x9, 0x2d, 0x7d, 0xc2, 0x8, 0x7, 0xff, + 0x38, 0x51, 0xef, 0xe9, 0x4, 0x3, 0xff, 0x8c, + 0x28, 0xf7, 0xdc, 0xca, 0x86, 0x53, 0x21, 0x10, + 0x7, 0x8, 0x88, 0x86, 0x8d, 0x13, 0x7b, 0xd7, + 0x8, 0x20, 0x1f, 0xe0, + + /* U+0037 "7" */ + 0x0, 0x9a, 0xff, 0xff, 0xfc, 0xbd, 0x26, 0x1, + 0xff, 0xff, 0x0, 0xff, 0xf4, 0x89, 0x22, 0x7f, + 0xf3, 0xc, 0x40, 0x3f, 0xf8, 0xb, 0xe4, 0x1, + 0xff, 0xc2, 0x2a, 0xa5, 0xdf, 0xff, 0x2b, 0x98, + 0x3, 0xfe, 0x16, 0x86, 0x10, 0xf, 0xfe, 0x18, + 0x80, 0x7f, 0xf2, 0x49, 0xe1, 0x44, 0x3, 0xf9, + 0x22, 0x6, 0x1, 0xc4, 0x43, 0x3f, 0xe5, 0x30, + 0xf, 0xfe, 0x42, 0x44, 0x90, 0x7, 0xf0, 0xb7, + 0xb0, 0x80, 0x79, 0x27, 0x33, 0xfa, 0x54, 0x40, + 0x3f, 0xf8, 0xa4, 0xf0, 0xa2, 0x1, 0xfc, 0x73, + 0x68, 0x1, 0xff, 0xda, 0x4b, 0x93, 0x0, 0xfe, + 0x16, 0x87, 0x20, 0xf, 0xfe, 0xc8, 0xb4, 0x30, + 0x80, 0x7f, 0x1c, 0xda, 0x0, 0x7f, 0xf6, 0x92, + 0x20, 0x60, 0x1f, 0xc2, 0xb0, 0xe4, 0x1, 0xff, + 0xd9, 0x16, 0xf6, 0x10, 0xf, 0xe3, 0x98, 0x40, + 0xf, 0xfe, 0xd1, 0xcd, 0xa0, 0x7, 0xf9, 0x65, + 0xc8, 0x3, 0xff, 0xb2, 0x2d, 0xe, 0x40, 0x1f, + 0xc4, 0xf0, 0xa0, 0x1f, 0xfd, 0xa3, 0x9b, 0x40, + 0xf, 0xf2, 0x44, 0x90, 0x7, 0xff, 0x64, 0x56, + 0x1c, 0x80, 0x3f, 0x89, 0xe1, 0x44, 0x3, 0xff, + 0xb2, 0x53, 0x8, 0x1, 0xfe, 0x48, 0x93, 0x0, + 0xff, 0xed, 0x2c, 0x31, 0x0, 0x7f, 0x13, 0xc2, + 0x88, 0x7, 0xff, 0x64, 0x9e, 0x54, 0x40, 0x3f, + 0x92, 0xe4, 0xc0, 0x3f, 0xfb, 0x49, 0x12, 0x60, + 0x1f, 0xc2, 0xde, 0xc2, 0x1, 0xff, 0xd9, 0x27, + 0x85, 0x10, 0xf, 0xe3, 0x88, 0x20, 0x7, 0xff, + 0x69, 0x2e, 0x4c, 0x3, 0xf8, 0x5a, 0x18, 0x40, + 0x3f, 0xf9, 0xa0, + + /* U+0038 "8" */ + 0x0, 0xff, 0xe0, 0x89, 0xab, 0xcd, 0x5e, 0x6f, + 0x73, 0xff, 0xdd, 0xcd, 0xd6, 0x54, 0xc3, 0x21, + 0x0, 0x7f, 0xf3, 0x4d, 0xab, 0x7b, 0x2a, 0x19, + 0x50, 0xc8, 0x44, 0x1, 0xe1, 0x11, 0x10, 0xd5, + 0x9e, 0x6f, 0x7a, 0xe1, 0x4, 0x3, 0xff, 0x8a, + 0x4f, 0x98, 0x95, 0x20, 0xf, 0xfe, 0x80, 0xa3, + 0xde, 0x42, 0x0, 0x7f, 0xf0, 0x45, 0xa6, 0xc, + 0x3, 0xf0, 0x9a, 0xc5, 0x66, 0xeb, 0xb9, 0xfd, + 0xcd, 0xcb, 0x96, 0x41, 0x0, 0xfc, 0x4f, 0x2e, + 0x40, 0x1f, 0xf2, 0x62, 0x0, 0x7e, 0x27, 0xdc, + 0xa7, 0x53, 0x22, 0x8, 0x80, 0x44, 0x46, 0x8d, + 0x37, 0x92, 0x80, 0x1f, 0x8a, 0x94, 0x80, 0x3f, + 0x84, 0xd8, 0x3, 0xf1, 0x2d, 0x18, 0x7, 0xff, + 0x18, 0x9f, 0x50, 0x3, 0xf1, 0xf3, 0x0, 0x7f, + 0x9, 0xb0, 0x7, 0xe3, 0x1, 0x0, 0xff, 0xe4, + 0x8b, 0x80, 0x7e, 0x3e, 0x60, 0xf, 0xf2, 0xf2, + 0x88, 0x7, 0x85, 0xa1, 0x88, 0x3, 0xff, 0x88, + 0x29, 0x14, 0x60, 0x1f, 0x12, 0xa1, 0x0, 0x7f, + 0xc9, 0x76, 0x51, 0x0, 0xe1, 0x49, 0xdd, 0x5c, + 0xbb, 0x31, 0x54, 0x8a, 0xa6, 0x78, 0xad, 0xfb, + 0x62, 0x0, 0xf1, 0x34, 0xc8, 0xc0, 0x3f, 0xf8, + 0x22, 0xb5, 0x96, 0xe6, 0x20, 0x1c, 0x48, 0xd1, + 0x32, 0xaa, 0x5d, 0x52, 0x61, 0xd4, 0x84, 0x3, + 0x84, 0xde, 0xb2, 0x50, 0x40, 0x3f, 0xf8, 0xa4, + 0xdb, 0x6a, 0x40, 0x1f, 0xfc, 0xd2, 0x5b, 0xd7, + 0x10, 0xf, 0xfe, 0x29, 0xbd, 0xf6, 0xd4, 0x21, + 0x0, 0x7f, 0xf3, 0x49, 0x22, 0xb7, 0xa9, 0x88, + 0x3, 0xfe, 0x27, 0xcc, 0x42, 0x8, 0x7, 0x84, + 0xd6, 0x2b, 0x37, 0x5d, 0xcf, 0xfb, 0xb7, 0x59, + 0x70, 0xc8, 0x20, 0x1f, 0xa, 0xce, 0x52, 0x88, + 0x7, 0x85, 0xba, 0xc, 0x3, 0xe1, 0x4a, 0xfc, + 0xa7, 0x53, 0x22, 0x8, 0x80, 0x21, 0x22, 0x1a, + 0x3c, 0xdf, 0xdb, 0x10, 0x7, 0xc2, 0xb7, 0x8, + 0x1, 0x85, 0xe8, 0xc0, 0x3f, 0xb, 0x42, 0x88, + 0x7, 0xff, 0x20, 0x52, 0x2d, 0x0, 0x3f, 0xb, + 0xea, 0x0, 0x45, 0xe4, 0x1, 0xfc, 0x5e, 0x20, + 0x1f, 0xfc, 0xc1, 0x21, 0x0, 0xfe, 0x12, 0x20, + 0x6, 0x13, 0x0, 0xfe, 0x3d, 0x70, 0xf, 0xfe, + 0x61, 0x63, 0x80, 0x7f, 0x84, 0xc0, 0x23, 0xd7, + 0x0, 0xff, 0x2d, 0xd3, 0x10, 0x7, 0xff, 0x18, + 0x52, 0x39, 0xc8, 0x3, 0xf8, 0xf5, 0xc0, 0x32, + 0xcb, 0x10, 0x7, 0xf0, 0xac, 0xef, 0x6d, 0x43, + 0xb9, 0x98, 0xab, 0x33, 0x1e, 0x26, 0xfb, 0x96, + 0xe6, 0x1, 0xfc, 0x29, 0x2c, 0x40, 0x1c, 0x73, + 0xd0, 0x82, 0x1, 0xfe, 0x12, 0x57, 0x88, 0x4c, + 0xaa, 0xa9, 0x94, 0x3b, 0x20, 0x80, 0x7f, 0xc4, + 0xf5, 0x45, 0x10, 0xf, 0xc6, 0xf7, 0x94, 0xe8, + 0x40, 0x1f, 0xfd, 0x21, 0x36, 0x9c, 0xc4, 0x20, + 0x80, 0x7f, 0xf0, 0x49, 0x62, 0xf7, 0xb2, 0xa5, + 0xd9, 0xc, 0x88, 0x23, 0x0, 0x70, 0x88, 0x88, + 0x68, 0xaf, 0x15, 0x7b, 0xd9, 0x2c, 0x62, 0x1, + 0xfc, + + /* U+0039 "9" */ + 0x0, 0xff, 0xe0, 0x9, 0xab, 0xcd, 0xe6, 0xeb, + 0xb9, 0xff, 0xdd, 0xcd, 0xcb, 0x97, 0x63, 0x10, + 0xf, 0xfe, 0x58, 0xa3, 0xde, 0xf6, 0x54, 0x32, + 0x19, 0x10, 0x44, 0x1, 0xc2, 0x22, 0x34, 0x68, + 0x9c, 0xee, 0x5c, 0x20, 0x80, 0x7f, 0xf0, 0xc5, + 0x27, 0x2e, 0x10, 0x80, 0x3f, 0xf9, 0xc2, 0x8f, + 0x7f, 0x4c, 0x40, 0x1f, 0xe1, 0x5b, 0xa6, 0x20, + 0xf, 0xf8, 0x48, 0xd1, 0x59, 0xb2, 0xa1, 0x88, + 0x7, 0xf8, 0x56, 0x7e, 0xc, 0x3, 0xe2, 0x69, + 0x51, 0x0, 0xfe, 0x37, 0xad, 0xed, 0xcb, 0xa9, + 0x9d, 0x57, 0x9d, 0xcb, 0x73, 0x10, 0xf, 0xc4, + 0xfc, 0xe4, 0x1, 0x85, 0x2c, 0xc0, 0x3f, 0x92, + 0x76, 0x14, 0x80, 0x3f, 0xf8, 0x22, 0x91, 0xb6, + 0xa2, 0x1, 0xf8, 0xa6, 0xd0, 0x2, 0x2e, 0x20, + 0xf, 0xe4, 0xd6, 0x10, 0xf, 0xfe, 0x38, 0xaf, + 0x20, 0x7, 0xf0, 0xb7, 0x20, 0x1, 0xc4, 0x3, + 0xfc, 0x26, 0x1, 0xff, 0xcc, 0x30, 0xf, 0xf9, + 0x30, 0xc1, 0x84, 0xc0, 0x3f, 0x9f, 0x4c, 0x3, + 0xff, 0x92, 0x78, 0x80, 0x1f, 0xf0, 0x9b, 0x1, + 0x62, 0x8, 0x7, 0xe2, 0x7f, 0x73, 0x0, 0xff, + 0xe2, 0xa, 0x4f, 0x39, 0x0, 0x7f, 0xf0, 0x1c, + 0x84, 0x12, 0x98, 0x80, 0x3f, 0x8e, 0x33, 0xb2, + 0xa1, 0xd9, 0x54, 0x88, 0x56, 0x78, 0xad, 0xfb, + 0x62, 0x0, 0xff, 0xe1, 0x8, 0x18, 0x0, 0xe2, + 0x58, 0x80, 0x3f, 0xc2, 0x6a, 0xf1, 0x35, 0x4b, + 0xb5, 0x4c, 0x3a, 0x90, 0x80, 0x42, 0x8a, 0x80, + 0x1f, 0xe1, 0x0, 0xf2, 0x4e, 0x5b, 0x98, 0x7, + 0xff, 0x30, 0x92, 0x36, 0xbc, 0x40, 0x3f, 0xce, + 0x24, 0x1, 0xe1, 0x48, 0xce, 0xca, 0x86, 0x43, + 0x21, 0x10, 0x7, 0x9, 0x10, 0xd5, 0xe6, 0xf7, + 0x56, 0xe6, 0x62, 0x60, 0xf, 0xe1, 0x25, 0x0, + 0xff, 0x84, 0xd5, 0xe6, 0xf3, 0x7b, 0x9f, 0xfd, + 0xdb, 0xac, 0xa8, 0x64, 0x20, 0x8, 0x53, 0xc, + 0x3, 0xf9, 0x30, 0xc0, 0x3f, 0xfb, 0x24, 0xd4, + 0x80, 0x1f, 0xc9, 0x88, 0x1, 0xff, 0xd8, 0x16, + 0x99, 0x18, 0x7, 0xf2, 0xf3, 0x8, 0x7, 0xe4, + 0x8a, 0x86, 0x31, 0x0, 0xff, 0xe2, 0x89, 0xb5, + 0x64, 0xa0, 0x80, 0x7e, 0x38, 0x82, 0x80, 0x7e, + 0x27, 0x87, 0x57, 0x9c, 0xef, 0xdc, 0xba, 0x98, + 0x83, 0xba, 0x22, 0x9b, 0xce, 0xe6, 0x4a, 0x90, + 0x7, 0xf1, 0xc7, 0x39, 0x0, 0x7e, 0x58, 0x93, + 0x0, 0xf8, 0x8d, 0x15, 0x9d, 0xd1, 0x7, 0x79, + 0x90, 0xc4, 0x3, 0xfe, 0x26, 0xbd, 0x72, 0x0, + 0xfe, 0x11, 0x12, 0x10, 0x7, 0xff, 0x44, 0x4d, + 0xa7, 0x75, 0x28, 0x20, 0x1f, 0xf0, 0xa4, 0x56, + 0xff, 0x65, 0xcb, 0xb2, 0xa1, 0x90, 0x88, 0x3, + 0xc2, 0x22, 0x34, 0x57, 0x9b, 0xde, 0xc9, 0x62, + 0x0, 0xff, 0xe0, 0x80, + + /* U+003A ":" */ + 0x0, 0x13, 0x56, 0xf7, 0xfb, 0xb2, 0x50, 0x40, + 0x30, 0xb7, 0x4a, 0x90, 0x80, 0x4, 0xda, 0xec, + 0x80, 0x11, 0x70, 0x80, 0x7f, 0x84, 0x84, 0x0, + 0x76, 0xa4, 0x1, 0xf9, 0x35, 0x4, 0x2, 0x38, + 0xcc, 0x54, 0x45, 0x37, 0xb6, 0xc4, 0x1, 0xe1, + 0x35, 0x77, 0x99, 0x8, 0x3, 0xff, 0xe6, 0x26, + 0xae, 0xf3, 0x21, 0x0, 0x7c, 0x71, 0x98, 0xa8, + 0x8a, 0x6f, 0x71, 0x88, 0x2, 0x3b, 0x52, 0x0, + 0xfc, 0x7a, 0x82, 0x0, 0x2e, 0x60, 0xf, 0xf0, + 0x90, 0x80, 0x5, 0xa6, 0x4a, 0x42, 0x0, 0x13, + 0x6b, 0xb2, 0x0, 0x40, + + /* U+003B ";" */ + 0x0, 0xe2, 0x6a, 0xde, 0xff, 0x76, 0x4a, 0x8, + 0x7, 0xc2, 0xdd, 0x2a, 0x42, 0x0, 0x13, 0x6b, + 0xb2, 0x0, 0x78, 0xb8, 0x40, 0x3f, 0xc2, 0x42, + 0x1, 0xc7, 0x6a, 0x40, 0x1f, 0x93, 0x50, 0x40, + 0x3c, 0x71, 0x98, 0xa8, 0x8a, 0x6f, 0x6d, 0x88, + 0x3, 0xf8, 0x4d, 0x5d, 0xe6, 0x42, 0x0, 0xff, + 0xff, 0x9, 0xbc, 0xdd, 0xd5, 0xa, 0x40, 0x1f, + 0x85, 0x6f, 0x21, 0x91, 0x25, 0x7a, 0xf8, 0x30, + 0xf, 0x1e, 0xb8, 0x7, 0xf1, 0x1b, 0x0, 0x78, + 0xad, 0x48, 0x3, 0xf1, 0xe3, 0x80, 0x7c, 0x73, + 0x68, 0x1, 0xc2, 0xb2, 0xe4, 0x1, 0xf0, 0xa6, + 0xa0, 0x6, 0x39, 0x85, 0x0, 0xfc, 0x2f, 0xc8, + 0x1, 0xb, 0x43, 0x90, 0x7, 0xe1, 0x7a, 0x40, + 0x9, 0x22, 0x8, 0x1, 0xf8, + + /* U+003C "<" */ + 0x0, 0xff, 0xed, 0x92, 0x34, 0xd3, 0x98, 0x7, + 0xff, 0x54, 0x49, 0x1e, 0x6f, 0x7f, 0x6e, 0x59, + 0x79, 0xc0, 0x3f, 0xf9, 0xc2, 0x4a, 0xf3, 0x7b, + 0xdb, 0x70, 0xc8, 0x40, 0x1f, 0xfc, 0xf1, 0x35, + 0x79, 0xce, 0xe6, 0xd4, 0x32, 0x10, 0x7, 0xe1, + 0x24, 0x79, 0xa5, 0x0, 0xff, 0xe0, 0x9, 0xab, + 0xce, 0x77, 0x32, 0xa1, 0x8c, 0x40, 0x3f, 0x9, + 0xab, 0xd6, 0x77, 0x36, 0xe1, 0x8c, 0x40, 0x38, + 0x4d, 0x5e, 0xb3, 0xb9, 0x95, 0xc, 0x62, 0x1, + 0xf8, 0x91, 0xa2, 0xb7, 0xb9, 0x95, 0xa, 0x62, + 0x1, 0xff, 0x1c, 0xed, 0x42, 0x98, 0x80, 0x7c, + 0x26, 0xaf, 0x37, 0xbf, 0xb7, 0x2e, 0xa4, 0x20, + 0x1f, 0xfc, 0xf1, 0x47, 0xac, 0xee, 0x65, 0x43, + 0x21, 0x0, 0x7f, 0xf5, 0xc5, 0x1e, 0x22, 0x74, + 0x21, 0x0, 0xff, 0xe8, 0x96, 0xa1, 0x0, 0x7e, + 0x24, 0x68, 0xbd, 0xee, 0x65, 0x3a, 0x98, 0x80, + 0x7f, 0xf2, 0x85, 0x6b, 0x7f, 0x6e, 0x5d, 0x8, + 0x40, 0x3e, 0x13, 0x58, 0xac, 0xee, 0x6d, 0x43, + 0x21, 0x0, 0x7f, 0xf2, 0x9, 0x1a, 0x2f, 0x7b, + 0x97, 0x2e, 0xa4, 0x20, 0x1f, 0x9, 0x2b, 0xcd, + 0xef, 0xed, 0xcb, 0xa9, 0x8, 0x7, 0xff, 0x1c, + 0x51, 0xa2, 0xb7, 0xb9, 0x92, 0xea, 0x62, 0x1, + 0xf8, 0x91, 0xa2, 0xb7, 0xb6, 0xc, 0x3, 0xff, + 0x96, 0x26, 0xd1, 0x59, 0xdc, 0xca, 0x75, 0x31, + 0x0, 0xfc, 0x42, 0xe0, 0x1f, 0xfd, 0x21, 0x35, + 0x8a, 0xce, 0xe6, 0x54, 0x29, 0x88, 0x8, 0x7, + 0xff, 0x6c, 0x4d, 0x5e, 0xb3, 0xb9, 0x96, 0xa0, + 0x0, + + /* U+003D "=" */ + 0x0, 0x13, 0xde, 0xef, 0xff, 0x6b, 0x20, 0xc0, + 0x30, 0xfa, 0x91, 0x7f, 0xf6, 0x8c, 0x5c, 0x3, + 0xff, 0xd0, 0x71, 0xdf, 0xff, 0xfd, 0xb9, 0x40, + 0xf, 0xff, 0xf8, 0x7, 0xff, 0xf4, 0x9e, 0xf7, + 0x7f, 0xfb, 0x58, 0xe6, 0x1, 0x87, 0xd4, 0x8b, + 0xff, 0xb4, 0x7c, 0xe0, 0x1f, 0xfe, 0x60, + + /* U+003E ">" */ + 0x0, 0xff, 0xf3, 0x1c, 0x66, 0x25, 0xd4, 0xc4, + 0x3, 0xff, 0xb8, 0x24, 0x6d, 0x15, 0x9d, 0xcc, + 0xa7, 0x53, 0x10, 0xf, 0xfe, 0xe8, 0x9a, 0xc5, + 0x67, 0x73, 0x2a, 0x14, 0xc4, 0x3, 0xff, 0x9a, + 0x71, 0xb5, 0xc, 0x62, 0x1, 0xf8, 0x4d, 0x5e, + 0xb3, 0xb9, 0x95, 0xc, 0x62, 0x1, 0xff, 0xc7, + 0x13, 0x57, 0x9c, 0xee, 0x6d, 0xc3, 0x21, 0x0, + 0x7e, 0x13, 0x57, 0x9c, 0xee, 0x65, 0x43, 0x20, + 0x80, 0x7f, 0xf1, 0xc4, 0x91, 0xe6, 0xf7, 0xf6, + 0xe5, 0xd4, 0xc4, 0x3, 0xe1, 0x35, 0x79, 0xbe, + 0xe6, 0xdc, 0x31, 0x88, 0x7, 0xff, 0x20, 0x91, + 0xa2, 0xb3, 0xb9, 0x95, 0xc, 0x62, 0x1, 0xf0, + 0x92, 0x3c, 0x51, 0x0, 0x7f, 0xf3, 0xc4, 0xd5, + 0xe7, 0x3b, 0x99, 0x8, 0x20, 0x1f, 0xfd, 0x91, + 0x35, 0x7a, 0xcf, 0xc8, 0x41, 0x0, 0xff, 0xe9, + 0x12, 0x34, 0x56, 0x77, 0x32, 0xa1, 0x4c, 0x40, + 0x3e, 0x12, 0x56, 0xd2, 0x0, 0xff, 0xe0, 0x89, + 0x23, 0xcd, 0xef, 0xed, 0xcb, 0xa9, 0x88, 0x7, + 0xc2, 0x6a, 0xf3, 0x9d, 0xcd, 0xa8, 0x41, 0x0, + 0xf0, 0x9a, 0xbd, 0x67, 0x73, 0x6e, 0x19, 0x8, + 0x3, 0xf0, 0x9a, 0xbd, 0x67, 0x73, 0x2a, 0x18, + 0xc4, 0x3, 0xfc, 0x73, 0xf9, 0x50, 0xa6, 0x20, + 0x1f, 0x84, 0xd5, 0xeb, 0x3b, 0x99, 0x50, 0xa6, + 0x20, 0x1f, 0xfc, 0xf1, 0x35, 0x8a, 0xce, 0xe6, + 0x54, 0x29, 0x88, 0x7, 0xff, 0x38, 0xc4, 0xda, + 0x2b, 0x3b, 0x99, 0x4e, 0xa6, 0x20, 0x1f, 0xfd, + 0x33, 0x9d, 0xec, 0x97, 0x53, 0x10, 0xf, 0xfe, + 0xc0, + + /* U+003F "?" */ + 0x0, 0xff, 0x89, 0x1e, 0x6b, 0x37, 0xb9, 0xff, + 0xee, 0xdc, 0xba, 0x86, 0x42, 0x0, 0xff, 0xe2, + 0x9b, 0x5f, 0x6d, 0xc3, 0x29, 0x90, 0x88, 0x3, + 0xc2, 0x46, 0x8a, 0xf3, 0x7b, 0xd4, 0xc4, 0x1, + 0xfe, 0x15, 0xbd, 0x94, 0x10, 0xf, 0xfe, 0x60, + 0xac, 0xe5, 0x20, 0x80, 0x79, 0x2e, 0xc8, 0x20, + 0x1f, 0x84, 0xd5, 0x4c, 0xd9, 0x4c, 0x80, 0x3f, + 0xe1, 0x58, 0x61, 0x0, 0xc9, 0xca, 0x20, 0x1f, + 0x24, 0x6f, 0x65, 0x52, 0x67, 0x56, 0x6e, 0xa5, + 0x4, 0x3, 0xf8, 0xf5, 0x0, 0x22, 0xc7, 0x0, + 0xf8, 0x9e, 0x5c, 0x80, 0x3f, 0xe2, 0x6f, 0x70, + 0xf, 0xf0, 0x98, 0x6, 0xca, 0x77, 0xfa, 0x28, + 0x80, 0x3f, 0xf8, 0xa2, 0x1, 0xf8, 0x49, 0x40, + 0x22, 0x47, 0x88, 0xf9, 0x48, 0x3, 0xff, 0x86, + 0x9a, 0xe2, 0x1, 0xf0, 0xbd, 0x18, 0x7, 0xff, + 0x3c, 0x9a, 0xe9, 0x84, 0x3, 0xc2, 0xb5, 0x6, + 0x1, 0xff, 0xcd, 0x26, 0xbc, 0x94, 0x10, 0xe, + 0x15, 0xac, 0xa4, 0x10, 0xf, 0xfe, 0x59, 0x3e, + 0x62, 0x50, 0x40, 0x38, 0x9a, 0xfe, 0x94, 0x80, + 0x3f, 0xf9, 0x87, 0x3f, 0x6, 0x20, 0x1c, 0x6f, + 0x9b, 0x28, 0x20, 0x1f, 0xfc, 0xd1, 0x68, 0x62, + 0x0, 0xf2, 0x4e, 0xc1, 0x80, 0x7f, 0xf4, 0x57, + 0x10, 0x3, 0xe5, 0xf6, 0x10, 0xf, 0xfe, 0x9b, + 0x7b, 0xbf, 0xd3, 0xca, 0x1, 0xff, 0xd5, 0x25, + 0x88, 0xf9, 0x90, 0x40, 0x3f, 0xff, 0xe0, 0x18, + 0x51, 0x9d, 0xe6, 0x41, 0x0, 0xff, 0xea, 0x8a, + 0xd7, 0xdc, 0xc4, 0x53, 0x7f, 0x4a, 0x20, 0x1f, + 0xfd, 0x25, 0xf5, 0x10, 0xf, 0x85, 0x7d, 0x40, + 0x3f, 0xfa, 0x4c, 0x44, 0x0, 0xfe, 0x22, 0x38, + 0x7, 0xff, 0x48, 0xa3, 0xa1, 0x8, 0x40, 0x49, + 0x23, 0xa4, 0xc0, 0x3f, 0xf8, 0xa0, + + /* U+0040 "@" */ + 0x0, 0xff, 0xe9, 0x9, 0x23, 0x3c, 0x55, 0xdb, + 0x37, 0xb9, 0xff, 0xf7, 0x73, 0x75, 0x97, 0x53, + 0xc, 0x86, 0x20, 0x1f, 0xfe, 0x72, 0x57, 0xac, + 0xee, 0x6d, 0xcc, 0x3a, 0xa2, 0xc, 0x84, 0x40, + 0x1f, 0x8, 0x88, 0x86, 0x8a, 0xcf, 0x37, 0x9d, + 0xcd, 0xa8, 0x53, 0x10, 0xf, 0xfe, 0xd9, 0x24, + 0x5f, 0x6d, 0x42, 0x98, 0x80, 0x7e, 0x12, 0x33, + 0x22, 0x15, 0x7c, 0x88, 0x32, 0x10, 0xf, 0xc2, + 0x4a, 0xf5, 0x9f, 0x92, 0xa4, 0x1, 0xff, 0xd3, + 0x14, 0x8c, 0xc5, 0xba, 0x8, 0x7, 0x89, 0x1e, + 0x6f, 0x3b, 0xfb, 0x73, 0x17, 0x6a, 0xaf, 0x5d, + 0xb3, 0x7b, 0xfd, 0xb9, 0x50, 0xc6, 0x20, 0x1c, + 0x26, 0xd5, 0xb9, 0x28, 0x20, 0x1f, 0xfc, 0xc1, + 0x49, 0xcb, 0x73, 0x10, 0xe, 0x25, 0x9c, 0xed, + 0xb8, 0x64, 0x31, 0x0, 0xff, 0xe4, 0x11, 0xab, + 0xce, 0x77, 0x2d, 0xd0, 0x40, 0x38, 0xda, 0xf2, + 0x50, 0x40, 0x3f, 0xf8, 0xe6, 0xfb, 0x6c, 0x40, + 0x1c, 0x4b, 0x5b, 0xaa, 0x63, 0x10, 0xf, 0xfe, + 0xb0, 0xa4, 0x5f, 0xdb, 0x98, 0x7, 0x13, 0x5d, + 0x31, 0x0, 0x7f, 0xf0, 0xce, 0x3a, 0xc, 0x3, + 0x85, 0x6b, 0x29, 0x48, 0x3, 0xc2, 0x6b, 0x15, + 0x7b, 0xdc, 0xff, 0xdd, 0xcd, 0xba, 0x86, 0x31, + 0x0, 0x91, 0xea, 0xbf, 0x4a, 0x9a, 0x46, 0xdb, + 0x10, 0x7, 0x24, 0xf3, 0x8, 0x7, 0xfc, 0x4f, + 0xee, 0x40, 0x1c, 0x4f, 0xb4, 0xa2, 0x1, 0xe3, + 0x7b, 0xfc, 0xa7, 0x54, 0x21, 0x10, 0x6, 0x11, + 0x12, 0x2b, 0xce, 0x7e, 0x42, 0x9e, 0x2a, 0xfe, + 0x4d, 0x10, 0x0, 0xa4, 0xf3, 0x90, 0x7, 0x1c, + 0x41, 0x0, 0x3f, 0x92, 0xe4, 0xc0, 0x38, 0x9f, + 0xa0, 0xc0, 0x3c, 0x4f, 0x98, 0x84, 0x10, 0xf, + 0xfe, 0x40, 0x9b, 0xd4, 0x20, 0x7, 0xff, 0x10, + 0xe2, 0xa, 0x1, 0xc2, 0xde, 0xc2, 0x1, 0xe5, + 0xe6, 0x10, 0xe, 0x4b, 0x93, 0x0, 0xf1, 0x3f, + 0x41, 0x80, 0x7f, 0x89, 0x5e, 0x6a, 0x97, 0x54, + 0x97, 0x52, 0x0, 0xff, 0xe6, 0xac, 0xb0, 0x80, + 0x72, 0x6b, 0x88, 0x6, 0x4c, 0x50, 0xf, 0x2f, + 0x30, 0x80, 0x78, 0xea, 0x4c, 0x3, 0xf9, 0x27, + 0x75, 0x50, 0xca, 0xa4, 0x55, 0x34, 0x56, 0xea, + 0x50, 0x40, 0x3f, 0xf9, 0x47, 0xae, 0x20, 0x1c, + 0x98, 0x80, 0x11, 0x1a, 0x0, 0x78, 0xf1, 0x0, + 0x3e, 0x3a, 0x61, 0x0, 0xfc, 0x71, 0x2c, 0x40, + 0x1f, 0xfc, 0x12, 0x6a, 0x84, 0x0, 0xff, 0xe5, + 0x27, 0xa8, 0x7, 0x9f, 0x48, 0x0, 0xdc, 0x40, + 0x1c, 0x2a, 0x42, 0x1, 0xf2, 0x90, 0x80, 0x7e, + 0x2b, 0x52, 0x0, 0xff, 0xe2, 0x8b, 0xe9, 0x80, + 0x7f, 0xf2, 0x88, 0x82, 0x1, 0xc6, 0x2c, 0x0, + 0x13, 0x0, 0xf1, 0x8b, 0x80, 0x7c, 0x42, 0xe0, + 0x1f, 0xcc, 0x26, 0x1, 0xff, 0xc7, 0x13, 0x60, + 0xf, 0xfe, 0x53, 0x88, 0x7, 0x84, 0xc0, 0x21, + 0x0, 0xf8, 0xc0, 0x3f, 0x88, 0x5c, 0x3, 0xf9, + 0x84, 0xc0, 0x3f, 0xf8, 0xe2, 0x6c, 0x1, 0xff, + 0xca, 0x71, 0x0, 0xf0, 0x9b, 0x80, 0x1c, 0xc4, + 0x3, 0x84, 0x98, 0x3, 0xf2, 0x90, 0x80, 0x7e, + 0x2a, 0x52, 0x0, 0xff, 0xe2, 0x8b, 0xe9, 0x80, + 0x7f, 0xf2, 0x44, 0x88, 0x20, 0x1c, 0x5c, 0x20, + 0x3, 0xf5, 0x0, 0xf2, 0x69, 0x80, 0x7c, 0x74, + 0xc4, 0x1, 0xf8, 0xa3, 0x9c, 0x80, 0x3f, 0xf8, + 0x24, 0xb5, 0x8, 0x1, 0xff, 0xca, 0x4c, 0x40, + 0xe, 0x14, 0x41, 0x0, 0x49, 0x86, 0x1, 0xc2, + 0xb6, 0x60, 0x1f, 0x1c, 0xda, 0x0, 0x7f, 0x1c, + 0x6e, 0xa9, 0xd9, 0x10, 0x68, 0x85, 0x79, 0xcc, + 0x52, 0x8, 0x7, 0xfc, 0x60, 0x1f, 0xc4, 0xf2, + 0xa0, 0x1c, 0x2f, 0x66, 0x1, 0x89, 0x6c, 0xc0, + 0x38, 0x9a, 0x54, 0x3, 0xe1, 0x6a, 0xa2, 0x88, + 0x7, 0xf1, 0x2c, 0x4d, 0xdb, 0x2e, 0xd5, 0xc, + 0x62, 0x1, 0xc4, 0x88, 0x10, 0xe, 0x15, 0xa4, + 0x10, 0x12, 0x59, 0xf8, 0x30, 0xe, 0x4b, 0x83, + 0x0, 0xf1, 0x34, 0xa0, 0x7, 0xa, 0xc4, 0xa0, + 0x7, 0xc2, 0xb5, 0xf6, 0xe6, 0x20, 0x1f, 0xfc, + 0x81, 0x36, 0xbc, 0xb8, 0x61, 0x0, 0xe2, 0x6b, + 0xef, 0xed, 0xa6, 0x20, 0xc, 0x4b, 0x54, 0x51, + 0x0, 0xfc, 0x2b, 0x30, 0x60, 0x1c, 0x4d, 0x54, + 0x51, 0x0, 0xf8, 0x52, 0x33, 0xf2, 0xa1, 0x90, + 0xc8, 0x44, 0x1, 0x8, 0x88, 0xd5, 0xe7, 0x3f, + 0x25, 0x4, 0xe, 0x36, 0x10, 0x40, 0x3f, 0xe1, + 0x25, 0x8b, 0xca, 0x51, 0x0, 0xff, 0xe0, 0x13, + 0xf4, 0x18, 0x7, 0xa, 0xd6, 0x52, 0x90, 0x7, + 0xe1, 0x35, 0x79, 0xbc, 0xde, 0xe7, 0xfd, 0xdc, + 0xdc, 0xa8, 0x63, 0x10, 0xf, 0x8d, 0xef, 0xb9, + 0xb9, 0x75, 0x55, 0xe6, 0xf7, 0x36, 0x9d, 0x4, + 0x3, 0xff, 0x8a, 0x4f, 0xb4, 0xa4, 0x1, 0xc4, + 0xb5, 0xba, 0x96, 0x31, 0x0, 0xff, 0xe9, 0x89, + 0xb3, 0x10, 0x8, 0xd1, 0x56, 0x43, 0x21, 0x0, + 0xff, 0xe6, 0x8a, 0xd6, 0x53, 0x10, 0x7, 0x89, + 0xa7, 0x3b, 0x6e, 0x5d, 0x4c, 0x84, 0x3, 0xff, + 0x88, 0x26, 0x8d, 0x17, 0xbf, 0x93, 0x34, 0x18, + 0x7, 0xff, 0x64, 0x56, 0x77, 0x52, 0xc6, 0x20, + 0x1e, 0x24, 0x68, 0xac, 0xde, 0xfe, 0xdd, 0x66, + 0x57, 0x6c, 0xcb, 0x7b, 0xfd, 0xd9, 0x72, 0xe8, + 0x42, 0x1, 0x13, 0x43, 0x8, 0x7, 0xff, 0x6c, + 0x9a, 0x73, 0xf2, 0x5d, 0x8, 0x3, 0xfc, 0x24, + 0x43, 0x39, 0x10, 0x67, 0x10, 0x80, 0x7f, 0x89, + 0x1a, 0x72, 0x98, 0x40, 0x3f, 0xfb, 0xe2, 0x6d, + 0x17, 0xbf, 0xd9, 0x52, 0xec, 0xa8, 0x64, 0x23, + 0x0, 0x78, 0x44, 0x46, 0x8a, 0xcf, 0x15, 0x9b, + 0xfb, 0x72, 0xc6, 0x20, 0x1f, 0xfc, 0xb0, + + /* U+0041 "A" */ + 0x0, 0xff, 0xe9, 0xb, 0x67, 0xff, 0xff, 0x3, + 0x1c, 0x80, 0x3f, 0xfd, 0xe7, 0x36, 0x60, 0x1f, + 0xfc, 0x3, 0x9b, 0x30, 0xf, 0xff, 0x6a, 0xcb, + 0x90, 0x7, 0xff, 0x8, 0x5a, 0x54, 0x3, 0xff, + 0xd4, 0x2f, 0x2a, 0x1, 0xff, 0xc6, 0x59, 0x71, + 0x0, 0xff, 0xf3, 0x9c, 0xd1, 0x80, 0x7e, 0x11, + 0x80, 0x3f, 0x8e, 0x64, 0x60, 0x1f, 0xfe, 0x55, + 0x97, 0x20, 0xf, 0xc4, 0xd5, 0x8, 0x1, 0xfc, + 0x2f, 0x2a, 0x1, 0xff, 0xe2, 0x17, 0x95, 0x0, + 0xfe, 0x3b, 0x94, 0x6f, 0x51, 0x0, 0xfe, 0x59, + 0x61, 0x0, 0xff, 0xef, 0x9c, 0xd1, 0x80, 0x7f, + 0x2c, 0xb0, 0x80, 0x12, 0x58, 0x80, 0x3f, 0x8e, + 0xe4, 0xc0, 0x3f, 0xfb, 0xab, 0x2e, 0x40, 0x1f, + 0x85, 0xb9, 0x40, 0x38, 0xea, 0x86, 0x1, 0xfc, + 0x4d, 0x28, 0x1, 0xff, 0xda, 0x27, 0x95, 0x0, + 0xfe, 0x26, 0xb4, 0x0, 0xf8, 0x9a, 0x90, 0x3, + 0xf8, 0x56, 0x18, 0x40, 0x3f, 0xfa, 0xe7, 0x72, + 0x60, 0x1f, 0xc9, 0x72, 0x40, 0x1f, 0xc2, 0xdc, + 0xa2, 0x1, 0xfc, 0x77, 0x26, 0x1, 0xff, 0xd4, + 0x15, 0x96, 0x10, 0xf, 0xe5, 0xe6, 0x10, 0xf, + 0xfe, 0x2, 0xcb, 0x8, 0x7, 0xf1, 0x34, 0xa0, + 0x7, 0xff, 0x48, 0x9a, 0x54, 0x3, 0xf8, 0x5a, + 0x54, 0x3, 0xff, 0x86, 0x75, 0x26, 0x1, 0xfc, + 0x2b, 0xec, 0x20, 0x1f, 0xfc, 0xf3, 0xb9, 0x30, + 0xf, 0xe2, 0x9b, 0x30, 0xf, 0xfe, 0x29, 0x35, + 0x20, 0x7, 0xf9, 0x2e, 0x4c, 0x3, 0xff, 0x9a, + 0xb2, 0xc2, 0x1, 0xfe, 0x28, 0xdf, 0xff, 0xfe, + 0x3f, 0x4a, 0x0, 0x7f, 0xc4, 0xd2, 0x80, 0x1f, + 0xfc, 0xa2, 0x79, 0x50, 0xf, 0xff, 0x28, 0xaf, + 0xb0, 0x80, 0x7f, 0xf1, 0xce, 0xe4, 0xc0, 0x3f, + 0xfd, 0x9, 0x72, 0x40, 0x1f, 0xfc, 0x41, 0x58, + 0x61, 0x0, 0xfe, 0x24, 0x55, 0xff, 0xe9, 0xa1, + 0x0, 0x7f, 0x89, 0xad, 0x0, 0x3f, 0xf8, 0x44, + 0xd2, 0x80, 0x1f, 0xe5, 0x8b, 0xaa, 0xff, 0xe9, + 0xdc, 0xb0, 0x80, 0x7f, 0xb, 0x7b, 0x8, 0x7, + 0xfc, 0x77, 0x26, 0x1, 0xfc, 0x4f, 0x2a, 0x1, + 0xff, 0xd5, 0x4b, 0x93, 0x0, 0xff, 0x25, 0xc9, + 0x0, 0x7e, 0x15, 0x86, 0x10, 0xf, 0xe3, 0xb9, + 0x30, 0xf, 0xfe, 0xb9, 0x34, 0xa8, 0x7, 0xf8, + 0x9a, 0xd0, 0x3, 0xc4, 0xd2, 0x80, 0x1f, 0xc2, + 0xb2, 0xc2, 0x1, 0xff, 0xd9, 0x15, 0x96, 0x10, + 0xf, 0xe1, 0x6f, 0x61, 0x0, 0x0, + + /* U+0042 "B" */ + 0x4, 0x9e, 0xff, 0xff, 0xe9, 0xf7, 0x5b, 0x97, + 0x50, 0xc8, 0x42, 0x1, 0xff, 0xe4, 0x11, 0x88, + 0xd1, 0x5e, 0x6f, 0x7f, 0x25, 0x48, 0x3, 0xff, + 0xd6, 0x26, 0xd5, 0x96, 0xc2, 0x1, 0xff, 0xc8, + 0x13, 0x55, 0xff, 0xe2, 0x22, 0xc, 0x84, 0x3, + 0xff, 0x82, 0x29, 0x36, 0xa0, 0x1f, 0xfc, 0x75, + 0xaa, 0xff, 0xe2, 0xdd, 0xb3, 0x7b, 0x96, 0xe6, + 0x1, 0xff, 0xc0, 0x5f, 0x40, 0xf, 0xfe, 0xe8, + 0xa4, 0x74, 0x10, 0x7, 0xfc, 0x24, 0x20, 0x1f, + 0xfd, 0xf2, 0x23, 0x0, 0x7f, 0xc2, 0x62, 0x1, + 0xff, 0xde, 0x15, 0xf5, 0x0, 0xff, 0x27, 0xa0, + 0x7, 0xff, 0x64, 0x44, 0x48, 0xd3, 0xb4, 0xa2, + 0x1, 0xf8, 0xe2, 0x54, 0x40, 0x3f, 0xf8, 0xc9, + 0x3f, 0xff, 0xfc, 0x5e, 0xe6, 0xdc, 0xb1, 0x80, + 0x7c, 0x4b, 0x3b, 0x8e, 0x40, 0x1f, 0xfe, 0x51, + 0x36, 0x9e, 0xb6, 0x20, 0xf, 0xff, 0x40, 0x9b, + 0x4e, 0x77, 0x2d, 0xcc, 0x40, 0x3f, 0xf9, 0x2, + 0x8c, 0xdf, 0xfc, 0x55, 0x52, 0x19, 0x8, 0x7, + 0xf8, 0x52, 0x33, 0x5c, 0xc0, 0x3f, 0xf8, 0xcb, + 0xb3, 0x3f, 0xfc, 0x5a, 0xa5, 0xe6, 0xf6, 0xdc, + 0x20, 0x80, 0x7f, 0x1c, 0x7b, 0x88, 0x7, 0xff, + 0x74, 0x91, 0xea, 0xd0, 0x3, 0xfc, 0x76, 0xe2, + 0x1, 0xff, 0xdf, 0x16, 0x32, 0x0, 0xff, 0x17, + 0x90, 0x7, 0xff, 0x7c, 0x54, 0xc8, 0x3, 0xfe, + 0x10, 0xf, 0xfe, 0xe0, 0x92, 0xc6, 0xca, 0x0, + 0x7f, 0xcb, 0xc4, 0x1, 0xff, 0xc3, 0x5a, 0xaf, + 0xfe, 0x35, 0xdb, 0x37, 0xb9, 0xb4, 0xe6, 0x1, + 0xff, 0xa, 0xf3, 0x88, 0x7, 0xff, 0xc, 0x4d, + 0x57, 0xff, 0x8a, 0x88, 0x32, 0x10, 0xf, 0xfe, + 0x10, 0xad, 0xd9, 0x44, 0x3, 0xff, 0xcc, 0x48, + 0xf7, 0xf4, 0xa2, 0x1, 0xff, 0xdd, 0x11, 0x11, + 0xa2, 0xbc, 0x56, 0x76, 0xdc, 0x20, 0x80, 0x7c, + + /* U+0043 "C" */ + 0x0, 0xff, 0xe5, 0x89, 0x23, 0x3c, 0xd5, 0xe6, + 0xf7, 0x3f, 0xfb, 0xb9, 0xba, 0xcb, 0xa9, 0x75, + 0x42, 0x10, 0xf, 0xfe, 0x99, 0x2c, 0x5e, 0xf6, + 0xdc, 0xc3, 0x2a, 0x19, 0x8, 0x80, 0x38, 0x44, + 0x44, 0x34, 0x56, 0x8a, 0xbd, 0xed, 0xb8, 0x53, + 0x10, 0xf, 0xfe, 0x40, 0x9b, 0xdf, 0x6d, 0x3a, + 0x10, 0x7, 0xff, 0x48, 0x91, 0xeb, 0x3f, 0x21, + 0x4, 0x3, 0xff, 0x82, 0x29, 0x39, 0x88, 0x41, + 0x0, 0xff, 0xe2, 0x89, 0x10, 0xc8, 0x82, 0x20, + 0xf, 0xfe, 0x18, 0x9b, 0xde, 0x41, 0x80, 0x7f, + 0x13, 0xed, 0xb1, 0x0, 0x7f, 0xf0, 0x9, 0x1e, + 0x6f, 0x7b, 0xfd, 0xdb, 0xac, 0xdd, 0x77, 0x3f, + 0xb6, 0xe5, 0xd0, 0x80, 0x3f, 0x85, 0x62, 0x4c, + 0x3, 0xe2, 0x7f, 0x83, 0x0, 0xff, 0x89, 0xab, + 0x75, 0x70, 0xc8, 0x42, 0x1, 0xff, 0x9, 0x23, + 0x45, 0xef, 0x5b, 0x98, 0x80, 0xe, 0x36, 0x94, + 0x40, 0x3c, 0x2b, 0x30, 0x40, 0x1f, 0xe1, 0x5a, + 0xc9, 0x52, 0x0, 0xff, 0xe6, 0x8a, 0x46, 0x62, + 0xf3, 0x5c, 0xc0, 0x3f, 0xb, 0xca, 0x0, 0x7f, + 0x85, 0xaa, 0x8a, 0x20, 0x1f, 0xfd, 0x42, 0x43, + 0x10, 0xf, 0xf3, 0xe9, 0x80, 0x7f, 0x89, 0xad, + 0x0, 0x3f, 0xfc, 0x87, 0xea, 0x1, 0xfe, 0x15, + 0xb2, 0x0, 0xff, 0xf2, 0xb1, 0x88, 0x7, 0xf8, + 0xb8, 0x80, 0x3f, 0xfe, 0x82, 0x1, 0xff, 0xe7, + 0x63, 0x10, 0xf, 0xf1, 0x72, 0x80, 0x7f, 0xf9, + 0x8f, 0xd4, 0x3, 0xfc, 0x2f, 0xa8, 0x1, 0xff, + 0xe6, 0x7d, 0x40, 0xf, 0xf0, 0xb7, 0xb0, 0x80, + 0x7f, 0xf9, 0x5, 0xf9, 0x0, 0x3f, 0xe4, 0x9d, + 0x73, 0x0, 0xff, 0xea, 0x11, 0x98, 0x40, 0x3f, + 0xe1, 0x59, 0x83, 0x0, 0xff, 0x8e, 0x37, 0x25, + 0x48, 0x3, 0xff, 0x96, 0x24, 0xb3, 0x9b, 0x99, + 0x42, 0x8, 0x7, 0xf8, 0x9f, 0xa0, 0xc0, 0x3f, + 0xe1, 0x36, 0xad, 0xd5, 0xcb, 0xaa, 0x11, 0x4, + 0x3, 0x84, 0x44, 0x6a, 0xf1, 0x5b, 0xfb, 0x4c, + 0x60, 0x11, 0x3d, 0xec, 0x18, 0x7, 0xf8, 0x9f, + 0x6d, 0x88, 0x3, 0xff, 0x82, 0x48, 0xd1, 0x57, + 0xba, 0xef, 0xfe, 0xee, 0x6e, 0x54, 0x3a, 0x90, + 0x80, 0x7f, 0x88, 0xd4, 0x80, 0x3f, 0xe1, 0x49, + 0xcc, 0x42, 0x8, 0x7, 0xff, 0x6c, 0x4d, 0xaf, + 0xed, 0x88, 0x3, 0xff, 0x84, 0x26, 0xf7, 0xdb, + 0x4e, 0x84, 0x1, 0xff, 0xd1, 0x13, 0x69, 0xcf, + 0xc9, 0x41, 0x0, 0xff, 0xe5, 0x12, 0xc5, 0xef, + 0x6d, 0xcb, 0xb2, 0xa1, 0x90, 0x88, 0x3, 0xc2, + 0x22, 0x34, 0x57, 0x9a, 0xce, 0xe6, 0x4b, 0x18, + 0x80, 0x7e, + + /* U+0044 "D" */ + 0x4, 0x9e, 0xff, 0xff, 0xe9, 0x77, 0x37, 0x2e, + 0xa5, 0xd5, 0x8, 0x3, 0xff, 0xdc, 0x22, 0x23, + 0x45, 0x68, 0xab, 0xdf, 0xdb, 0x85, 0x20, 0xf, + 0xff, 0xa1, 0x23, 0xd6, 0xea, 0x98, 0x80, 0x3f, + 0xfa, 0x2, 0x48, 0x9f, 0xfc, 0x33, 0x22, 0x8, + 0x7, 0xff, 0x10, 0x96, 0x77, 0x20, 0xc0, 0x3f, + 0xf9, 0xab, 0x77, 0xff, 0xc4, 0xcd, 0xd7, 0x7f, + 0x6d, 0xcb, 0xa0, 0x80, 0x7f, 0xf0, 0xd, 0xf6, + 0x94, 0x40, 0x3f, 0xfc, 0x2, 0x48, 0xd1, 0x7f, + 0x90, 0x82, 0x1, 0xfe, 0x15, 0xbb, 0x28, 0x80, + 0x7f, 0xf9, 0x4, 0xde, 0xf5, 0xc8, 0x3, 0xfc, + 0x2b, 0xc, 0x40, 0x1f, 0xfe, 0x73, 0x8e, 0x72, + 0x0, 0xff, 0x15, 0x50, 0xc0, 0x3f, 0xfd, 0x7, + 0x36, 0x60, 0x1f, 0xe2, 0x44, 0x10, 0x7, 0xff, + 0xa0, 0x52, 0xc8, 0x3, 0xfc, 0x7a, 0xc0, 0x1f, + 0xfe, 0x92, 0x16, 0x0, 0xff, 0x84, 0x80, 0x3f, + 0xfd, 0x46, 0x1, 0xff, 0xf7, 0x22, 0x30, 0x7, + 0xfc, 0x24, 0x1, 0xff, 0xe8, 0x14, 0xc2, 0x0, + 0xff, 0x1e, 0xb0, 0x7, 0xff, 0x9c, 0x9a, 0x90, + 0x3, 0xfc, 0x48, 0x82, 0x0, 0xff, 0xf2, 0x93, + 0xf4, 0x18, 0x7, 0xf8, 0xaa, 0x86, 0x1, 0xff, + 0xe3, 0x26, 0xaf, 0x83, 0x0, 0xff, 0xa, 0xcb, + 0x90, 0x7, 0xff, 0x78, 0x4d, 0x62, 0xb7, 0x52, + 0xa4, 0x1, 0xfe, 0x15, 0xab, 0x40, 0xf, 0xfe, + 0x4a, 0xdd, 0xff, 0xf1, 0x33, 0x1b, 0xdc, 0xfe, + 0xca, 0x75, 0x20, 0xf, 0xf8, 0x4e, 0x32, 0x90, + 0x40, 0x3f, 0xf9, 0x42, 0x48, 0x9f, 0xfc, 0x33, + 0x31, 0x8, 0x80, 0x3f, 0xf8, 0x64, 0xb3, 0x98, + 0x72, 0x0, 0xff, 0xf6, 0x9, 0x2c, 0x5e, 0xea, + 0x98, 0x80, 0x3f, 0xfc, 0x62, 0x22, 0x21, 0xa2, + 0xbc, 0x56, 0x6f, 0x6d, 0x3a, 0x10, 0x7, 0xff, + 0x18, + + /* U+0045 "E" */ + 0x4, 0x9e, 0xff, 0xff, 0xf1, 0x6c, 0x10, 0x7, + 0xff, 0xfc, 0x3, 0xff, 0xc8, 0x26, 0x89, 0xff, + 0xd7, 0xd3, 0x0, 0xff, 0xe1, 0xad, 0x5d, 0xff, + 0xf5, 0xa5, 0x44, 0x3, 0xff, 0xfe, 0x1, 0xff, + 0xff, 0x0, 0xff, 0xff, 0x80, 0x79, 0x27, 0xff, + 0xff, 0xa5, 0xd2, 0x80, 0x1f, 0xff, 0xf0, 0xf, + 0xff, 0x40, 0x92, 0x27, 0xff, 0x4f, 0xd8, 0x3, + 0xff, 0x8e, 0xb7, 0x7f, 0xfd, 0x3a, 0x62, 0x0, + 0xff, 0xff, 0x80, 0x7f, 0xff, 0xc0, 0x3f, 0xff, + 0xe0, 0x1f, 0xe5, 0xab, 0xbf, 0xfe, 0xbc, 0xb1, + 0x0, 0x7f, 0xf0, 0x84, 0xd1, 0x3f, 0xfa, 0xef, + 0xc2, 0x1, 0xff, 0xff, 0x0, 0xff, 0xea, 0x80, + + /* U+0046 "F" */ + 0x4, 0x9e, 0xff, 0xff, 0xef, 0xec, 0x18, 0x7, + 0xff, 0xfc, 0x3, 0xff, 0x9c, 0x20, 0x1f, 0xfc, + 0x31, 0x34, 0x4f, 0xfe, 0xa6, 0x98, 0x7, 0xff, + 0xd, 0x6a, 0xef, 0xff, 0xa7, 0x2a, 0x20, 0x1f, + 0xff, 0xf0, 0xf, 0xff, 0xf8, 0x7, 0xff, 0xe5, + 0x6a, 0xef, 0xff, 0xa1, 0x2a, 0x40, 0x1f, 0xfc, + 0x61, 0x34, 0x4f, 0xfe, 0x8e, 0x88, 0x7, 0xff, + 0xfc, 0x3, 0xff, 0xc2, 0x93, 0xff, 0xff, 0xd0, + 0xd8, 0x30, 0xf, 0xff, 0xf8, 0x7, 0xff, 0xfc, + 0x3, 0xff, 0xfe, 0x1, 0xff, 0xff, 0x0, 0xff, + 0xff, 0x80, 0x7f, 0xf6, 0x40, + + /* U+0047 "G" */ + 0x0, 0xff, 0xe6, 0x9, 0xab, 0x44, 0xd5, 0xe6, + 0xf7, 0x3f, 0xfb, 0xb9, 0xba, 0xcc, 0x54, 0xc3, + 0x29, 0x88, 0x7, 0xff, 0x54, 0x51, 0xeb, 0x3b, + 0x99, 0x52, 0xec, 0xa8, 0x64, 0x22, 0x0, 0xe1, + 0x11, 0x10, 0xcc, 0xac, 0xf3, 0x59, 0xdc, 0xda, + 0x85, 0x31, 0x0, 0xff, 0xe5, 0x13, 0x56, 0xf5, + 0xc2, 0x98, 0x80, 0x7f, 0xf4, 0x84, 0x95, 0xeb, + 0x3f, 0x21, 0x8, 0x3, 0xff, 0x86, 0x71, 0x9b, + 0x2a, 0x40, 0x1f, 0xfc, 0x51, 0x11, 0x10, 0xc8, + 0x82, 0x20, 0xf, 0xfe, 0x20, 0x9b, 0xcd, 0x98, + 0x7, 0xfc, 0x4d, 0x78, 0xe6, 0x1, 0xff, 0xc0, + 0x13, 0x68, 0xac, 0xef, 0xf7, 0x73, 0x75, 0x9b, + 0xae, 0xe7, 0xf6, 0xe5, 0x43, 0x18, 0x80, 0x7e, + 0x38, 0xf9, 0x30, 0xf, 0xe2, 0x7e, 0x94, 0x0, + 0xff, 0x85, 0x23, 0x3f, 0x25, 0xd4, 0xc4, 0x3, + 0xff, 0x80, 0x24, 0x6a, 0xf3, 0x9d, 0xcb, 0x74, + 0x11, 0x2d, 0x6b, 0x90, 0x7, 0xf0, 0xac, 0x40, + 0xc0, 0x3f, 0xc2, 0x93, 0x96, 0xe6, 0x20, 0x1f, + 0xfc, 0xe1, 0x48, 0xbe, 0xe5, 0x28, 0x80, 0x7f, + 0x85, 0xf9, 0x40, 0x3f, 0xc2, 0xb7, 0x4c, 0x40, + 0x1f, 0xfe, 0x57, 0xd4, 0x0, 0xff, 0x13, 0x42, + 0x88, 0x7, 0xff, 0x98, 0xfd, 0x40, 0x3f, 0xc4, + 0xb6, 0x40, 0x1f, 0xfe, 0x86, 0x31, 0x0, 0xff, + 0x37, 0x10, 0x7, 0xff, 0xa4, 0x40, 0x3f, 0xfc, + 0xcb, 0x5f, 0xff, 0xd4, 0xa0, 0x1c, 0xe6, 0x20, + 0x1f, 0xe5, 0xe2, 0x0, 0xff, 0xeb, 0x98, 0x80, + 0x7f, 0x9, 0x80, 0x71, 0xfa, 0x80, 0x7f, 0x85, + 0x6c, 0xc0, 0x3f, 0xfd, 0x2f, 0xa8, 0x1, 0xfe, + 0x27, 0x85, 0x10, 0xf, 0xff, 0x38, 0xbf, 0x28, + 0x80, 0x7f, 0x92, 0xb5, 0xc8, 0x3, 0xff, 0xcc, + 0x2b, 0x12, 0x60, 0x1f, 0xf1, 0xc6, 0x62, 0x10, + 0x40, 0x3f, 0xf9, 0xa2, 0x1, 0xff, 0xca, 0x27, + 0xe9, 0x40, 0xf, 0xf8, 0x4d, 0xef, 0xf2, 0xa1, + 0x90, 0x80, 0x3f, 0xf8, 0x2, 0x48, 0xaf, 0x39, + 0xf2, 0x80, 0x1f, 0xfc, 0xa2, 0x6a, 0xc7, 0x30, + 0xf, 0xfe, 0x0, 0x9a, 0xbc, 0xde, 0xff, 0xdd, + 0xcd, 0xdd, 0xdf, 0xee, 0xdb, 0xa8, 0x63, 0x10, + 0xf, 0xfe, 0x70, 0x9c, 0x66, 0x25, 0x48, 0x3, + 0xff, 0x8c, 0x22, 0x22, 0xc2, 0x1, 0xff, 0xc6, + 0x25, 0x98, 0x70, 0xf, 0xfe, 0x29, 0xb5, 0x6e, + 0xa9, 0xd0, 0x80, 0x3f, 0xfa, 0x62, 0x6a, 0xf3, + 0x9d, 0xb4, 0xc6, 0x20, 0x1f, 0xfc, 0x92, 0x58, + 0xbd, 0xfd, 0xba, 0x86, 0x54, 0x32, 0x11, 0x0, + 0x78, 0x44, 0x44, 0x34, 0x57, 0x89, 0xbc, 0xee, + 0x65, 0x43, 0x18, 0x80, 0x7e, + + /* U+0048 "H" */ + 0x4, 0x9e, 0xff, 0xff, 0x5b, 0x0, 0x7f, 0xf4, + 0xc9, 0xf3, 0xff, 0xfd, 0xb0, 0x40, 0x1f, 0xff, + 0xf0, 0xf, 0xff, 0xf8, 0x7, 0xff, 0xfc, 0x3, + 0xff, 0xfe, 0x1, 0xff, 0xff, 0x0, 0xff, 0xff, + 0x80, 0x7f, 0xfe, 0x16, 0xae, 0xff, 0xfa, 0x73, + 0x44, 0x1, 0xff, 0xcf, 0x13, 0x44, 0xff, 0xea, + 0x10, 0x80, 0x7f, 0xff, 0xc0, 0x3f, 0xff, 0xe0, + 0x12, 0x4f, 0xff, 0xff, 0x4f, 0x60, 0xc0, 0x3f, + 0xff, 0xe0, 0x1f, 0xff, 0xf0, 0xf, 0xff, 0xf8, + 0x7, 0xff, 0xfc, 0x3, 0xff, 0xfe, 0x1, 0xff, + 0xff, 0x0, 0xff, 0xfb, 0x80, + + /* U+0049 "I" */ + 0x4, 0x9e, 0xff, 0xff, 0x5b, 0x0, 0x7f, 0xff, + 0xc0, 0x3f, 0xff, 0xe0, 0x1f, 0xff, 0xf0, 0xf, + 0xff, 0xf8, 0x7, 0xff, 0xfc, 0x3, 0x80, + + /* U+004A "J" */ + 0x0, 0xfc, 0xd7, 0xff, 0xff, 0xd6, 0xa5, 0x0, + 0xff, 0xff, 0x80, 0x7f, 0xf4, 0xc8, 0xcf, 0xff, + 0x94, 0x42, 0x1, 0xff, 0xcb, 0x48, 0xcc, 0xff, + 0xe4, 0xc2, 0x0, 0x7f, 0xff, 0xc0, 0x3f, 0xff, + 0xe0, 0x1f, 0xff, 0xf0, 0xf, 0xff, 0xf8, 0x7, + 0xff, 0xfc, 0x3, 0xff, 0xfe, 0x1, 0xff, 0xde, + 0x10, 0xf, 0xe1, 0x22, 0x8, 0x7, 0xff, 0x1c, + 0x49, 0x80, 0x3f, 0xe3, 0x0, 0xfc, 0x2b, 0x79, + 0xb9, 0x2a, 0x40, 0x1f, 0xfc, 0x31, 0x7c, 0x30, + 0xf, 0xf1, 0xb, 0x0, 0x70, 0xad, 0xd9, 0x44, + 0x9, 0xab, 0x7a, 0xe1, 0x90, 0xc4, 0x40, 0x1, + 0x23, 0x59, 0xd9, 0x40, 0xf, 0xf0, 0xa6, 0x10, + 0x6, 0x38, 0xb5, 0x10, 0xf, 0x85, 0x1e, 0x6f, + 0x3b, 0x9f, 0xee, 0xdc, 0xa6, 0x30, 0xf, 0xf8, + 0x9a, 0x90, 0x3, 0x8e, 0x29, 0x88, 0x3, 0xff, + 0xa8, 0x4d, 0x32, 0x30, 0xf, 0x85, 0x27, 0x31, + 0x2a, 0x40, 0x1f, 0xfc, 0xd3, 0x6a, 0xf9, 0x41, + 0x0, 0xff, 0x84, 0xda, 0xb7, 0xb2, 0xa1, 0x94, + 0xc8, 0x82, 0x20, 0xc, 0x22, 0x23, 0x46, 0x8a, + 0xce, 0xc9, 0x52, 0x0, 0xfc, + + /* U+004B "K" */ + 0x4, 0x9e, 0xff, 0xff, 0x5b, 0x0, 0x7f, 0xf3, + 0x85, 0x6b, 0x7f, 0xff, 0xee, 0xb6, 0x20, 0xf, + 0xff, 0x0, 0xa4, 0x65, 0x29, 0x0, 0x7f, 0x1c, + 0x6d, 0xb1, 0x0, 0x7f, 0xf7, 0x8d, 0xf6, 0xdc, + 0x80, 0x3f, 0x89, 0xf3, 0x5c, 0xc0, 0x3f, 0xfb, + 0xc4, 0xd7, 0xb0, 0x60, 0x1f, 0xc4, 0xb7, 0x90, + 0x62, 0x1, 0xff, 0xdd, 0x15, 0xac, 0x94, 0x10, + 0xf, 0xc2, 0x95, 0xf4, 0x82, 0x1, 0xff, 0xdd, + 0x14, 0x9c, 0xa5, 0x10, 0xf, 0xc2, 0x91, 0x96, + 0xa4, 0x1, 0xff, 0xde, 0x38, 0xdb, 0x62, 0x0, + 0xfe, 0x37, 0xdb, 0x72, 0x0, 0xff, 0xef, 0x13, + 0x5e, 0xb9, 0x80, 0x7f, 0x13, 0x5e, 0xc1, 0x80, + 0x7f, 0xf7, 0x85, 0x6b, 0x25, 0x4, 0x3, 0xf0, + 0xad, 0x64, 0xa0, 0x80, 0x7f, 0xf7, 0x45, 0x27, + 0x29, 0x44, 0x3, 0xfc, 0x73, 0xa, 0x20, 0x1f, + 0xfd, 0xd7, 0xf9, 0xdb, 0x62, 0x0, 0xff, 0xe0, + 0x9c, 0x73, 0x90, 0x7, 0xff, 0x74, 0xd9, 0x86, + 0x1, 0xff, 0xc6, 0x38, 0xf8, 0x30, 0xf, 0xff, + 0x28, 0x91, 0x0, 0x3f, 0xe2, 0x7e, 0x93, 0x0, + 0xff, 0xf0, 0xa, 0x4e, 0x6f, 0xca, 0x0, 0x7f, + 0xc4, 0xdb, 0x28, 0x20, 0x1f, 0xfd, 0xa1, 0x38, + 0xcb, 0x62, 0x2, 0x6a, 0xa2, 0x88, 0x7, 0xf8, + 0x5a, 0xad, 0x44, 0x3, 0xff, 0xac, 0x6f, 0xb8, + 0xe4, 0x1, 0xe1, 0x5a, 0xa3, 0x10, 0x7, 0xf8, + 0x56, 0xa8, 0xc2, 0x1, 0xff, 0xd2, 0x38, 0xd8, + 0x30, 0xf, 0xfe, 0x2, 0x4f, 0x39, 0x80, 0x7f, + 0xc9, 0x3a, 0xe4, 0x1, 0xff, 0xd0, 0x71, 0x10, + 0x7, 0xff, 0x10, 0xe3, 0xa0, 0xc0, 0x3f, 0xe3, + 0x8e, 0x83, 0x0, 0xff, 0xf1, 0x93, 0xed, 0x20, + 0x80, 0x7f, 0x8d, 0xfa, 0xc, 0x3, 0xff, 0xc6, + 0x2b, 0x54, 0x61, 0x0, 0xff, 0x13, 0xec, 0xa0, + 0x80, 0x7f, 0xf8, 0x85, 0x27, 0x5c, 0x80, 0x3f, + 0xc2, 0xd5, 0x6a, 0x20, 0x1f, 0xfe, 0x33, 0x8f, + 0x83, 0x0, 0xff, 0xa, 0xdd, 0x30, 0x80, 0x40, + + /* U+004C "L" */ + 0x4, 0x9e, 0xff, 0xff, 0x5b, 0x0, 0x7f, 0xff, + 0xc0, 0x3f, 0xff, 0xe0, 0x1f, 0xff, 0xf0, 0xf, + 0xff, 0xf8, 0x7, 0xff, 0xfc, 0x3, 0xff, 0xfe, + 0x1, 0xff, 0xff, 0x0, 0xff, 0xff, 0x80, 0x7f, + 0xff, 0xc0, 0x3f, 0xff, 0xe0, 0x1f, 0xff, 0xf0, + 0xf, 0xfe, 0xca, 0x46, 0xef, 0xff, 0x3e, 0x50, + 0x3, 0xff, 0x8c, 0x24, 0x5f, 0xfd, 0x10, 0xf, + 0xff, 0xf8, 0x7, 0xff, 0x30, + + /* U+004D "M" */ + 0x4, 0x9e, 0xff, 0xff, 0xe0, 0x74, 0x98, 0x7, + 0xff, 0x70, 0x9f, 0x7f, 0xff, 0xf8, 0x34, 0xa0, + 0x1f, 0xfc, 0x51, 0x6f, 0x61, 0x0, 0xff, 0xec, + 0xa, 0xc4, 0x8, 0x3, 0xff, 0xac, 0x71, 0x4, + 0x0, 0xff, 0xeb, 0x1c, 0xc2, 0x80, 0x7f, 0xf6, + 0x45, 0xa1, 0xc8, 0x3, 0xff, 0xa4, 0x2d, 0xe, + 0x40, 0x1f, 0xfd, 0xc3, 0x98, 0x51, 0x0, 0xff, + 0xe7, 0x9c, 0x5a, 0x0, 0x7f, 0xf7, 0xc5, 0x62, + 0x4c, 0x3, 0xff, 0x98, 0x2d, 0xc, 0x40, 0x1f, + 0xfd, 0x72, 0x28, 0x3, 0xf1, 0x3c, 0x30, 0x80, + 0x7f, 0xf2, 0x52, 0x20, 0x80, 0x1f, 0x84, 0x88, + 0x1, 0xff, 0xce, 0x7b, 0x84, 0x0, 0xfe, 0x4b, + 0x83, 0x0, 0xff, 0xe3, 0x13, 0xc3, 0x8, 0x7, + 0xe4, 0x8b, 0x40, 0xf, 0xfe, 0x79, 0xac, 0xb9, + 0x0, 0x7e, 0x26, 0xf6, 0x10, 0xf, 0xfe, 0x1a, + 0x44, 0x98, 0x7, 0xe2, 0x78, 0x62, 0x0, 0xff, + 0xe9, 0x14, 0x41, 0x44, 0x3, 0xf1, 0xc4, 0x10, + 0x3, 0xff, 0x80, 0x4f, 0x2a, 0x20, 0x1f, 0x92, + 0xe4, 0xc0, 0x3f, 0xfa, 0xcb, 0x12, 0x60, 0x1f, + 0x85, 0xa1, 0xc8, 0x3, 0xf0, 0xac, 0x40, 0x80, + 0x3f, 0x13, 0xc3, 0x8, 0x7, 0xff, 0x60, 0x9e, + 0x18, 0x40, 0x3f, 0x1c, 0xc2, 0x88, 0x7, 0x1c, + 0xc2, 0x80, 0x7e, 0x15, 0x89, 0x30, 0xf, 0xfe, + 0xe2, 0x44, 0xc, 0x3, 0xf0, 0xac, 0x49, 0x80, + 0x5, 0xa1, 0xc8, 0x3, 0xf1, 0x4c, 0x28, 0x80, + 0x7f, 0xf7, 0x85, 0xa1, 0x84, 0x3, 0xf1, 0x3c, + 0x32, 0xc5, 0xa0, 0x7, 0xe1, 0x58, 0x72, 0x0, + 0xff, 0xf1, 0x24, 0x41, 0x0, 0x3f, 0x92, 0x69, + 0x88, 0x3, 0xf1, 0xcc, 0x28, 0x7, 0xff, 0x94, + 0x5a, 0x1c, 0x80, 0x3f, 0xf8, 0xc2, 0xd0, 0xe4, + 0x1, 0xff, 0xe8, 0x39, 0x84, 0x0, 0xff, 0xe2, + 0x1c, 0x41, 0x0, 0x3f, 0xfd, 0x62, 0xb0, 0xe4, + 0x1, 0xff, 0xc0, 0x16, 0x86, 0x10, 0xf, 0xff, + 0x71, 0xc4, 0x14, 0x40, 0x3f, 0x92, 0x20, 0x80, + 0x1f, 0xff, 0x25, 0x88, 0x29, 0x9f, 0x92, 0x20, + 0xc2, 0x1, 0xff, 0xf4, 0x26, 0xac, 0xcf, 0x5b, + 0x98, 0x7, 0xff, 0xfc, 0x3, 0xff, 0xb0, + + /* U+004E "N" */ + 0x4, 0x9e, 0xff, 0xff, 0x6c, 0x18, 0x7, 0xff, + 0x4d, 0x2b, 0xff, 0xfd, 0xb0, 0x60, 0x1f, 0xfc, + 0x22, 0x7d, 0x94, 0x10, 0xf, 0xff, 0x78, 0xb5, + 0x51, 0x84, 0x3, 0xff, 0xde, 0x29, 0x3a, 0xe4, + 0x1, 0xff, 0xf0, 0x38, 0xf9, 0x40, 0xf, 0xff, + 0x81, 0x35, 0x51, 0x44, 0x3, 0xff, 0xde, 0x2b, + 0x54, 0x62, 0x0, 0xff, 0xf1, 0x2b, 0xb1, 0x0, + 0x7f, 0x92, 0x7e, 0xc, 0x3, 0xff, 0xc0, 0x79, + 0x3f, 0x6, 0x1, 0xfe, 0x27, 0xd9, 0x41, 0x0, + 0xff, 0xf0, 0x13, 0xed, 0x20, 0x80, 0x7f, 0xb, + 0x55, 0x14, 0x40, 0x3f, 0xfc, 0x2, 0xb5, 0x46, + 0x10, 0xf, 0xe1, 0x4a, 0xd7, 0x20, 0xf, 0xff, + 0x0, 0xa4, 0xeb, 0x90, 0x7, 0xf8, 0xe3, 0xe5, + 0x0, 0x3f, 0xfc, 0x27, 0x1f, 0x28, 0x1, 0xfe, + 0x26, 0xaa, 0x28, 0x80, 0x7f, 0xf8, 0x9, 0xaa, + 0x8a, 0x20, 0x1f, 0xc2, 0xb5, 0x46, 0x20, 0xf, + 0xff, 0x0, 0xad, 0x51, 0x88, 0x3, 0xfc, 0x93, + 0xf1, 0x80, 0x1f, 0xfe, 0x14, 0x9f, 0x83, 0x0, + 0xff, 0x13, 0xb9, 0x40, 0x3f, 0xfc, 0x44, 0xfb, + 0x28, 0x20, 0x1f, 0xfe, 0xf1, 0x6a, 0xa2, 0x88, + 0x7, 0xff, 0xbc, 0x52, 0xb5, 0xc8, 0x3, 0xff, + 0xe0, 0x71, 0xf2, 0x80, 0x1f, 0xff, 0x2, 0x6a, + 0xa2, 0x88, 0x7, 0xff, 0xbc, 0x56, 0xa8, 0xc4, + 0x1, 0xff, 0xc1, + + /* U+004F "O" */ + 0x0, 0xff, 0xe6, 0x12, 0x2b, 0xc5, 0x5e, 0x6f, + 0x73, 0xff, 0xee, 0xe6, 0xe5, 0xd4, 0xc3, 0x29, + 0x88, 0x7, 0xff, 0x78, 0x96, 0x2f, 0x7f, 0x6e, + 0xa1, 0xd5, 0xc, 0x84, 0x40, 0x1f, 0x8, 0x88, + 0xd1, 0x59, 0xe6, 0xb3, 0xb9, 0x92, 0xe8, 0x20, + 0x1f, 0xfd, 0x31, 0x37, 0xbe, 0xda, 0x74, 0x20, + 0xf, 0xfe, 0x98, 0x9b, 0x45, 0xf6, 0x4a, 0x90, + 0x7, 0xff, 0x30, 0x52, 0x73, 0x10, 0x82, 0x1, + 0xff, 0xc5, 0x11, 0x11, 0x61, 0x10, 0x7, 0xff, + 0x14, 0xda, 0xb2, 0xdc, 0x80, 0x3f, 0xf8, 0xe4, + 0xfb, 0x6c, 0x40, 0x1f, 0xfc, 0x1, 0x36, 0x8a, + 0xce, 0xff, 0x77, 0x37, 0x77, 0x73, 0xfd, 0xd9, + 0x2e, 0xa6, 0x20, 0x1f, 0xf0, 0xa4, 0x65, 0x28, + 0x80, 0x7f, 0xf0, 0x89, 0xfe, 0xc, 0x3, 0xfe, + 0x14, 0x8c, 0xfc, 0x97, 0x53, 0x10, 0xf, 0xfe, + 0x0, 0x9b, 0x45, 0x67, 0xdb, 0x98, 0x80, 0x7f, + 0x85, 0x6e, 0xca, 0x20, 0x1f, 0xe1, 0x59, 0x82, + 0x0, 0xff, 0xa, 0x4e, 0x5b, 0x98, 0x80, 0x7f, + 0xf3, 0x5, 0x23, 0x35, 0xc8, 0x3, 0xfc, 0x2b, + 0x12, 0x60, 0x1f, 0x85, 0xe5, 0x0, 0x3f, 0xc2, + 0xb7, 0x4c, 0x40, 0x1f, 0xfd, 0x43, 0x8f, 0x83, + 0x0, 0xff, 0x13, 0x52, 0x0, 0x7c, 0xfa, 0x60, + 0x1f, 0xe2, 0x68, 0x51, 0x0, 0xff, 0xec, 0x13, + 0xc2, 0x80, 0x7f, 0x85, 0xf0, 0xc0, 0x38, 0xfd, + 0x40, 0x3f, 0xc4, 0xb6, 0x40, 0x1f, 0xfd, 0xc4, + 0xf5, 0x0, 0xff, 0x9, 0xa8, 0x80, 0x66, 0x31, + 0x0, 0xff, 0x37, 0x10, 0x7, 0xff, 0x79, 0x88, + 0x40, 0x3f, 0xcc, 0x26, 0x1, 0x84, 0x3, 0xff, + 0xfe, 0x0, 0x73, 0x10, 0xf, 0xf2, 0xf1, 0x0, + 0x7f, 0xf7, 0x98, 0xc4, 0x3, 0xfc, 0xc2, 0x60, + 0x18, 0xfd, 0x40, 0x3f, 0xc2, 0xb6, 0x60, 0x1f, + 0xfd, 0xc5, 0xf4, 0x0, 0xff, 0x11, 0xa8, 0x80, + 0x73, 0xea, 0x0, 0x7f, 0x89, 0xe1, 0x44, 0x3, + 0xff, 0xb0, 0x4f, 0x2a, 0x1, 0xfe, 0x14, 0xb3, + 0x0, 0xf0, 0xbf, 0x28, 0x80, 0x7f, 0x92, 0xb5, + 0xc8, 0x3, 0xff, 0xa8, 0x93, 0xf0, 0x60, 0x1f, + 0xe2, 0x6b, 0x30, 0xf, 0xc2, 0xb1, 0x26, 0x1, + 0xff, 0x1c, 0x65, 0xc2, 0x8, 0x7, 0xff, 0x30, + 0x96, 0x72, 0xd8, 0x80, 0x3f, 0xc2, 0xb3, 0x4, + 0x1, 0xff, 0x13, 0xf4, 0xa0, 0x7, 0xfc, 0x28, + 0xf7, 0xf9, 0x50, 0xc8, 0x40, 0x1f, 0xfc, 0x2, + 0x46, 0x8a, 0xdd, 0x53, 0x18, 0x7, 0xfc, 0x4d, + 0x56, 0x80, 0x1f, 0xfc, 0x32, 0x6a, 0xc7, 0x30, + 0xf, 0xfe, 0x0, 0x9a, 0xbc, 0xde, 0xff, 0xdd, + 0xbb, 0xbb, 0xfe, 0xdb, 0x97, 0x52, 0x0, 0xff, + 0xe0, 0xa, 0x4f, 0xca, 0x8, 0x7, 0xff, 0x18, + 0x4e, 0x33, 0x65, 0x48, 0x3, 0xff, 0x8c, 0x24, + 0x58, 0x40, 0x3f, 0xf8, 0xa2, 0x6f, 0x7f, 0x6c, + 0x40, 0x1f, 0xfc, 0xd2, 0x6a, 0xdd, 0x5c, 0x29, + 0x8, 0x7, 0xff, 0x48, 0x4d, 0xa7, 0x3f, 0x21, + 0x4, 0x3, 0xff, 0xa8, 0x48, 0xf5, 0xbd, 0xb9, + 0x50, 0xea, 0x86, 0x42, 0x20, 0xf, 0x84, 0x44, + 0x68, 0xac, 0xf3, 0x7b, 0xdc, 0xc9, 0x63, 0x10, + 0xf, 0xfe, 0x30, + + /* U+0050 "P" */ + 0x4, 0x9e, 0xff, 0xff, 0xe8, 0xf7, 0x37, 0x59, + 0x53, 0xc, 0x84, 0x20, 0x1f, 0xfe, 0x41, 0x11, + 0x10, 0xd5, 0x9e, 0x6f, 0x7b, 0x69, 0xcc, 0x40, + 0x3f, 0xfd, 0x64, 0xb1, 0x98, 0x94, 0x10, 0xf, + 0xfe, 0x48, 0x9a, 0x27, 0xff, 0x10, 0xc8, 0x40, + 0x3f, 0xf8, 0x44, 0xd7, 0x4a, 0x20, 0x1f, 0xfc, + 0x75, 0xab, 0xbf, 0xfe, 0x26, 0x6f, 0x7f, 0x65, + 0x31, 0x88, 0x7, 0xf9, 0x2e, 0x4c, 0x3, 0xff, + 0xb8, 0x26, 0xb3, 0x9a, 0xc4, 0x1, 0xfc, 0x2b, + 0x66, 0x1, 0xff, 0xe0, 0x38, 0xa3, 0x0, 0xfe, + 0x23, 0x60, 0xf, 0xff, 0x8, 0x9a, 0x80, 0x7f, + 0x9c, 0x84, 0x3, 0xff, 0xc2, 0x26, 0x1, 0xfe, + 0x71, 0x10, 0x7, 0xff, 0x80, 0xf1, 0x0, 0x3f, + 0xc4, 0x40, 0xf, 0xfe, 0xf9, 0xbf, 0xb0, 0x80, + 0x7f, 0x26, 0x20, 0x7, 0xff, 0x5c, 0x48, 0xd1, + 0xa2, 0xb7, 0x20, 0xc0, 0x3f, 0x85, 0x79, 0x40, + 0x3f, 0xf8, 0xc9, 0x3f, 0xff, 0xfc, 0x4e, 0xdc, + 0xb9, 0x75, 0x20, 0xf, 0xf9, 0x22, 0xa, 0x1, + 0xff, 0xe9, 0x37, 0xbb, 0x31, 0x0, 0x7f, 0xf9, + 0x4, 0x91, 0xef, 0x72, 0x10, 0x3, 0xff, 0x96, + 0x24, 0x89, 0xff, 0xc3, 0x55, 0x99, 0x8f, 0x13, + 0x79, 0xdc, 0xdb, 0x84, 0x20, 0xf, 0xfe, 0x72, + 0xdd, 0xff, 0xf1, 0x2a, 0xa9, 0x94, 0x3b, 0x21, + 0x88, 0x7, 0xff, 0xfc, 0x3, 0xff, 0xfe, 0x1, + 0xff, 0xff, 0x0, 0xff, 0xff, 0x80, 0x7f, 0xf1, + 0x80, + + /* U+0051 "Q" */ + 0x0, 0xff, 0xe6, 0x12, 0x2b, 0xc5, 0x5e, 0x6f, + 0x73, 0xff, 0xee, 0xe6, 0xe5, 0xd4, 0xc3, 0x29, + 0x88, 0x7, 0xff, 0x84, 0x96, 0x2f, 0x7f, 0x6e, + 0xa1, 0xd5, 0xc, 0x84, 0x40, 0x1f, 0x8, 0x88, + 0xd1, 0x59, 0xe6, 0xb3, 0xb9, 0x92, 0xe8, 0x20, + 0x1f, 0xfd, 0x61, 0x37, 0xbe, 0xda, 0x74, 0x20, + 0xf, 0xfe, 0x98, 0x9b, 0x45, 0xf6, 0x4a, 0x90, + 0x7, 0xff, 0x3c, 0x52, 0x73, 0x10, 0x82, 0x1, + 0xff, 0xc5, 0x11, 0x11, 0x61, 0x10, 0x7, 0xff, + 0x14, 0xda, 0xb2, 0xdc, 0x80, 0x3f, 0xf9, 0x44, + 0xfb, 0x6c, 0x40, 0x1f, 0xfc, 0x1, 0x36, 0x8a, + 0xce, 0xff, 0x77, 0x37, 0x77, 0x73, 0xfd, 0xd9, + 0x2e, 0xa6, 0x20, 0x1f, 0xf0, 0xa4, 0x65, 0x28, + 0x80, 0x7f, 0xf1, 0x49, 0xfe, 0xc, 0x3, 0xfe, + 0x14, 0x8c, 0xfc, 0x97, 0x53, 0x10, 0xf, 0xfe, + 0x0, 0x9b, 0x45, 0x67, 0xdb, 0x98, 0x80, 0x7f, + 0x85, 0x6e, 0xca, 0x20, 0x1f, 0xfc, 0x11, 0x59, + 0x82, 0x0, 0xff, 0xa, 0x4e, 0x5b, 0x98, 0x80, + 0x7f, 0xf3, 0x5, 0x23, 0x35, 0xc8, 0x3, 0xfc, + 0x2b, 0x12, 0x60, 0x1f, 0xf0, 0xbc, 0xa0, 0x7, + 0xf8, 0x56, 0xe9, 0x88, 0x3, 0xff, 0xa8, 0x71, + 0xf0, 0x60, 0x1f, 0xe2, 0x6a, 0x40, 0xf, 0xf3, + 0xe9, 0x80, 0x7f, 0x89, 0xa1, 0x44, 0x3, 0xff, + 0xb0, 0x4f, 0xa, 0x1, 0xfe, 0x17, 0xd3, 0x0, + 0xfc, 0x7e, 0xa0, 0x1f, 0xe2, 0x5b, 0x20, 0xf, + 0xfe, 0xe2, 0x7a, 0x80, 0x7f, 0x84, 0x94, 0x40, + 0x3e, 0x63, 0x10, 0xf, 0xf3, 0x71, 0x0, 0x7f, + 0xf7, 0x98, 0x84, 0x3, 0xfc, 0xdc, 0x60, 0x1f, + 0x8, 0x7, 0xff, 0xe8, 0x7c, 0x3, 0xf3, 0x98, + 0x80, 0x7f, 0x97, 0x88, 0x3, 0xff, 0xbc, 0xc6, + 0x20, 0x1f, 0xe7, 0x22, 0x0, 0x7c, 0x7e, 0xa0, + 0x1f, 0xe1, 0x5b, 0x30, 0xf, 0xfe, 0xe2, 0xfa, + 0x0, 0x7f, 0x88, 0xd8, 0x3, 0xf9, 0xf5, 0x0, + 0x3f, 0xc4, 0xf0, 0xa2, 0x1, 0xff, 0xd8, 0x27, + 0x95, 0x0, 0xff, 0x12, 0xd9, 0x80, 0x7f, 0xb, + 0xf2, 0x88, 0x7, 0xf9, 0x2b, 0x5c, 0x80, 0x3f, + 0xfa, 0x89, 0x3f, 0x6, 0x1, 0xfe, 0x3a, 0xa1, + 0x80, 0x7f, 0xc2, 0xb1, 0x26, 0x1, 0xff, 0x1c, + 0x65, 0xc2, 0x8, 0x7, 0xff, 0x30, 0x96, 0x72, + 0xd8, 0x80, 0x3f, 0xc4, 0xde, 0xe4, 0x1, 0xff, + 0xc2, 0x27, 0xe9, 0x40, 0xf, 0xf8, 0x51, 0xef, + 0xf2, 0xa1, 0x90, 0x80, 0x3f, 0xf8, 0x4, 0x8d, + 0x15, 0xba, 0xa6, 0x30, 0xf, 0xf8, 0x9a, 0x64, + 0x60, 0x1f, 0xfc, 0x62, 0x6a, 0xc7, 0x30, 0xf, + 0xfe, 0x0, 0x9a, 0xbc, 0xde, 0xff, 0xdd, 0xbb, + 0xbb, 0xfe, 0xdb, 0x97, 0x52, 0x0, 0xff, 0xe0, + 0xa, 0xd6, 0x4a, 0x0, 0x7f, 0xf2, 0x84, 0xe3, + 0x36, 0x54, 0x80, 0x3f, 0xf8, 0xc2, 0x45, 0x84, + 0x3, 0xff, 0x8a, 0x28, 0xf7, 0xf4, 0xa2, 0x1, + 0xff, 0xd0, 0x26, 0xad, 0xd5, 0x3a, 0x90, 0x80, + 0x7f, 0xf4, 0x89, 0x1a, 0x73, 0xee, 0x10, 0x40, + 0x3f, 0xfa, 0xe4, 0xb1, 0x5b, 0xdb, 0x75, 0xe, + 0xa8, 0x64, 0x22, 0x0, 0xff, 0xe2, 0x1c, 0x6e, + 0xae, 0x58, 0xc4, 0x3, 0xfc, 0x26, 0xca, 0x60, + 0x1f, 0xfd, 0x22, 0x45, 0x78, 0xab, 0xcd, 0xee, + 0x7f, 0xdb, 0x28, 0x1, 0xfe, 0x38, 0xcc, 0x4b, + 0x21, 0x8, 0x4, 0x24, 0x8d, 0x15, 0xbd, 0x93, + 0x5c, 0xe4, 0x1, 0xff, 0xde, 0x26, 0xaa, 0x28, + 0x80, 0x7f, 0x9, 0xb4, 0xde, 0xf7, 0xfd, 0xdb, + 0x72, 0xea, 0x40, 0x18, 0xa3, 0x98, 0x40, 0x3f, + 0xfb, 0xc2, 0xb5, 0x94, 0xa4, 0x1, 0xff, 0xd0, + 0x25, 0x33, 0x0, 0x7f, 0xf8, 0x49, 0x6b, 0x31, + 0x2c, 0x62, 0x1, 0xff, 0xc5, 0x13, 0x69, 0xbe, + 0xd9, 0x52, 0x0, 0xff, 0xf2, 0x9, 0xb4, 0xe7, + 0x73, 0x2e, 0xa6, 0x1d, 0xe8, 0x84, 0xd5, 0xe7, + 0x7f, 0x64, 0xb2, 0x8, 0x7, 0x80, + + /* U+0052 "R" */ + 0x4, 0x9e, 0xff, 0xff, 0xe8, 0xf7, 0x5b, 0x97, + 0x53, 0xc, 0x84, 0x1, 0xff, 0xe4, 0x11, 0x88, + 0xd1, 0x59, 0xe6, 0xf7, 0xf6, 0x98, 0xc4, 0x3, + 0xff, 0xd6, 0x4b, 0x39, 0x89, 0x41, 0x0, 0xff, + 0xe4, 0x9, 0xa2, 0x7f, 0xf1, 0x4c, 0xc4, 0x20, + 0x1f, 0xfc, 0x12, 0x6b, 0xa6, 0x10, 0xf, 0xfe, + 0x32, 0xd5, 0xdf, 0xff, 0x17, 0x31, 0xbd, 0xcd, + 0xa7, 0x31, 0x0, 0xff, 0x24, 0x41, 0x0, 0x3f, + 0xfb, 0x82, 0x4b, 0x19, 0xae, 0x40, 0x1f, 0xc2, + 0xfa, 0x60, 0x1f, 0xfe, 0x3, 0x9b, 0x30, 0xf, + 0xe1, 0x55, 0x8, 0x7, 0xff, 0x80, 0x49, 0x44, + 0x3, 0xf8, 0x44, 0x60, 0x1f, 0xfe, 0x23, 0x10, + 0xf, 0xe1, 0x0, 0xff, 0xf1, 0x1e, 0x38, 0x7, + 0xf9, 0x88, 0x80, 0x1f, 0xfd, 0xe2, 0x7f, 0x72, + 0x0, 0xfe, 0x3c, 0x40, 0xf, 0xfe, 0xb8, 0x88, + 0x91, 0x5e, 0xb7, 0x50, 0x60, 0x1f, 0xe4, 0x97, + 0x10, 0xf, 0xfe, 0x22, 0x4f, 0xff, 0xff, 0x17, + 0xb9, 0xb7, 0x50, 0xa4, 0x1, 0xff, 0x1c, 0x4a, + 0x88, 0x7, 0xff, 0xa0, 0xde, 0xf5, 0xc8, 0x3, + 0xff, 0xca, 0x48, 0xf7, 0xb9, 0x8, 0x20, 0x1f, + 0xfc, 0x91, 0x24, 0x4f, 0xfe, 0x21, 0x88, 0x7, + 0xf8, 0x72, 0x90, 0x80, 0x3f, 0xf9, 0xab, 0x77, + 0xff, 0xc5, 0xca, 0x61, 0x0, 0xfc, 0x71, 0xf0, + 0x60, 0x1f, 0xfe, 0x4, 0x8b, 0x51, 0x0, 0xfc, + 0x4f, 0xd0, 0x60, 0x1f, 0xfd, 0xf1, 0x5b, 0x84, + 0x0, 0xfe, 0x27, 0xe8, 0x30, 0xf, 0xfe, 0xf8, + 0xb4, 0xc1, 0x80, 0x7f, 0x13, 0xf4, 0xa0, 0x7, + 0xff, 0x7c, 0x9f, 0xa0, 0x80, 0x3f, 0x89, 0xaa, + 0x50, 0x3, 0xff, 0xbe, 0x4f, 0xce, 0x40, 0x1f, + 0xc2, 0xd5, 0x44, 0x10, + + /* U+0053 "S" */ + 0x0, 0xff, 0xe2, 0x89, 0xab, 0xc5, 0x5e, 0x6e, + 0xbb, 0x9f, 0xfd, 0xdc, 0xdd, 0x65, 0xd4, 0xbb, + 0x29, 0x88, 0x7, 0xff, 0x34, 0x96, 0x73, 0xb9, + 0x95, 0xe, 0xa8, 0x64, 0x41, 0x10, 0x7, 0x8, + 0x88, 0x86, 0x8a, 0xd1, 0x35, 0x9d, 0xfb, 0x72, + 0xc6, 0x20, 0x1f, 0xfc, 0x33, 0x7c, 0xc5, 0x31, + 0x88, 0x7, 0xff, 0x4c, 0x91, 0xa7, 0x3a, 0x94, + 0x40, 0x3f, 0xc7, 0x3b, 0x6, 0x20, 0x1f, 0xfc, + 0x31, 0x11, 0x8, 0x80, 0x3f, 0xf9, 0xb, 0xea, + 0x20, 0x1f, 0xcb, 0x2c, 0x20, 0x1f, 0xf1, 0xb5, + 0x67, 0x7f, 0xbb, 0x9b, 0xdc, 0xff, 0xbb, 0x2e, + 0xa1, 0x90, 0x84, 0x3, 0xc4, 0xf2, 0xa0, 0x1f, + 0xe3, 0xd7, 0x0, 0xff, 0x85, 0xfe, 0x54, 0xc4, + 0x3, 0xfc, 0x26, 0x8a, 0xf3, 0x7b, 0xdc, 0xb9, + 0x64, 0x68, 0x93, 0x0, 0xff, 0xe0, 0x9, 0x80, + 0x7f, 0xf0, 0x4, 0x3, 0xff, 0x98, 0x28, 0xd3, + 0x72, 0xa2, 0x1, 0xff, 0xc0, 0x2e, 0x20, 0xf, + 0xf8, 0x5b, 0xa5, 0x4, 0x3, 0xff, 0xb8, 0x2b, + 0x46, 0x1, 0xff, 0xc0, 0x26, 0xbe, 0xdb, 0x97, + 0x53, 0x10, 0xf, 0xfe, 0xb1, 0x37, 0x4a, 0x8, + 0x7, 0xff, 0x4, 0x91, 0xa2, 0xb3, 0xbf, 0xb6, + 0xe6, 0x19, 0xc, 0x40, 0x3f, 0xf9, 0xc4, 0xd7, + 0x94, 0xc6, 0x20, 0x1f, 0xfc, 0x51, 0x24, 0x67, + 0x9b, 0xce, 0xe6, 0xdc, 0x31, 0x88, 0x7, 0xff, + 0x28, 0x96, 0x73, 0xf6, 0xa1, 0x90, 0xc4, 0x3, + 0xff, 0x8e, 0x24, 0x8f, 0x39, 0xf9, 0x6, 0x20, + 0x1f, 0xfc, 0xa1, 0x25, 0x79, 0xbc, 0xef, 0xdc, + 0xa9, 0x75, 0x42, 0x10, 0xf, 0xfe, 0x18, 0x9b, + 0xe6, 0xb9, 0x0, 0x7f, 0xf4, 0x48, 0xd5, 0xa2, + 0xaf, 0x7b, 0x9b, 0x72, 0xc6, 0x20, 0x1f, 0xfc, + 0x3, 0x89, 0x61, 0x0, 0xff, 0xec, 0x9, 0x23, + 0x4e, 0x7d, 0x28, 0x80, 0x7f, 0xc9, 0x88, 0x1, + 0xf8, 0x5a, 0xae, 0x10, 0x40, 0x3f, 0xf9, 0xe2, + 0xbc, 0xe0, 0x1f, 0xfc, 0x6, 0x31, 0x0, 0xf1, + 0xc4, 0x15, 0x1e, 0xff, 0x25, 0x8c, 0x40, 0x3f, + 0xf9, 0x62, 0x44, 0x0, 0xff, 0xe0, 0x39, 0x88, + 0x6, 0x16, 0xf6, 0x10, 0xc, 0x26, 0xd3, 0x9d, + 0xcb, 0x98, 0x64, 0x31, 0x0, 0xff, 0x84, 0xda, + 0x76, 0x10, 0x3, 0xfe, 0x3c, 0x70, 0xc, 0x29, + 0x84, 0x1, 0xff, 0xc0, 0x14, 0x67, 0x9b, 0xce, + 0xff, 0x77, 0x37, 0x77, 0x7f, 0xbb, 0x25, 0x8c, + 0x40, 0x3f, 0xc2, 0xb2, 0xc4, 0x1, 0x85, 0x6b, + 0xed, 0xd0, 0x40, 0x3f, 0xf8, 0xc2, 0x22, 0x2c, + 0x20, 0x1f, 0xfc, 0x43, 0x7d, 0xb5, 0x10, 0xf, + 0xc2, 0x91, 0x7d, 0xb7, 0xc, 0x62, 0x1, 0xff, + 0xd2, 0x13, 0x69, 0xcc, 0x41, 0x88, 0x7, 0xff, + 0xc, 0x91, 0xe7, 0x3b, 0x9b, 0x75, 0xe, 0xa8, + 0x64, 0x41, 0x10, 0x7, 0x8, 0x88, 0x86, 0x8a, + 0xf1, 0x37, 0xbd, 0x92, 0xc6, 0x1, 0xfe, + + /* U+0054 "T" */ + 0x0, 0xb, 0x67, 0xff, 0xff, 0xa3, 0x60, 0xc0, + 0x3f, 0xff, 0xe0, 0x1f, 0xfe, 0x31, 0x35, 0x33, + 0xff, 0xe3, 0x90, 0x7, 0xff, 0x0, 0x4c, 0xff, + 0xf8, 0xef, 0xc2, 0x1, 0x2c, 0xe6, 0x7f, 0xf1, + 0xb6, 0x8c, 0x3, 0xfc, 0x2d, 0xf9, 0x9f, 0xfc, + 0x6a, 0x62, 0x0, 0xff, 0xff, 0x80, 0x7f, 0xff, + 0xc0, 0x3f, 0xff, 0xe0, 0x1f, 0xff, 0xf0, 0xf, + 0xff, 0xf8, 0x7, 0xff, 0xfc, 0x3, 0xff, 0xfe, + 0x1, 0xff, 0xff, 0x0, 0xff, 0xff, 0x80, 0x7f, + 0xff, 0xc0, 0x3f, 0xff, 0xe0, 0x1f, 0xff, 0xf0, + 0xf, 0xff, 0xf8, 0x7, 0xff, 0x84, + + /* U+0055 "U" */ + 0x5a, 0xff, 0xff, 0xa9, 0x0, 0x3f, 0xfa, 0x42, + 0xd7, 0xff, 0xfe, 0xe9, 0x30, 0xf, 0xff, 0xf8, + 0x7, 0xff, 0xfc, 0x3, 0xff, 0xfe, 0x1, 0xff, + 0xff, 0x0, 0xff, 0xff, 0x80, 0x7f, 0xff, 0xc0, + 0x3f, 0xff, 0xe0, 0x1f, 0xff, 0xf0, 0xf, 0xff, + 0xf8, 0x7, 0xff, 0xfc, 0x3, 0x8, 0x4, 0x26, + 0x1, 0xff, 0xc0, 0x10, 0xf, 0xfe, 0x91, 0x8b, + 0x80, 0x7f, 0x8c, 0x4, 0x0, 0xe2, 0x40, 0x1f, + 0xe7, 0xd3, 0x0, 0xff, 0xe8, 0xbe, 0x98, 0x7, + 0xf8, 0x78, 0xc0, 0x7, 0xae, 0x1, 0xfe, 0x26, + 0xa3, 0x0, 0xff, 0xe7, 0xa, 0xfa, 0x80, 0x7f, + 0x85, 0x14, 0x40, 0x25, 0xf5, 0x0, 0xff, 0xb, + 0x74, 0xa0, 0x80, 0x7f, 0xf2, 0x45, 0x6e, 0xca, + 0x1, 0xfe, 0x17, 0xb3, 0x0, 0xe5, 0x96, 0x20, + 0xf, 0xf1, 0x35, 0xfd, 0xc2, 0x98, 0x80, 0x7f, + 0xc2, 0x6d, 0x19, 0xf4, 0xa2, 0x1, 0xfe, 0x39, + 0xb3, 0x0, 0xf8, 0xe6, 0x4c, 0x40, 0x1f, 0xf0, + 0xa3, 0xd6, 0x77, 0xfb, 0xb7, 0x7b, 0xbf, 0xdd, + 0x92, 0xe6, 0x20, 0x1f, 0xe1, 0x49, 0xe7, 0x20, + 0xf, 0xf2, 0x4f, 0xca, 0x8, 0x7, 0xff, 0x10, + 0x48, 0xb8, 0x40, 0x3f, 0xf8, 0x84, 0xf5, 0x46, + 0x20, 0xf, 0xfe, 0x11, 0x35, 0xfe, 0x42, 0x90, + 0x7, 0xff, 0x48, 0x4d, 0xef, 0x75, 0x8, 0x20, + 0x1f, 0xfc, 0x71, 0x37, 0xad, 0xfd, 0xb9, 0x86, + 0x54, 0x32, 0x11, 0x0, 0x7c, 0x22, 0x23, 0x45, + 0x68, 0xac, 0xee, 0x64, 0x21, 0x0, 0x7f, 0xf0, + 0x40, + + /* U+0056 "V" */ + 0x0, 0xb, 0x5f, 0xff, 0xfd, 0xb0, 0x60, 0x1f, + 0xfd, 0x84, 0x9e, 0xff, 0xff, 0x63, 0x90, 0x4, + 0x2d, 0xca, 0x1, 0xfe, 0x26, 0xa3, 0x0, 0xff, + 0xeb, 0x2f, 0x30, 0x80, 0x7f, 0x25, 0x31, 0x0, + 0x72, 0xf3, 0x8, 0x7, 0xf0, 0xbd, 0x20, 0x7, + 0xff, 0x4c, 0x57, 0x94, 0x3, 0xfc, 0xbc, 0xc2, + 0x1, 0xf2, 0x53, 0x10, 0x7, 0xf0, 0xb7, 0x28, + 0x7, 0xff, 0x44, 0x5e, 0x50, 0x3, 0xf8, 0x5a, + 0x54, 0x3, 0xfc, 0x75, 0x43, 0x0, 0xff, 0x2f, + 0x30, 0x80, 0x7f, 0xf3, 0x89, 0xa8, 0xc0, 0x3f, + 0x89, 0xac, 0xc0, 0x3f, 0xf8, 0x4, 0xd4, 0x80, + 0x1f, 0xe4, 0xa6, 0x10, 0xf, 0xfe, 0x61, 0xd5, + 0xc, 0x3, 0xf8, 0xee, 0x48, 0x3, 0xff, 0x84, + 0x2d, 0xca, 0x1, 0xfe, 0x3a, 0x62, 0x0, 0xff, + 0xe5, 0x25, 0x31, 0x0, 0x7f, 0x24, 0xb0, 0x80, + 0x7f, 0xf1, 0x56, 0x58, 0x40, 0x3f, 0x8a, 0xa8, + 0x60, 0x1f, 0xfc, 0x84, 0xe7, 0x10, 0xf, 0xc2, + 0xde, 0xa0, 0x1f, 0xfc, 0x83, 0xa6, 0x20, 0xf, + 0xe2, 0x6a, 0x30, 0xf, 0xfe, 0x32, 0xf2, 0x88, + 0x7, 0xe2, 0x6a, 0x40, 0xf, 0xfe, 0x51, 0xcd, + 0x18, 0x7, 0xf0, 0xbd, 0x20, 0x7, 0xff, 0xc, + 0x5b, 0x94, 0x3, 0xf8, 0xea, 0x86, 0x1, 0xff, + 0xcc, 0x16, 0xa4, 0x0, 0xfe, 0x16, 0xe5, 0x0, + 0xff, 0xe0, 0x8b, 0x52, 0x0, 0x7f, 0x25, 0x31, + 0x0, 0x7f, 0xf3, 0x85, 0xbd, 0x40, 0x3f, 0xcb, + 0xcc, 0x20, 0x1f, 0xe2, 0x9a, 0x30, 0xf, 0xe5, + 0xe6, 0x10, 0xf, 0xfe, 0x8a, 0x4b, 0x8, 0x7, + 0xf2, 0x53, 0x88, 0x7, 0xe3, 0xa6, 0x20, 0xf, + 0xc2, 0xd2, 0xa0, 0x1f, 0xfd, 0x43, 0xb6, 0x20, + 0xf, 0xe3, 0xa6, 0x20, 0xf, 0x25, 0x30, 0x80, + 0x7e, 0x26, 0xb3, 0x0, 0xff, 0xeb, 0x14, 0xd9, + 0x80, 0x7f, 0x1d, 0x50, 0xc0, 0x32, 0xf3, 0x8, + 0x7, 0xe3, 0xb9, 0x20, 0xf, 0xfe, 0xc0, 0xbc, + 0xa0, 0x7, 0xf1, 0x35, 0x18, 0xa, 0xf2, 0x80, + 0x7f, 0x24, 0xb8, 0x80, 0x7f, 0xf6, 0x85, 0x7d, + 0x84, 0x3, 0xf0, 0xbc, 0xb3, 0x25, 0x0, 0x3f, + 0xb, 0x7a, 0x88, 0x7, 0xff, 0x75, 0x29, 0xc4, + 0x3, 0xf0, 0xac, 0xc1, 0x80, 0x7e, 0x26, 0xa4, + 0x0, 0xff, 0xf0, 0x1d, 0xc9, 0x0, 0x7f, 0xf1, + 0xce, 0xa8, 0x60, 0x1f, 0xfe, 0x22, 0x6b, 0x30, + 0xf, 0xfe, 0x2a, 0x53, 0x10, 0x7, 0xff, 0x90, + 0x5a, 0x54, 0x3, 0xff, 0x86, 0xbc, 0xc2, 0x1, + 0xff, 0xe7, 0x5e, 0x61, 0x0, 0xff, 0x85, 0xb9, + 0x40, 0x3f, 0xf9, 0xc0, + + /* U+0057 "W" */ + 0x0, 0xb, 0xe7, 0xff, 0xfd, 0xae, 0x40, 0x1f, + 0xfd, 0x4, 0x9e, 0xff, 0xff, 0x74, 0x98, 0x7, + 0xff, 0x40, 0xe3, 0xbf, 0xff, 0xdb, 0x6, 0x1, + 0xb, 0x51, 0x80, 0x7f, 0x8a, 0xd4, 0x80, 0x3f, + 0xf9, 0xc9, 0xae, 0x20, 0x1f, 0xe1, 0x4b, 0x30, + 0xf, 0xfe, 0x71, 0xda, 0x88, 0x7, 0xf1, 0x2d, + 0x18, 0x6, 0x17, 0xa3, 0x0, 0xff, 0x1d, 0xa0, + 0x80, 0x7f, 0xf3, 0xf, 0x1c, 0x40, 0x3f, 0xf8, + 0x4, 0xb6, 0x40, 0x1f, 0xfc, 0xc2, 0x45, 0x20, + 0xf, 0xe2, 0x5a, 0x20, 0xf, 0xb, 0xd2, 0x0, + 0x7f, 0x8f, 0x5c, 0x40, 0x3f, 0xf9, 0x45, 0x6a, + 0x20, 0x1f, 0xfc, 0x22, 0x45, 0x20, 0xf, 0xfe, + 0x50, 0xad, 0x90, 0x7, 0xf1, 0x55, 0x8, 0x3, + 0xf0, 0xbe, 0xa0, 0x7, 0xf9, 0x35, 0x0, 0x3f, + 0xf9, 0x24, 0xaa, 0x20, 0xf, 0xfe, 0x21, 0xda, + 0x88, 0x7, 0xff, 0x20, 0x5e, 0xcc, 0x3, 0xf8, + 0xa9, 0x48, 0x3, 0xfc, 0x2f, 0xa8, 0x1, 0xfe, + 0x4f, 0x50, 0xf, 0xfe, 0x39, 0x2d, 0x90, 0x7, + 0xc4, 0x50, 0x7, 0xe3, 0xb7, 0x10, 0xf, 0xfe, + 0x30, 0xbe, 0x98, 0x7, 0xf1, 0xd2, 0x90, 0x7, + 0xff, 0x0, 0x5f, 0x50, 0x3, 0xfc, 0xbe, 0x80, + 0x1f, 0xfc, 0x51, 0x4b, 0x30, 0xf, 0x89, 0x66, + 0xd0, 0x3, 0xf1, 0xeb, 0x88, 0x7, 0xff, 0x15, + 0x35, 0x0, 0x3f, 0x8e, 0xd4, 0x80, 0x3f, 0xf8, + 0x42, 0xfc, 0x80, 0x1f, 0xe4, 0xd4, 0x0, 0xff, + 0xe1, 0x8b, 0xe9, 0x80, 0x7c, 0x4b, 0x68, 0xf8, + 0x60, 0x1f, 0x93, 0x10, 0x3, 0xff, 0x88, 0xbe, + 0x80, 0x1f, 0xc7, 0x6c, 0x40, 0x1f, 0xfc, 0x41, + 0x5e, 0x40, 0xf, 0xe1, 0x7d, 0x30, 0xf, 0xfe, + 0x12, 0x62, 0x0, 0x7c, 0x2b, 0x66, 0x2, 0xb6, + 0x60, 0x1f, 0x97, 0xd4, 0x3, 0xff, 0x84, 0x98, + 0x80, 0x1f, 0xc7, 0x6c, 0x20, 0x1f, 0xfc, 0x75, + 0xe5, 0x0, 0xfe, 0x14, 0xb3, 0x0, 0xff, 0xe0, + 0x2f, 0xa8, 0x7, 0xc2, 0xf6, 0x60, 0x11, 0x2d, + 0x90, 0x7, 0xe5, 0xc4, 0x0, 0xff, 0xe0, 0x1e, + 0xb8, 0x80, 0x7e, 0x3a, 0x61, 0x0, 0xff, 0xe4, + 0xaf, 0xa8, 0x7, 0xf1, 0x2d, 0x90, 0x7, 0xf9, + 0x3d, 0x40, 0x3e, 0x17, 0xd3, 0x0, 0xe2, 0x45, + 0x20, 0xf, 0xcf, 0xa8, 0x1, 0xfe, 0x3b, 0x71, + 0x0, 0xfc, 0x94, 0xe2, 0x1, 0xff, 0xcb, 0x5f, + 0x50, 0xf, 0xe2, 0x55, 0x10, 0x7, 0xe4, 0xd4, + 0x0, 0xf8, 0x5f, 0x50, 0x3, 0xe3, 0xb5, 0x10, + 0xf, 0x85, 0xf4, 0xc0, 0x3f, 0x15, 0xa8, 0x80, + 0x7e, 0x4d, 0x71, 0x0, 0xff, 0xe6, 0xaf, 0xa8, + 0x7, 0xf1, 0x5a, 0x90, 0x7, 0x8f, 0x1c, 0x40, + 0x3e, 0x4d, 0x40, 0xf, 0xe3, 0xb7, 0x10, 0xf, + 0x85, 0x2c, 0xc0, 0x3c, 0x4a, 0x84, 0x1, 0xf9, + 0x35, 0xc4, 0x3, 0xff, 0x9e, 0xbc, 0xa0, 0x1f, + 0xc7, 0x68, 0x20, 0x18, 0xed, 0x44, 0x3, 0xe5, + 0xf4, 0x0, 0xff, 0x8f, 0x5c, 0x40, 0x3e, 0x25, + 0x42, 0x0, 0xc2, 0x96, 0x60, 0x1f, 0x93, 0x5c, + 0x40, 0x3f, 0xfa, 0x29, 0xca, 0x20, 0x1f, 0x8f, + 0x5c, 0x40, 0x4, 0x8a, 0x40, 0x1f, 0x2f, 0xa8, + 0x7, 0xff, 0x5, 0x35, 0x0, 0x3f, 0x15, 0xa8, + 0x80, 0x5, 0xf4, 0xc0, 0x3f, 0x27, 0x38, 0x80, + 0x7f, 0xf4, 0xd3, 0x9c, 0x40, 0x3f, 0x26, 0xa0, + 0x12, 0xd9, 0x0, 0x7c, 0x9e, 0xa0, 0x1f, 0xfc, + 0x34, 0xf5, 0x0, 0xfc, 0x76, 0xe2, 0xf, 0xa8, + 0x1, 0xf9, 0x39, 0x44, 0x3, 0xff, 0xaa, 0x9a, + 0xe2, 0x1, 0xf9, 0x3d, 0xd6, 0xcc, 0x3, 0xe4, + 0xd4, 0x0, 0xff, 0xe2, 0xaf, 0xa8, 0x7, 0xe3, + 0xd7, 0x6c, 0x40, 0xf, 0xcb, 0xca, 0x1, 0xff, + 0xd8, 0x4d, 0x71, 0x0, 0xfc, 0xb1, 0x3, 0x0, + 0xf9, 0x35, 0xc4, 0x3, 0xff, 0x8c, 0xbe, 0x80, + 0x1f, 0x92, 0x20, 0xa0, 0x1f, 0x97, 0xd4, 0x3, + 0xff, 0xb4, 0x9a, 0xe2, 0x1, 0xff, 0xc5, 0x3d, + 0x71, 0x0, 0xff, 0xe4, 0x26, 0xa0, 0x7, 0xe1, + 0x10, 0x7, 0xe5, 0xf5, 0x0, 0xff, 0xee, 0x26, + 0xb8, 0x80, 0x7f, 0xf0, 0xce, 0xdc, 0x40, 0x3f, + 0xf9, 0x22, 0xfa, 0x60, 0x1f, 0xfc, 0x45, 0xf5, + 0x0, 0xff, 0xef, 0x25, 0x38, 0x80, 0x7f, 0xf0, + 0x4e, 0xd4, 0x40, 0x3f, 0xf9, 0x62, 0xf6, 0x60, + 0x1f, 0xfc, 0x25, 0xe5, 0x0, 0xff, 0xf0, 0x1d, + 0x38, 0x80, 0x7f, 0xc5, 0x6a, 0x40, 0x1f, 0xfc, + 0xd1, 0x5b, 0x30, 0xf, 0xf8, 0x57, 0x90, 0x3, + 0xff, 0x94, + + /* U+0058 "X" */ + 0x0, 0xb, 0x5f, 0x7f, 0xff, 0xdd, 0x48, 0x20, + 0x1f, 0xfc, 0xd2, 0x6c, 0xff, 0xff, 0xe0, 0x75, + 0x28, 0x80, 0x78, 0x5a, 0xad, 0x4, 0x3, 0xf8, + 0x56, 0xa8, 0xa2, 0x1, 0xff, 0xc9, 0x27, 0xe9, + 0x30, 0xf, 0xf0, 0xb5, 0x5a, 0x88, 0x7, 0xe1, + 0x5a, 0xb5, 0x10, 0xf, 0xe1, 0x4a, 0xa3, 0x8, + 0x7, 0xff, 0x14, 0xe3, 0xe0, 0xc0, 0x3f, 0xc4, + 0xfb, 0x28, 0x20, 0x1f, 0xfc, 0x1, 0x5a, 0xa3, + 0x8, 0x7, 0xf9, 0x27, 0x5c, 0x80, 0x3f, 0xf8, + 0x27, 0x3c, 0xe4, 0x1, 0xfe, 0x27, 0xe8, 0x30, + 0xf, 0xfe, 0x32, 0x4e, 0xb1, 0x0, 0x7f, 0x8e, + 0x39, 0xc8, 0x3, 0xf0, 0xa4, 0xeb, 0x10, 0x7, + 0xf8, 0xe3, 0xe0, 0xc0, 0x3f, 0xf9, 0x47, 0x3c, + 0xe4, 0x1, 0xfe, 0x38, 0xf8, 0x30, 0xc, 0x2b, + 0x74, 0xc2, 0x1, 0xfe, 0x49, 0xe7, 0x20, 0xf, + 0xfe, 0x71, 0xc7, 0x41, 0x80, 0x7f, 0x89, 0xfa, + 0x50, 0x96, 0xad, 0x44, 0x3, 0xf8, 0x52, 0x69, + 0x88, 0x3, 0xff, 0xa4, 0x6f, 0xd0, 0x60, 0x1f, + 0xe2, 0x6b, 0xda, 0x41, 0x0, 0xfe, 0x15, 0xba, + 0x61, 0x0, 0xff, 0xeb, 0x13, 0xf4, 0xa0, 0x7, + 0xff, 0x28, 0x5a, 0xad, 0x44, 0x3, 0xff, 0xb4, + 0x4d, 0x52, 0x82, 0x1, 0xff, 0xc5, 0x26, 0xd9, + 0x41, 0x0, 0xff, 0xef, 0xb, 0x54, 0x20, 0x7, + 0xff, 0xd, 0x62, 0x4c, 0x3, 0xff, 0xc4, 0x4f, + 0xa8, 0x1, 0xff, 0xc3, 0x58, 0x81, 0x80, 0x7f, + 0xf8, 0x9, 0xfa, 0x50, 0x3, 0xff, 0x8a, 0x4f, + 0xd0, 0x60, 0x1f, 0xfd, 0xc3, 0x8e, 0x83, 0x0, + 0xff, 0xe4, 0x93, 0xec, 0xa0, 0x7, 0xff, 0x60, + 0xe3, 0x9c, 0xc0, 0x3f, 0xc4, 0xd0, 0xa2, 0x1, + 0xfe, 0x16, 0xaa, 0x28, 0x80, 0x7f, 0xf4, 0xd2, + 0x79, 0xc8, 0x3, 0xfc, 0x71, 0xf2, 0xf5, 0xac, + 0x40, 0x1f, 0xe1, 0x5b, 0xb2, 0x88, 0x7, 0xff, + 0x38, 0x56, 0xa8, 0xc4, 0x1, 0xfe, 0x49, 0xe7, + 0x20, 0x8, 0xe7, 0x9c, 0x80, 0x3f, 0xc2, 0xb5, + 0x46, 0x20, 0xf, 0xfe, 0x50, 0xad, 0x5a, 0x88, + 0x7, 0xf0, 0xad, 0x51, 0x88, 0x3, 0xe3, 0x8f, + 0x83, 0x0, 0xff, 0x92, 0x79, 0xc8, 0x3, 0xff, + 0x8c, 0x4d, 0x54, 0x41, 0x0, 0xfe, 0x15, 0xab, + 0x51, 0x0, 0xff, 0x89, 0xf6, 0x50, 0x40, 0x3f, + 0xc7, 0x1c, 0xe6, 0x1, 0xff, 0xc2, 0x27, 0xe9, + 0x40, 0xf, 0xf1, 0x35, 0x51, 0x4, 0x3, 0xff, + 0x86, 0x2d, 0x56, 0xa2, 0x1, 0xfe, 0x38, 0xe8, + 0x30, 0xf, 0xf1, 0xc7, 0x41, 0x80, 0x7f, 0x89, + 0xfa, 0x50, 0x3, 0xff, 0x90, 0x2b, 0x54, 0x61, + 0x0, 0xff, 0x13, 0xf4, 0xa0, 0x7, 0x8e, 0x39, + 0xcc, 0x3, 0xfc, 0x71, 0xf0, 0x60, 0x1f, 0xfc, + 0xd4, 0x9d, 0x72, 0x0, 0xff, 0x13, 0x55, 0x10, + 0x40, 0x0, + + /* U+0059 "Y" */ + 0x0, 0xb, 0x67, 0xff, 0xfb, 0xa5, 0x0, 0x3f, + 0xfa, 0x85, 0x1b, 0xff, 0xfe, 0xc7, 0x20, 0xe, + 0x16, 0xf7, 0x20, 0xf, 0xc2, 0xd3, 0x6, 0x1, + 0xff, 0xd0, 0x26, 0x97, 0x20, 0xf, 0xc2, 0xd0, + 0xe4, 0x1, 0xf1, 0xc4, 0xa8, 0x80, 0x7e, 0x27, + 0xf7, 0x20, 0xf, 0xfe, 0x60, 0xac, 0x41, 0x0, + 0x3f, 0x92, 0x20, 0x80, 0x1f, 0xf2, 0x5c, 0x18, + 0x7, 0xf1, 0xc4, 0xb0, 0x80, 0x7f, 0xf2, 0x52, + 0x2d, 0x44, 0x3, 0xf1, 0x3c, 0xb0, 0x80, 0x7f, + 0xf0, 0x45, 0xbd, 0xc8, 0x3, 0xf9, 0x22, 0xd0, + 0x3, 0xff, 0x8c, 0x4f, 0x2c, 0x20, 0x1f, 0x85, + 0xa6, 0x8, 0x3, 0xff, 0x8a, 0x71, 0x2a, 0x20, + 0x1f, 0x85, 0x66, 0x46, 0x1, 0xff, 0xc2, 0x16, + 0x98, 0x20, 0xf, 0xe4, 0x88, 0x20, 0x7, 0xff, + 0x25, 0x2e, 0x10, 0x3, 0xf8, 0x9b, 0x9c, 0x80, + 0x3f, 0xc2, 0xb7, 0x8, 0x1, 0xfc, 0x4f, 0xc, + 0x20, 0x1f, 0xfc, 0xb1, 0x69, 0x72, 0x0, 0xfe, + 0x28, 0xe6, 0x10, 0xf, 0x8e, 0x20, 0xa2, 0x1, + 0xf8, 0x56, 0x60, 0xc0, 0x3f, 0xf9, 0xe5, 0x12, + 0xc2, 0x1, 0xfc, 0x71, 0x6a, 0x20, 0x11, 0x3f, + 0xb1, 0x0, 0x7f, 0x1c, 0x5a, 0x0, 0x7f, 0xf4, + 0xd2, 0x20, 0x80, 0x1f, 0xc2, 0xb7, 0x8, 0x4d, + 0x30, 0x60, 0x1f, 0xc4, 0xfe, 0xc2, 0x1, 0xff, + 0xd5, 0x16, 0x97, 0x20, 0xf, 0xe1, 0x6a, 0xc9, + 0x40, 0xf, 0xe1, 0x59, 0x83, 0x0, 0xff, 0xec, + 0x94, 0x4b, 0x8, 0x7, 0xf0, 0x88, 0x3, 0xfc, + 0x71, 0x4, 0x0, 0xff, 0xee, 0xa4, 0x41, 0x0, + 0x3f, 0xf8, 0xc4, 0xfe, 0xc4, 0x1, 0xff, 0xdf, + 0x16, 0x97, 0x20, 0xf, 0xfe, 0x10, 0xac, 0x49, + 0x80, 0x7f, 0xf8, 0xca, 0x25, 0x84, 0x3, 0xfe, + 0x39, 0x85, 0x10, 0xf, 0xff, 0x32, 0x62, 0x80, + 0x7f, 0xca, 0x64, 0x1, 0xff, 0xff, 0x0, 0xff, + 0xff, 0x80, 0x7f, 0xff, 0xc0, 0x3f, 0xff, 0xe0, + 0x1f, 0xff, 0xf0, 0xf, 0xff, 0xa8, + + /* U+005A "Z" */ + 0x0, 0x89, 0xf3, 0xff, 0xff, 0xd3, 0x8c, 0x20, + 0x1e, 0x10, 0xf, 0xff, 0xf8, 0x7, 0xff, 0x90, + 0xc9, 0x13, 0xff, 0xb2, 0x40, 0x1f, 0xfc, 0x22, + 0x59, 0x71, 0x0, 0xc2, 0xb3, 0x77, 0xff, 0xd5, + 0x9d, 0x3, 0x0, 0xff, 0xe0, 0x1c, 0x7d, 0x28, + 0x80, 0x7f, 0xf6, 0x85, 0x27, 0xe5, 0x4, 0x3, + 0xf8, 0x9a, 0xf5, 0xc8, 0x3, 0xff, 0xb6, 0x4f, + 0xb6, 0xc4, 0x1, 0xfc, 0x29, 0x3f, 0x28, 0x20, + 0x1f, 0xfd, 0xa1, 0x5a, 0xc8, 0x30, 0xf, 0xf1, + 0x3e, 0xdb, 0x10, 0x7, 0xff, 0x6c, 0xe3, 0x69, + 0x44, 0x3, 0xf8, 0x56, 0xb2, 0xc, 0x3, 0xff, + 0xb6, 0x2d, 0x7a, 0xe6, 0x1, 0xfe, 0x38, 0xda, + 0x51, 0x0, 0xff, 0xed, 0xa4, 0xe4, 0xa0, 0x80, + 0x7f, 0x13, 0x5e, 0xb9, 0x80, 0x7f, 0xf6, 0xc9, + 0xae, 0x98, 0x80, 0x3f, 0x85, 0x27, 0xe5, 0x4, + 0x3, 0xff, 0xb4, 0x29, 0x3f, 0x28, 0x20, 0x1f, + 0xc4, 0xd5, 0x46, 0x20, 0xf, 0xfe, 0xd9, 0xbe, + 0xdb, 0x10, 0x7, 0xf0, 0xa5, 0x7c, 0xa0, 0x80, + 0x7f, 0xf6, 0x85, 0x6b, 0x60, 0xc0, 0x3f, 0xc6, + 0xfb, 0x6a, 0x40, 0x1f, 0xfd, 0xb3, 0x8c, 0xa5, + 0x10, 0xf, 0xe1, 0x5a, 0xd8, 0x30, 0xf, 0xfe, + 0xd9, 0x35, 0xeb, 0x90, 0x7, 0xf8, 0xe3, 0x29, + 0x44, 0x3, 0xff, 0xb4, 0x29, 0x3f, 0x28, 0x20, + 0x1f, 0xc4, 0xd7, 0xae, 0x40, 0x1f, 0xfd, 0xb2, + 0x7a, 0xb6, 0x20, 0xf, 0xf8, 0x44, 0x5f, 0x57, + 0x7f, 0xfd, 0x6a, 0x62, 0x0, 0x8e, 0xa5, 0x0, + 0x3f, 0xf8, 0x42, 0x68, 0x9f, 0xfd, 0xaf, 0x60, + 0xf, 0xff, 0xf8, 0x7, 0xff, 0xa0, + + /* U+005B "[" */ + 0x28, 0xdf, 0xff, 0xfe, 0x46, 0xc1, 0x0, 0x7f, + 0xfd, 0x85, 0x62, 0xef, 0xfb, 0xa8, 0x80, 0x3f, + 0xf8, 0x26, 0x89, 0xfe, 0x32, 0x0, 0xff, 0xff, + 0x80, 0x7f, 0xff, 0xc0, 0x3f, 0xff, 0xe0, 0x1f, + 0xff, 0xf0, 0xf, 0xff, 0xf8, 0x7, 0xff, 0xfc, + 0x3, 0xff, 0xfe, 0x2, 0xd9, 0xff, 0xfd, 0xb0, + 0x40, 0x1f, 0xfe, 0xb2, 0xae, 0xbb, 0xff, 0xe4, + 0x75, 0x10, 0x0, + + /* U+005C "\\" */ + 0x0, 0x1a, 0xbc, 0x47, 0xcc, 0x62, 0x1, 0xff, + 0xd4, 0x12, 0xb7, 0x7f, 0xa6, 0x1c, 0x40, 0x3f, + 0xfa, 0x64, 0xb6, 0x60, 0x1f, 0x26, 0xb8, 0x80, + 0x7f, 0xf4, 0xc9, 0xac, 0xc0, 0x3e, 0x4d, 0x71, + 0x0, 0xff, 0xe9, 0x8b, 0x51, 0x80, 0x7c, 0x94, + 0xe2, 0x1, 0xff, 0xd3, 0x17, 0xa4, 0x0, 0xf8, + 0xe9, 0xc4, 0x3, 0xff, 0xa6, 0x2f, 0xa8, 0x1, + 0xf1, 0xd3, 0x8, 0x7, 0xff, 0x4c, 0x5f, 0x50, + 0x3, 0xe3, 0xb6, 0x20, 0xf, 0xfe, 0x98, 0xbe, + 0xa0, 0x7, 0xc7, 0x4a, 0x40, 0x1f, 0xfd, 0x31, + 0x7e, 0x40, 0xf, 0x8a, 0x94, 0x80, 0x3f, 0xfa, + 0x62, 0xbc, 0x80, 0x1f, 0x15, 0x50, 0x80, 0x3f, + 0xfa, 0x8b, 0xca, 0x1, 0xf1, 0x2d, 0x10, 0x7, + 0xff, 0x51, 0x7d, 0x40, 0x3e, 0x25, 0xa3, 0x0, + 0xff, 0xea, 0x2f, 0xa8, 0x7, 0xc4, 0xb6, 0x60, + 0x1f, 0xfd, 0x45, 0xf5, 0x0, 0xf8, 0x9a, 0xcc, + 0x3, 0xff, 0xa8, 0xbc, 0xa0, 0x1f, 0xb, 0x59, + 0x80, 0x7f, 0xf5, 0x13, 0x94, 0x40, 0x3c, 0x2d, + 0x46, 0x1, 0xff, 0xd4, 0x4e, 0x71, 0x0, 0xf0, + 0xbd, 0x20, 0x7, 0xff, 0x51, 0x35, 0xc4, 0x3, + 0xc2, 0xfa, 0x80, 0x1f, 0xfd, 0x44, 0xd7, 0x10, + 0xf, 0xb, 0xea, 0x0, 0x7f, 0xf5, 0x12, 0x9c, + 0x40, 0x3c, 0x2f, 0xa8, 0x1, 0xff, 0xd4, 0x3a, + 0x71, 0x0, 0xf0, 0xb7, 0x20, 0x7, 0xff, 0x50, + 0xe9, 0x84, 0x3, 0xe5, 0xe4, 0x0, 0xff, 0xea, + 0x1d, 0xb0, 0x80, 0x7c, 0xbc, 0xa0, 0x1f, 0xfd, + 0x43, 0xb6, 0x20, 0xf, 0x97, 0xd4, 0x3, 0xff, + 0xa8, 0x76, 0xa4, 0x1, 0xf2, 0xf2, 0x80, 0x7f, + 0xf5, 0xe, 0x94, 0x80, 0x3e, 0x4e, 0x51, 0x0, + 0xff, 0xe9, 0x95, 0x29, 0x0, 0x7c, 0x9c, 0xe2, + 0x1, 0xff, 0xd3, 0x2a, 0xa1, 0x0, 0x7c, 0x9a, + 0xe2, 0x1, 0xff, 0xd3, 0x25, 0xa2, 0x0, 0xf9, + 0x35, 0xc4, + + /* U+005D "]" */ + 0x16, 0xcf, 0xff, 0xfe, 0x47, 0x4a, 0x0, 0x7f, + 0xfa, 0xc5, 0xfe, 0xef, 0xfa, 0x54, 0x80, 0x3f, + 0xf8, 0x22, 0x68, 0x9f, 0xed, 0x0, 0xff, 0xff, + 0x80, 0x7f, 0xff, 0xc0, 0x3f, 0xff, 0xe0, 0x1f, + 0xff, 0xf0, 0xf, 0xff, 0xf8, 0x7, 0xff, 0xfc, + 0x3, 0xff, 0xfe, 0x2, 0xd9, 0xff, 0xfd, 0xb0, + 0x40, 0x1f, 0xff, 0x61, 0x7f, 0xbb, 0xff, 0xe4, + 0x55, 0xa8, 0x0, + + /* U+005E "^" */ + 0x0, 0xff, 0xe3, 0x8a, 0x3c, 0x47, 0xe7, 0x52, + 0x0, 0xff, 0xec, 0x1c, 0x54, 0x3b, 0xfe, 0x8a, + 0x95, 0x10, 0xf, 0xfe, 0xa0, 0xac, 0x30, 0x80, + 0x7f, 0xc9, 0x12, 0x60, 0x1f, 0xfd, 0x23, 0x98, + 0x40, 0xe, 0x26, 0x74, 0x0, 0xe2, 0x69, 0x50, + 0xf, 0xfe, 0x82, 0xcb, 0x10, 0x7, 0x24, 0x45, + 0xec, 0x20, 0x18, 0x56, 0x5c, 0x80, 0x3f, 0xf9, + 0x84, 0xf2, 0xa2, 0x1, 0x85, 0xbd, 0x44, 0x12, + 0xe4, 0xc0, 0x38, 0xe6, 0xd0, 0x3, 0xff, 0x94, + 0x97, 0x26, 0x1, 0xc7, 0x36, 0x80, 0x18, 0x9e, + 0x54, 0x3, 0x85, 0xbd, 0x84, 0x3, 0xff, 0x8c, + 0x2d, 0xec, 0x20, 0x1c, 0xb2, 0xe4, 0x1, 0xf2, + 0xcb, 0x90, 0x7, 0x24, 0x40, 0xc0, 0x3f, 0xf8, + 0x87, 0x36, 0x80, 0x1c, 0x4f, 0x2a, 0x1, 0xfe, + 0x39, 0xb3, 0x0, 0xe1, 0x68, 0x51, 0x0, 0xff, + 0xe0, 0xa, 0xc3, 0x90, 0x7, 0x1d, 0xc9, 0x80, + 0x7f, 0xf0, 0x5, 0xa1, 0x84, 0x3, 0x92, 0x24, + 0x80, 0x3f, 0xc5, 0x30, 0x80, 0x1c, 0x2b, 0xc, + 0x20, 0x1f, 0xfc, 0x34, 0xb6, 0x20, 0xe, 0x27, + 0x85, 0x0, 0xfc, 0x90, 0xc4, 0x1, 0xc4, 0xd0, + 0x80, 0x1f, 0xfc, 0x62, 0x9b, 0x40, 0xf, 0x2c, + 0xb9, 0x0, 0x61, 0x78, 0x51, 0x0, 0xe4, 0xb9, + 0x20, 0xf, 0xfe, 0x40, 0xb4, 0x30, 0x80, 0x71, + 0xcd, 0xa0, 0x0, + + /* U+005F "_" */ + 0x0, 0x12, 0xbb, 0xff, 0xfa, 0x19, 0x4, 0x2, + 0x7f, 0x88, 0xff, 0xf4, 0xe9, 0x0, 0x7f, 0xfc, + 0x40, + + /* U+0060 "`" */ + 0x0, 0xf8, 0x4d, 0x5e, 0x73, 0x14, 0xa2, 0x1, + 0xff, 0xc0, 0x37, 0xac, 0xee, 0x65, 0x43, 0x19, + 0x96, 0xa8, 0xc4, 0x1, 0xfe, 0x36, 0xe5, 0x20, + 0xf, 0xe4, 0x9e, 0x72, 0x0, 0xfe, 0x14, 0x9c, + 0xd9, 0x52, 0x0, 0xf8, 0xe3, 0x9c, 0x80, 0x3f, + 0xe2, 0x6a, 0xcc, 0x42, 0x11, 0x46, 0x88, 0x6d, + 0x53, 0x0, 0x80, + + /* U+0061 "a" */ + 0x0, 0xff, 0xe1, 0x11, 0xab, 0xc5, 0x5e, 0x6f, + 0x75, 0xff, 0xee, 0xe6, 0xe5, 0xd4, 0x32, 0x10, + 0x7, 0xff, 0x1c, 0x4d, 0xa2, 0xf7, 0xf7, 0x2a, + 0x1d, 0x50, 0xc8, 0x46, 0x0, 0xf0, 0x88, 0x8d, + 0x15, 0xe6, 0xf7, 0x54, 0xc6, 0x1, 0xff, 0xc2, + 0x38, 0xd9, 0x74, 0x20, 0xf, 0xfe, 0x89, 0x2c, + 0xed, 0xa8, 0x80, 0x7f, 0xc7, 0x10, 0x40, 0xf, + 0x84, 0x91, 0x5e, 0x26, 0x55, 0x49, 0x94, 0x3b, + 0x18, 0x80, 0x7f, 0xc2, 0x97, 0x8, 0x1, 0xff, + 0xb, 0x44, 0x11, 0xf, 0x59, 0xdc, 0xdb, 0xa8, + 0x76, 0x62, 0xa9, 0x98, 0xf1, 0x39, 0xdb, 0x6, + 0x1, 0xfe, 0x17, 0xd3, 0x0, 0xff, 0xe0, 0x1b, + 0xdd, 0xa1, 0x4c, 0x40, 0x3f, 0xf8, 0xa4, 0xfe, + 0xe4, 0x1, 0xfc, 0x24, 0xa0, 0x1f, 0xfd, 0xb3, + 0xd7, 0x0, 0xff, 0x38, 0x88, 0x3, 0xff, 0x80, + 0x26, 0xd1, 0x37, 0x9b, 0xdc, 0xff, 0xff, 0xe2, + 0xd2, 0x80, 0x7f, 0xf2, 0x45, 0x67, 0x7b, 0x25, + 0xd9, 0xc, 0x84, 0x40, 0x1f, 0xfd, 0xa2, 0x7c, + 0xa6, 0x20, 0xf, 0xf0, 0x91, 0x99, 0x13, 0xff, + 0x82, 0x62, 0x1, 0xff, 0xc6, 0x4b, 0x92, 0x0, + 0xfc, 0x4d, 0x5d, 0xfd, 0xb9, 0x8b, 0xbf, 0xfe, + 0xc, 0xa0, 0x7, 0xff, 0x14, 0x4d, 0x44, 0x3, + 0xf1, 0x2d, 0xa8, 0x80, 0x7f, 0xf1, 0x44, 0x98, + 0x3, 0xff, 0x8a, 0x22, 0x70, 0xf, 0xe2, 0x37, + 0x10, 0xf, 0xfe, 0x21, 0x35, 0x49, 0x80, 0x7f, + 0xf1, 0x94, 0xc8, 0x3, 0xf9, 0x2b, 0x29, 0xd5, + 0xc, 0xc4, 0x66, 0x45, 0x67, 0xac, 0xed, 0x94, + 0x10, 0xf, 0xfe, 0x39, 0xcc, 0x20, 0x80, 0x7f, + 0x12, 0xc5, 0x5e, 0x63, 0x73, 0x17, 0x53, 0xa, + 0x62, 0x1, 0xff, 0xcc, 0x15, 0xad, 0x73, 0x10, + 0xf, 0xfe, 0x50, 0x9b, 0x5c, 0xa8, 0x7, 0xff, + 0x24, 0x4e, 0x33, 0xf2, 0x5d, 0x90, 0xc8, 0x44, + 0x1, 0x84, 0x44, 0x68, 0xd1, 0x59, 0xf9, 0x28, + 0x40, 0x1f, 0xfc, 0x40, + + /* U+0062 "b" */ + 0x4, 0x9e, 0xff, 0xfe, 0xe9, 0x30, 0xf, 0xff, + 0xf8, 0x7, 0xff, 0xfc, 0x3, 0xff, 0xfe, 0x1, + 0xff, 0xff, 0x0, 0xff, 0xfa, 0x92, 0x3c, 0xd6, + 0x6f, 0x73, 0xff, 0xbb, 0x72, 0xea, 0x19, 0x8, + 0x3, 0xff, 0xaa, 0x6f, 0x7d, 0xb7, 0xc, 0xa6, + 0x42, 0x20, 0xe, 0x12, 0x34, 0x57, 0x9b, 0xde, + 0xb7, 0x30, 0xf, 0xfe, 0x71, 0x4d, 0xec, 0x20, + 0x80, 0x7f, 0xf2, 0xc5, 0x23, 0x36, 0x50, 0x40, + 0x3f, 0xf9, 0x22, 0x8a, 0x82, 0x1, 0x84, 0xd5, + 0x9e, 0x23, 0x3b, 0x29, 0x90, 0x7, 0xff, 0x0, + 0x9a, 0xad, 0x44, 0x3, 0xff, 0x98, 0x4b, 0x5b, + 0xd9, 0x53, 0xe, 0xfa, 0x26, 0xb3, 0x7a, 0xdc, + 0xc0, 0x3f, 0xc2, 0xb7, 0x8, 0x1, 0xff, 0xc9, + 0x49, 0xfa, 0x52, 0x0, 0xff, 0xe1, 0xa, 0x46, + 0xda, 0x88, 0x7, 0xf0, 0xb7, 0x20, 0x7, 0xff, + 0x18, 0x5a, 0x18, 0x80, 0x3f, 0xf9, 0x2, 0x91, + 0x26, 0x1, 0xfe, 0x4c, 0x30, 0xf, 0xfe, 0x2a, + 0x61, 0x80, 0x7f, 0xf3, 0x9, 0x10, 0x40, 0x1f, + 0xc2, 0x6c, 0x1, 0xff, 0xc4, 0x13, 0x10, 0xf, + 0xfe, 0x70, 0xf8, 0x80, 0x7f, 0xc6, 0x20, 0x1f, + 0xfc, 0x31, 0x31, 0x0, 0xff, 0xe7, 0xf, 0x10, + 0x7, 0xf8, 0x4c, 0x40, 0x3f, 0xf8, 0x89, 0x88, + 0x1, 0xff, 0xcc, 0x2b, 0x41, 0x0, 0xfe, 0x12, + 0x60, 0xf, 0xfe, 0x28, 0xb4, 0x39, 0x0, 0x7f, + 0xf2, 0x5, 0xa5, 0x88, 0x3, 0xfc, 0x98, 0x60, + 0x1f, 0xfc, 0x73, 0x8c, 0xb7, 0x31, 0x0, 0xff, + 0xe0, 0x92, 0xce, 0x4a, 0x8, 0x7, 0xf0, 0xb7, + 0x20, 0x7, 0xff, 0x28, 0x52, 0x33, 0xb9, 0x95, + 0x32, 0x88, 0x4c, 0xaa, 0xf7, 0xb6, 0x98, 0x80, + 0x3f, 0xe4, 0x88, 0x20, 0x7, 0xff, 0x18, 0x51, + 0x50, 0x40, 0x38, 0x4d, 0x59, 0x8e, 0xe6, 0x62, + 0xa1, 0x8, 0x7, 0xff, 0x0, 0x56, 0xa8, 0xc2, + 0x1, 0xff, 0xc8, 0x29, 0xbd, 0x84, 0x20, 0xf, + 0xfe, 0x58, 0xa3, 0xdf, 0xd2, 0x88, 0x7, 0xff, + 0x34, 0xde, 0xf7, 0x57, 0x2e, 0xa6, 0x42, 0x20, + 0xe, 0x11, 0x11, 0xab, 0x45, 0x6f, 0x5c, 0x20, + 0x80, 0x7f, 0xc0, + + /* U+0063 "c" */ + 0x0, 0xff, 0xe2, 0x9, 0xab, 0xcd, 0x66, 0xf7, + 0x3f, 0xfb, 0xb9, 0xba, 0xcb, 0x98, 0x64, 0x31, + 0x0, 0xff, 0xe5, 0x9b, 0x56, 0xf6, 0x54, 0x32, + 0x99, 0x8, 0x80, 0x38, 0x44, 0x44, 0x34, 0x67, + 0x9b, 0xce, 0xda, 0x73, 0x10, 0xf, 0xfe, 0x10, + 0xad, 0x6e, 0x4a, 0x90, 0x7, 0xff, 0x3c, 0x96, + 0x33, 0x12, 0xa2, 0x1, 0xfc, 0x4f, 0xb4, 0xa4, + 0x1, 0xff, 0xc0, 0x13, 0x45, 0x53, 0x31, 0x54, + 0x86, 0x20, 0x1f, 0xf1, 0x91, 0x40, 0x1f, 0xb, + 0x74, 0x18, 0x7, 0xf8, 0x52, 0x73, 0xb9, 0x97, + 0x54, 0x99, 0x55, 0x2f, 0x3b, 0xf6, 0xe1, 0x8, + 0x0, 0x2b, 0x39, 0x6e, 0x60, 0x1e, 0x26, 0xb3, + 0x0, 0xff, 0x1c, 0x65, 0xb1, 0x88, 0x7, 0xff, + 0x4, 0x91, 0xef, 0x32, 0xfa, 0x62, 0x0, 0xfc, + 0x29, 0x64, 0x1, 0xfc, 0x2d, 0xe, 0x40, 0x1f, + 0xfc, 0x91, 0x33, 0x8, 0x7, 0xfc, 0x5e, 0x40, + 0x1f, 0xe4, 0xc4, 0x0, 0xff, 0xed, 0x39, 0x88, + 0x7, 0xf0, 0x9b, 0x0, 0x7f, 0xf6, 0xdc, 0xc4, + 0x3, 0xf8, 0x4d, 0xc0, 0x3f, 0xfb, 0x65, 0xc4, + 0x1, 0xfe, 0x4c, 0x30, 0xf, 0xfe, 0xd0, 0xaa, + 0x10, 0x7, 0xf0, 0xbc, 0x30, 0x80, 0x7f, 0xf2, + 0x8d, 0xc, 0x40, 0x3f, 0xe2, 0xaa, 0x18, 0x7, + 0xf9, 0x27, 0x25, 0x48, 0x3, 0xff, 0x86, 0x4b, + 0x39, 0x8b, 0xcc, 0x53, 0x10, 0x7, 0xf1, 0x3f, + 0xc1, 0x80, 0x7f, 0x89, 0xab, 0x7b, 0x6e, 0xa6, + 0x51, 0x9, 0x95, 0x5e, 0x77, 0xed, 0x31, 0x80, + 0x44, 0xb3, 0xb8, 0xe4, 0x1, 0xf8, 0xdf, 0x69, + 0x44, 0x3, 0xfe, 0x12, 0x45, 0x66, 0x3b, 0x99, + 0x8a, 0x86, 0x20, 0x1f, 0xe2, 0x68, 0x62, 0x0, + 0xff, 0xa, 0xd7, 0xe4, 0x29, 0x0, 0x7f, 0xf3, + 0xc9, 0x67, 0x31, 0x28, 0x20, 0x1f, 0xfc, 0x21, + 0x37, 0xad, 0xec, 0x98, 0x64, 0x32, 0x11, 0x0, + 0x70, 0x88, 0x88, 0x68, 0xcf, 0x37, 0xbd, 0xb4, + 0xc6, 0x20, 0x1e, + + /* U+0064 "d" */ + 0x0, 0xff, 0xef, 0x8b, 0x5f, 0xff, 0xfb, 0x1c, + 0x40, 0x3f, 0xff, 0xe0, 0x1f, 0xff, 0xf0, 0xf, + 0xff, 0xf8, 0x7, 0xff, 0xfc, 0x3, 0xff, 0x88, + 0x26, 0xd1, 0x37, 0x9b, 0xdf, 0xfd, 0xdc, 0xdc, + 0xb9, 0x75, 0x31, 0x0, 0xff, 0xea, 0x13, 0x56, + 0xf6, 0x4b, 0xb2, 0x19, 0x8, 0x7, 0x8, 0x88, + 0xd1, 0xa2, 0xb3, 0xf2, 0x10, 0x40, 0x3f, 0xf9, + 0xa7, 0x19, 0xb2, 0xa4, 0x1, 0xff, 0xcb, 0x13, + 0x7b, 0xc8, 0xc7, 0x0, 0xff, 0xe4, 0x24, 0xf3, + 0x98, 0x7, 0xff, 0x4, 0x8d, 0x59, 0xdf, 0x32, + 0xa1, 0x8, 0x7, 0x13, 0x29, 0x80, 0x7f, 0xf1, + 0x89, 0xe5, 0x88, 0x3, 0xfc, 0x29, 0x19, 0xdb, + 0x95, 0x31, 0x1a, 0x6a, 0xf7, 0xb6, 0x98, 0x80, + 0x3f, 0xf9, 0x45, 0x54, 0x20, 0xf, 0xf1, 0x46, + 0xdb, 0x98, 0x80, 0x7f, 0xf0, 0x49, 0x67, 0x29, + 0x44, 0x3, 0xff, 0x8c, 0x28, 0x82, 0x0, 0xfe, + 0x15, 0x97, 0x30, 0xf, 0xfe, 0x40, 0xac, 0x49, + 0x80, 0x7f, 0xf1, 0x4b, 0x84, 0x3, 0xfc, 0x9e, + 0x80, 0x1f, 0xfc, 0xc2, 0x54, 0x20, 0xf, 0xfe, + 0x23, 0x89, 0x0, 0x7f, 0x9, 0xb0, 0x7, 0xff, + 0x38, 0xf8, 0x40, 0x3f, 0xf8, 0x8e, 0x2, 0x1, + 0xfc, 0x26, 0xe0, 0x1f, 0xfc, 0xe3, 0x10, 0xf, + 0xfe, 0x29, 0x71, 0x0, 0x7f, 0x9f, 0xc, 0x3, + 0xff, 0x9a, 0xf8, 0x60, 0x1f, 0xfc, 0x41, 0x44, + 0x10, 0x7, 0xf1, 0x34, 0xa8, 0x80, 0x7f, 0xf2, + 0x4a, 0x25, 0x0, 0x3f, 0xf8, 0xc7, 0x54, 0x30, + 0xf, 0xe1, 0x5b, 0xd7, 0x30, 0xf, 0xfe, 0x20, + 0xad, 0x7b, 0x98, 0x7, 0xff, 0x20, 0x9f, 0xdc, + 0x80, 0x3f, 0x84, 0xe3, 0x3b, 0x26, 0x19, 0x51, + 0x32, 0xa9, 0xe2, 0xf7, 0xa9, 0x48, 0x3, 0xff, + 0x98, 0x71, 0xf0, 0x60, 0x1f, 0xf0, 0x9b, 0x3c, + 0xd5, 0xde, 0xaa, 0x43, 0xa1, 0x0, 0x61, 0x33, + 0x10, 0x7, 0xff, 0x28, 0x9f, 0x36, 0x98, 0x80, + 0x3f, 0xf9, 0x84, 0x91, 0xba, 0xa6, 0x0, 0xff, + 0xe6, 0x92, 0xce, 0xf6, 0x54, 0x32, 0x19, 0x8, + 0x80, 0x38, 0x44, 0x46, 0xaf, 0x17, 0xba, 0xb7, + 0x30, 0xf, 0xfe, 0x28, + + /* U+0065 "e" */ + 0x0, 0xff, 0xe2, 0x9, 0xab, 0xcd, 0x5e, 0xeb, + 0xbf, 0xfd, 0xdc, 0xdc, 0xba, 0x87, 0x53, 0x10, + 0xf, 0xfe, 0x71, 0x35, 0x6f, 0x65, 0x43, 0x2a, + 0x11, 0x4, 0x3, 0xc2, 0x22, 0x34, 0x57, 0x8a, + 0xce, 0xd9, 0x52, 0x0, 0xff, 0xe3, 0xa, 0x4e, + 0xea, 0x54, 0x80, 0x3f, 0xf9, 0xe4, 0xd5, 0x96, + 0xc4, 0x1, 0xff, 0xc1, 0x26, 0xab, 0x62, 0x0, + 0xfe, 0x24, 0x78, 0xab, 0xcc, 0xeb, 0xa8, 0x63, + 0x10, 0xf, 0xc2, 0x93, 0xcc, 0x40, 0x1f, 0xc2, + 0xd3, 0x24, 0x0, 0xfe, 0x38, 0xcd, 0xb8, 0x75, + 0x43, 0x3e, 0x45, 0x79, 0xcf, 0xc7, 0x30, 0xf, + 0xc7, 0x16, 0x60, 0x1f, 0x13, 0x52, 0x0, 0x7f, + 0x24, 0xeb, 0x98, 0x7, 0xff, 0x10, 0x4e, 0x3d, + 0xc8, 0x3, 0xe1, 0x7b, 0x30, 0xe, 0x14, 0xb3, + 0x0, 0xfe, 0x5e, 0x61, 0x0, 0xff, 0xe4, 0x9e, + 0x20, 0x80, 0x7c, 0x28, 0x81, 0x0, 0xc5, 0xe4, + 0x1, 0xfe, 0x5a, 0xff, 0xff, 0xe6, 0x5b, 0x8, + 0x7, 0xe2, 0xf2, 0x0, 0xce, 0x62, 0x1, 0xff, + 0xe3, 0x11, 0x38, 0x6, 0x73, 0x10, 0xf, 0xf0, + 0x91, 0x9f, 0xff, 0x5d, 0x39, 0xc0, 0x31, 0x71, + 0x0, 0x7f, 0xc9, 0xf9, 0x9f, 0xfd, 0x6b, 0x73, + 0x0, 0xc2, 0xa8, 0x40, 0x1f, 0xc2, 0xf0, 0xa2, + 0x1, 0xff, 0xcb, 0x11, 0x0, 0x7f, 0xf0, 0xca, + 0xa8, 0x60, 0x1f, 0xc2, 0x95, 0x92, 0x82, 0x1, + 0xff, 0xc4, 0x14, 0x7b, 0xfe, 0xc8, 0x30, 0xf, + 0xfe, 0x9, 0x3f, 0x41, 0x80, 0x7f, 0x89, 0xaf, + 0xf6, 0xe5, 0xd9, 0x57, 0x99, 0xe2, 0xb3, 0xb9, + 0x70, 0x82, 0x6, 0xfb, 0x8e, 0x60, 0x1f, 0xfc, + 0x2, 0x7d, 0xa5, 0x10, 0xf, 0xf0, 0x92, 0x34, + 0x4d, 0x57, 0x4c, 0x3a, 0x98, 0x80, 0x7e, 0x10, + 0xf7, 0x10, 0xf, 0xfe, 0x8, 0xad, 0x7e, 0x4a, + 0x90, 0x7, 0xff, 0x3c, 0x4d, 0xab, 0x72, 0x10, + 0x40, 0x3f, 0xf8, 0x82, 0x6d, 0x5b, 0xd9, 0x50, + 0xca, 0x64, 0x41, 0x0, 0xf0, 0x88, 0x88, 0x8a, + 0xd1, 0x57, 0xdc, 0xc9, 0x52, 0x0, 0xfe, + + /* U+0066 "f" */ + 0x0, 0xff, 0xe2, 0x89, 0xac, 0x4d, 0xe6, 0xf7, + 0xfe, 0xee, 0x6e, 0x54, 0x31, 0x88, 0x7, 0xff, + 0x4, 0x52, 0x33, 0xf2, 0x9d, 0x90, 0xc8, 0x40, + 0x30, 0x88, 0x8d, 0x5f, 0x54, 0x3, 0xff, 0x80, + 0x4d, 0xb6, 0xe6, 0x20, 0x1f, 0xfc, 0x52, 0x34, + 0x10, 0xf, 0xf2, 0x5c, 0x18, 0x7, 0xf8, 0x49, + 0x19, 0xb2, 0xa1, 0x92, 0x61, 0x0, 0x7f, 0x8f, + 0x10, 0x40, 0x3f, 0x8e, 0x33, 0x6e, 0x67, 0x55, + 0xe6, 0xca, 0x0, 0x7f, 0xce, 0x44, 0x0, 0xfe, + 0x24, 0x41, 0x0, 0x7f, 0xf2, 0xc4, 0x3, 0xff, + 0xa6, 0x71, 0xdf, 0xfa, 0x94, 0x3, 0xfc, 0x4f, + 0x9f, 0xff, 0xed, 0x72, 0x0, 0xff, 0xf0, 0x98, + 0x7, 0xff, 0x44, 0x40, 0x3c, 0x71, 0xbf, 0xfa, + 0x94, 0x3, 0xfc, 0x4f, 0x9f, 0xff, 0xec, 0x72, + 0x0, 0xff, 0xff, 0x80, 0x7f, 0xff, 0xc0, 0x3f, + 0xff, 0xe0, 0x1f, 0xff, 0xf0, 0xf, 0xff, 0xf8, + 0x7, 0xff, 0xfc, 0x3, 0xff, 0x90, + + /* U+0067 "g" */ + 0x0, 0xff, 0xe1, 0x9, 0xab, 0xcd, 0xe6, 0xeb, + 0xbf, 0xf7, 0x73, 0x72, 0xa1, 0x90, 0x40, 0x32, + 0x4f, 0x7f, 0xff, 0x74, 0x98, 0x7, 0xfc, 0x4b, + 0x3b, 0xd9, 0x50, 0xc8, 0x64, 0x41, 0x0, 0xc2, + 0x22, 0x35, 0x79, 0xbe, 0xd9, 0x52, 0x0, 0xff, + 0xe5, 0x93, 0x5e, 0x53, 0x10, 0x7, 0xff, 0x2c, + 0x9a, 0xbe, 0x10, 0x40, 0x3f, 0xf8, 0xc4, 0xfd, + 0x28, 0x20, 0x1f, 0xe1, 0x46, 0x89, 0xaa, 0x5d, + 0x52, 0x61, 0x90, 0x80, 0x31, 0x19, 0x0, 0x7f, + 0xf1, 0x92, 0xe4, 0xc0, 0x3f, 0x85, 0x27, 0x7a, + 0xe5, 0xd9, 0x54, 0x8a, 0xa6, 0x79, 0xbd, 0xd5, + 0x28, 0x80, 0x7f, 0xf2, 0x13, 0x98, 0x40, 0x3f, + 0xa, 0xd5, 0xb1, 0x0, 0x7f, 0xf0, 0xc9, 0x6b, + 0x5c, 0x80, 0x3f, 0xf8, 0xa4, 0x6e, 0x1, 0xfc, + 0x4d, 0x28, 0x1, 0xff, 0xc9, 0x3a, 0xa1, 0x0, + 0x7f, 0xf1, 0x1b, 0x8c, 0x3, 0xf9, 0xf4, 0xc0, + 0x3f, 0xf9, 0x64, 0x6e, 0x1, 0xff, 0xc4, 0x70, + 0xf, 0xff, 0x60, 0xf1, 0x0, 0x7f, 0x39, 0x10, + 0x3, 0xff, 0x96, 0x26, 0xc0, 0x1f, 0xfc, 0x42, + 0x35, 0x10, 0xf, 0xc5, 0x56, 0x60, 0x1f, 0xfc, + 0x93, 0x9a, 0x30, 0xf, 0xfe, 0x2a, 0x6b, 0x88, + 0x7, 0xe2, 0x6e, 0xa5, 0x20, 0xf, 0xfe, 0x18, + 0xa4, 0xf3, 0x90, 0x7, 0xff, 0x1d, 0x2e, 0xc, + 0x3, 0xf8, 0x96, 0xb7, 0x55, 0xc, 0xa8, 0x67, + 0x22, 0xb4, 0x56, 0x7d, 0xb1, 0x0, 0x7f, 0xf2, + 0x89, 0xb6, 0x90, 0x40, 0x3f, 0xc4, 0xaf, 0x35, + 0x79, 0x95, 0xd4, 0xba, 0x98, 0x80, 0x44, 0x50, + 0x7, 0xff, 0x24, 0x56, 0xf2, 0x98, 0xc0, 0x3f, + 0xf9, 0x64, 0xb5, 0xf2, 0x82, 0x1, 0xff, 0xcb, + 0x25, 0x9c, 0xec, 0x97, 0x54, 0x32, 0x10, 0xe, + 0x11, 0x11, 0xab, 0xc5, 0xee, 0xa9, 0x48, 0x0, + 0x20, 0x1f, 0xe1, 0x0, 0xff, 0xe2, 0x9, 0xb4, + 0x55, 0xe6, 0xf7, 0xff, 0x77, 0x37, 0x2a, 0x1d, + 0x8, 0x2, 0x12, 0x50, 0xf, 0xf1, 0x79, 0x0, + 0x7f, 0xf7, 0xe, 0x6c, 0xc0, 0x3f, 0x85, 0x50, + 0x40, 0x3f, 0xcb, 0x5b, 0xaa, 0x75, 0x21, 0x0, + 0xff, 0xe2, 0x89, 0xbd, 0xeb, 0x90, 0x7, 0xf1, + 0x35, 0x18, 0x7, 0xf1, 0xc4, 0x14, 0x88, 0xb1, + 0x5b, 0xdc, 0xdb, 0xa9, 0x88, 0x3b, 0xf4, 0x4d, + 0x66, 0xf6, 0x42, 0x8, 0x7, 0xf0, 0xb4, 0xc8, + 0xc0, 0x3f, 0xb, 0x43, 0x90, 0x7, 0xe1, 0x24, + 0x56, 0x77, 0x44, 0x73, 0xb2, 0x99, 0x0, 0x7f, + 0xf0, 0xe, 0x32, 0x50, 0x40, 0x3f, 0x85, 0xab, + 0x25, 0x8c, 0x40, 0x3f, 0xfa, 0x22, 0x8f, 0x7d, + 0x8e, 0x40, 0x1f, 0xfc, 0x21, 0x36, 0x9c, 0xee, + 0x6d, 0xcb, 0xb2, 0xa1, 0x10, 0x44, 0x1, 0xc2, + 0x22, 0x21, 0xa2, 0xbc, 0xd6, 0x77, 0x2e, 0x10, + 0x40, 0x3f, 0xc0, + + /* U+0068 "h" */ + 0x4, 0x9e, 0xff, 0xfe, 0xe9, 0x30, 0xf, 0xff, + 0xf8, 0x7, 0xff, 0xfc, 0x3, 0xff, 0xfe, 0x1, + 0xff, 0xff, 0x0, 0xff, 0xe8, 0x89, 0xab, 0xcd, + 0xe6, 0xeb, 0xbf, 0xfb, 0xb7, 0x2e, 0x5d, 0x48, + 0x3, 0xff, 0x9e, 0x29, 0x19, 0xf9, 0x50, 0xc8, + 0x64, 0x41, 0x0, 0xe1, 0x23, 0x46, 0x8a, 0xde, + 0xb6, 0x20, 0xf, 0xfe, 0x4a, 0xbe, 0xdb, 0x98, + 0x80, 0x7f, 0xf2, 0x85, 0x27, 0x25, 0x4, 0x3, + 0xff, 0x88, 0x2d, 0x30, 0x60, 0x1f, 0x84, 0x70, + 0x7, 0xff, 0x14, 0x5a, 0x64, 0x40, 0x1f, 0xfc, + 0x92, 0x59, 0xbd, 0xff, 0x77, 0x6f, 0xf7, 0x64, + 0xb1, 0x0, 0x7f, 0xf0, 0x9, 0x54, 0x40, 0x1f, + 0xfc, 0x52, 0x6b, 0xca, 0x64, 0x20, 0xf, 0xc2, + 0x6d, 0x39, 0x48, 0x1, 0xff, 0x16, 0xb8, 0x7, + 0xff, 0x11, 0x62, 0x8, 0x20, 0x1f, 0xfc, 0x41, + 0x5f, 0x61, 0x0, 0xff, 0x9, 0x88, 0x7, 0xff, + 0x9, 0x3d, 0x44, 0x3, 0xff, 0x90, 0xbc, 0x40, + 0x1f, 0xe7, 0x0, 0xff, 0xe1, 0x89, 0x8, 0x7, + 0xff, 0xa5, 0xc0, 0x3f, 0xff, 0xe0, 0x1f, 0xff, + 0xf0, 0xf, 0xff, 0xf8, 0x7, 0xff, 0xfc, 0x3, + 0xff, 0xfe, 0x1, 0xff, 0xdd, + + /* U+0069 "i" */ + 0x0, 0xf0, 0x92, 0xb3, 0xb9, 0x90, 0x80, 0x3f, + 0xc9, 0x39, 0xb5, 0x31, 0x9, 0xbd, 0xc8, 0x30, + 0xf, 0x2f, 0x31, 0x0, 0x7e, 0x36, 0xa4, 0x0, + 0xe1, 0x0, 0xff, 0xe1, 0x38, 0x7, 0x24, 0xc1, + 0x80, 0x7c, 0x29, 0x16, 0x60, 0x1e, 0x37, 0xce, + 0xcb, 0xaa, 0x5e, 0x7d, 0xb1, 0x0, 0x7f, 0x84, + 0xd1, 0x54, 0x86, 0x20, 0x1f, 0xc2, 0xd7, 0xff, + 0xfe, 0xc6, 0x10, 0xf, 0xff, 0xf8, 0x7, 0xff, + 0xfc, 0x3, 0xff, 0xfe, 0x1, 0xff, 0xff, 0x0, + 0xff, 0xed, 0x0, + + /* U+006A "j" */ + 0x0, 0xff, 0xe3, 0x9, 0x2b, 0x3b, 0x99, 0x8, + 0x3, 0xff, 0x94, 0x93, 0x9b, 0x53, 0x10, 0x9b, + 0xdc, 0x83, 0x0, 0xff, 0xe3, 0x2f, 0x31, 0x0, + 0x7e, 0x36, 0xa4, 0x0, 0xff, 0xe2, 0x88, 0x7, + 0xff, 0x9, 0xc0, 0x3f, 0xf8, 0xa9, 0x30, 0x60, + 0x1f, 0xa, 0x45, 0x98, 0x7, 0xff, 0x18, 0xdf, + 0x3b, 0x2e, 0xa9, 0x79, 0xf6, 0xc4, 0x1, 0xff, + 0xca, 0x13, 0x45, 0x52, 0x18, 0x80, 0x7f, 0xf2, + 0x45, 0xaf, 0xff, 0xfd, 0x8c, 0x20, 0x1f, 0xff, + 0xf0, 0xf, 0xff, 0xf8, 0x7, 0xff, 0xfc, 0x3, + 0xff, 0xfe, 0x1, 0xff, 0xff, 0x0, 0xff, 0xff, + 0x80, 0x7f, 0xff, 0xc0, 0x3f, 0xf9, 0x6, 0x2c, + 0x1, 0xfe, 0x70, 0xf, 0xfe, 0x31, 0x2d, 0x90, + 0x7, 0xf8, 0x4c, 0x40, 0x3c, 0x2b, 0x13, 0xe, + 0xe8, 0x9c, 0xc4, 0x18, 0x7, 0xf8, 0xf5, 0xc0, + 0x3c, 0x2f, 0xce, 0xcf, 0x10, 0x76, 0x31, 0x0, + 0xff, 0x92, 0x98, 0x80, 0x3c, 0xfa, 0x80, 0x1f, + 0xfc, 0x52, 0x5a, 0xa3, 0x8, 0x7, 0x84, 0xb1, + 0x90, 0xc8, 0x44, 0x1, 0xc2, 0x46, 0xaf, 0x59, + 0x8a, 0x51, 0x0, 0xf0, + + /* U+006B "k" */ + 0x4, 0x9e, 0xff, 0xfe, 0xe9, 0x30, 0xf, 0xff, + 0xf8, 0x7, 0xff, 0xfc, 0x3, 0xff, 0xfe, 0x1, + 0xff, 0xff, 0x0, 0xff, 0xee, 0xa, 0x46, 0x7f, + 0xff, 0xdb, 0x28, 0x20, 0x1f, 0xfd, 0x41, 0x48, + 0xdb, 0x73, 0x0, 0xfc, 0x4b, 0x59, 0x28, 0x20, + 0x1f, 0xfd, 0x11, 0x48, 0xdb, 0x73, 0x0, 0xfc, + 0x2b, 0x5f, 0x4a, 0x20, 0x1f, 0xfd, 0x11, 0x48, + 0xdb, 0x73, 0x0, 0xfc, 0x2b, 0x39, 0x4a, 0x40, + 0x1f, 0xfd, 0x11, 0x48, 0xdb, 0x73, 0x0, 0xfc, + 0x29, 0x39, 0x4c, 0x40, 0x1f, 0xfd, 0x11, 0x38, + 0xdb, 0x73, 0x0, 0xfc, 0x29, 0x19, 0x6c, 0x40, + 0x1f, 0xfd, 0x13, 0x48, 0xdc, 0x73, 0x0, 0xfe, + 0x15, 0xab, 0x72, 0x0, 0xff, 0xe9, 0x8a, 0xc3, + 0x98, 0x7, 0xff, 0x0, 0x53, 0xd4, 0x40, 0x3f, + 0xfc, 0xc2, 0x97, 0x65, 0x10, 0xf, 0xfe, 0xd1, + 0x14, 0x1, 0xfc, 0x2b, 0x76, 0x41, 0x0, 0xff, + 0xea, 0x93, 0x5e, 0x6f, 0x39, 0x0, 0x7f, 0xa, + 0xd5, 0xa0, 0x7, 0xff, 0x44, 0x96, 0xb2, 0x50, + 0x40, 0xe2, 0x58, 0x40, 0x3f, 0x85, 0x6a, 0x50, + 0x3, 0xff, 0x9a, 0x2d, 0x34, 0xa2, 0x1, 0xe4, + 0x9a, 0x51, 0x0, 0xfe, 0x16, 0x99, 0x18, 0x7, + 0xff, 0x35, 0xc0, 0x3f, 0xe4, 0xbb, 0x28, 0x80, + 0x7f, 0x13, 0x74, 0x18, 0x7, 0xff, 0x60, 0x56, + 0xe1, 0x0, 0x3f, 0xc4, 0xfd, 0x6, 0x1, 0xff, + 0xd8, 0x16, 0x99, 0x18, 0x7, 0xf8, 0x9f, 0xa0, + 0xc0, 0x3f, 0xfb, 0x4, 0xdd, 0x6, 0x1, 0xfe, + 0x27, 0xf7, 0x20, 0x0, + + /* U+006C "l" */ + 0x4, 0x9e, 0xff, 0xfe, 0xe9, 0x30, 0xf, 0xff, + 0xf8, 0x7, 0xff, 0xfc, 0x3, 0xff, 0xfe, 0x1, + 0xff, 0xff, 0x0, 0xff, 0xff, 0x80, 0x7f, 0xf2, + 0xc0, + + /* U+006D "m" */ + 0x16, 0xbf, 0xff, 0xf6, 0x30, 0x80, 0x61, 0x35, + 0x79, 0xbc, 0xdd, 0x77, 0xff, 0x76, 0xe5, 0xcb, + 0xa9, 0x88, 0x7, 0xff, 0x4, 0x4d, 0x5e, 0x6f, + 0x37, 0x5d, 0xff, 0xbb, 0x9b, 0x95, 0x2e, 0x84, + 0x1, 0xff, 0xce, 0x14, 0x8c, 0xfc, 0xa8, 0x64, + 0x32, 0x20, 0x80, 0x70, 0x91, 0xa3, 0x45, 0x67, + 0xd3, 0x10, 0x7, 0x85, 0x23, 0x3b, 0x2a, 0x19, + 0xc, 0x88, 0x20, 0x18, 0x44, 0x46, 0xad, 0x17, + 0xba, 0x95, 0x10, 0xf, 0xfe, 0x47, 0xce, 0xdb, + 0x98, 0x80, 0x7f, 0xf2, 0x85, 0x67, 0x25, 0x0, + 0x7, 0x19, 0x6e, 0x60, 0x1f, 0xfc, 0xb2, 0x6a, + 0xd7, 0x20, 0xf, 0xfe, 0x29, 0xb3, 0x98, 0x7, + 0x84, 0x8d, 0x10, 0x66, 0x21, 0x0, 0xff, 0xe1, + 0xb, 0x44, 0xcb, 0xdc, 0x80, 0x3c, 0x26, 0x64, + 0x41, 0x90, 0x80, 0x7f, 0xf0, 0xce, 0x25, 0x44, + 0x3, 0xff, 0x90, 0x6d, 0x5b, 0xfd, 0xb9, 0x76, + 0xcc, 0x6f, 0x72, 0xdc, 0xc0, 0x3f, 0xf8, 0x6, + 0xcc, 0x30, 0x0, 0x9b, 0xde, 0xff, 0x66, 0x2e, + 0xd9, 0xbd, 0xfb, 0x4c, 0x40, 0x1f, 0xfc, 0x4, + 0xe4, 0x0, 0xff, 0xe2, 0x8a, 0xd6, 0xca, 0x90, + 0x7, 0xf8, 0x52, 0x36, 0x50, 0x3, 0xff, 0x84, + 0x4d, 0xb9, 0x8, 0x40, 0x1f, 0xe2, 0x59, 0xf9, + 0x30, 0xf, 0xf9, 0xb4, 0xc0, 0x3f, 0xf8, 0x67, + 0x36, 0xa2, 0x1, 0xff, 0xc4, 0x16, 0xe4, 0x0, + 0xff, 0xe0, 0x25, 0xc1, 0x80, 0x7f, 0xf1, 0x49, + 0xa9, 0x0, 0x3f, 0xc6, 0x2e, 0x1, 0xff, 0xc2, + 0x24, 0x51, 0x0, 0xff, 0xe4, 0x31, 0x88, 0x7, + 0xf8, 0xf1, 0xc4, 0x3, 0xff, 0x90, 0x44, 0x10, + 0xf, 0xe1, 0x0, 0xff, 0xe2, 0xf, 0x18, 0x7, + 0xff, 0x2c, 0xc0, 0x3f, 0xce, 0x42, 0x1, 0xff, + 0xff, 0x0, 0xff, 0xff, 0x80, 0x7f, 0xff, 0xc0, + 0x3f, 0xff, 0xe0, 0x1f, 0xff, 0xf0, 0xf, 0xff, + 0xf8, 0x7, 0xff, 0xfc, 0x3, 0xff, 0xfe, 0x1, + 0xff, 0xff, 0x0, 0xff, 0xff, 0x80, 0x7c, + + /* U+006E "n" */ + 0x16, 0xbf, 0xff, 0xf6, 0x30, 0x80, 0x61, 0x25, + 0x78, 0xac, 0xdd, 0x77, 0x3f, 0xf7, 0x73, 0x6e, + 0xa1, 0x8c, 0x40, 0x3f, 0xf9, 0xc2, 0x6f, 0x7f, + 0xb5, 0xe, 0xa6, 0x44, 0x11, 0x0, 0x61, 0x11, + 0x22, 0xbc, 0xe7, 0x64, 0x20, 0x80, 0x7f, 0xf2, + 0x3a, 0x6b, 0x21, 0x4, 0x3, 0xff, 0x96, 0x6f, + 0x7a, 0xc4, 0x1, 0xff, 0xc5, 0x37, 0x72, 0x0, + 0x7c, 0x24, 0x67, 0x88, 0x40, 0x3f, 0xf8, 0x67, + 0x10, 0x50, 0xf, 0xfe, 0x49, 0x2c, 0xe7, 0x7f, + 0x6e, 0x66, 0xde, 0xe6, 0x4a, 0x90, 0x7, 0xfc, + 0x2b, 0xe8, 0x1, 0xff, 0xc5, 0x15, 0xac, 0xa6, + 0x31, 0x0, 0xfe, 0x13, 0x6a, 0xf8, 0x30, 0xf, + 0xf9, 0xcc, 0x80, 0x3f, 0xf8, 0x65, 0x30, 0xa2, + 0x1, 0xff, 0xc5, 0x26, 0xa3, 0x0, 0xff, 0x1f, + 0x88, 0x7, 0xff, 0x8, 0x95, 0x8, 0x3, 0xff, + 0x90, 0x24, 0xc0, 0x1f, 0xf0, 0x80, 0x7f, 0xf0, + 0xc7, 0x88, 0x3, 0xff, 0xfe, 0x1, 0xff, 0xff, + 0x0, 0xff, 0xff, 0x80, 0x7f, 0xff, 0xc0, 0x3f, + 0xff, 0xe0, 0x1f, 0xff, 0xf0, 0xf, 0xfe, 0x40, + + /* U+006F "o" */ + 0x0, 0xff, 0xe2, 0x92, 0x34, 0x4d, 0xe6, 0xf7, + 0x3f, 0xfe, 0xed, 0xcb, 0xa8, 0x75, 0x31, 0x0, + 0xff, 0xe8, 0x12, 0xce, 0x76, 0xdc, 0xbb, 0x21, + 0x90, 0x88, 0x3, 0xe1, 0x23, 0x45, 0x78, 0xac, + 0xed, 0xa6, 0x30, 0xf, 0xfe, 0x40, 0xa4, 0xee, + 0xa9, 0x8c, 0x40, 0x3f, 0xf9, 0xe4, 0xb3, 0x9d, + 0x4a, 0x20, 0x1f, 0xfc, 0x22, 0x6a, 0xa3, 0x10, + 0x7, 0xff, 0x0, 0x91, 0x59, 0xdf, 0x32, 0xa1, + 0x8, 0x7, 0xfc, 0x2b, 0x5a, 0xe6, 0x1, 0xfe, + 0x16, 0x99, 0x20, 0x80, 0x7f, 0x12, 0xce, 0x76, + 0xdd, 0x4c, 0x46, 0x9a, 0xbd, 0xed, 0xa6, 0x20, + 0xf, 0xf1, 0xc7, 0x39, 0x0, 0x7c, 0x4d, 0x68, + 0x1, 0xfe, 0x38, 0xfa, 0x63, 0x10, 0xf, 0xfe, + 0x9, 0x2c, 0xe5, 0x20, 0x80, 0x7f, 0x14, 0xda, + 0x0, 0x70, 0xa5, 0x90, 0x7, 0xf0, 0xb4, 0x39, + 0x0, 0x7f, 0xf2, 0x5, 0x66, 0x44, 0x1, 0xfc, + 0x29, 0x86, 0x1, 0x8b, 0xc8, 0x3, 0xfc, 0x98, + 0x80, 0x1f, 0xfc, 0xc2, 0x45, 0x10, 0xf, 0xe2, + 0x23, 0x0, 0x67, 0x31, 0x0, 0xfe, 0x13, 0x60, + 0xf, 0xfe, 0x70, 0xf9, 0x80, 0x7f, 0x84, 0xc0, + 0x33, 0x98, 0x80, 0x7f, 0x9, 0xb8, 0x7, 0xff, + 0x38, 0x7c, 0xc0, 0x3f, 0xc2, 0x60, 0x18, 0xbc, + 0x80, 0x3f, 0xc9, 0x86, 0x1, 0xff, 0xcc, 0x24, + 0x40, 0x80, 0x7f, 0x11, 0x1c, 0x3, 0xa, 0x59, + 0x80, 0x7f, 0xb, 0xc3, 0x8, 0x7, 0xff, 0x20, + 0x52, 0x24, 0xc0, 0x3f, 0x85, 0x30, 0x80, 0x38, + 0x9a, 0x90, 0x3, 0xfc, 0x93, 0x92, 0xa4, 0x1, + 0xff, 0xc2, 0x14, 0x8d, 0xa5, 0x10, 0xf, 0xe2, + 0x9b, 0x40, 0xf, 0x85, 0xa6, 0x48, 0x20, 0x1f, + 0xc4, 0xd5, 0xbd, 0x95, 0x30, 0xef, 0xa2, 0x6b, + 0x37, 0xad, 0xcc, 0x40, 0x3f, 0x8e, 0x39, 0xc8, + 0x3, 0xfc, 0x4d, 0x54, 0x62, 0x0, 0xff, 0x84, + 0xd5, 0x9e, 0x23, 0x3b, 0x29, 0x90, 0x7, 0xfc, + 0x2b, 0x5a, 0xe6, 0x1, 0xff, 0xc2, 0x14, 0x9d, + 0xd5, 0x31, 0x88, 0x7, 0xff, 0x3c, 0x96, 0x73, + 0xe9, 0x44, 0x3, 0xff, 0x90, 0x4b, 0x39, 0xdb, + 0x72, 0xec, 0x86, 0x42, 0x20, 0xf, 0x84, 0x8d, + 0x15, 0xe2, 0xb3, 0xb6, 0x98, 0xc4, 0x3, 0xfe, + + /* U+0070 "p" */ + 0x4, 0x9e, 0xff, 0xfe, 0xe9, 0x30, 0xc, 0x26, + 0xaf, 0x37, 0x9b, 0xdc, 0xff, 0xee, 0xdc, 0xba, + 0x86, 0x42, 0x0, 0xff, 0xea, 0xa, 0x46, 0x7e, + 0x54, 0x32, 0x19, 0x8, 0x80, 0x38, 0x48, 0xd1, + 0x5e, 0x6f, 0x7a, 0xdc, 0xc0, 0x3f, 0xf9, 0xcb, + 0x1b, 0x6e, 0x62, 0x1, 0xff, 0xcb, 0x14, 0x8c, + 0xd9, 0x41, 0x0, 0xff, 0xe4, 0x89, 0xa1, 0x80, + 0x61, 0x25, 0x68, 0x9a, 0xad, 0x30, 0xea, 0x62, + 0x1, 0xff, 0x13, 0x55, 0xa8, 0x80, 0x7f, 0xf3, + 0xd, 0xef, 0xf6, 0xa5, 0xd9, 0x57, 0x33, 0xc5, + 0x67, 0x6c, 0xa0, 0x80, 0x7f, 0xa, 0xdc, 0x20, + 0x7, 0xff, 0x20, 0x52, 0xb6, 0x10, 0x40, 0x3f, + 0xf8, 0x64, 0xd7, 0xac, 0x40, 0x1f, 0xc2, 0xdc, + 0x80, 0x1f, 0xfc, 0x61, 0x68, 0x51, 0x0, 0xff, + 0xe4, 0x9c, 0x59, 0x80, 0x7f, 0x93, 0xc, 0x3, + 0xff, 0x8a, 0x98, 0x60, 0x1f, 0xfc, 0xc1, 0x54, + 0x20, 0xf, 0xe1, 0x36, 0x0, 0xff, 0xe2, 0x9, + 0x80, 0x7f, 0xf3, 0xc7, 0xc4, 0x3, 0xfe, 0x31, + 0x0, 0xff, 0xe1, 0x89, 0x8, 0x7, 0xff, 0x38, + 0x78, 0x80, 0x3f, 0xc2, 0x62, 0x1, 0xff, 0xc4, + 0x5c, 0x40, 0xf, 0xfe, 0x61, 0x5a, 0x8, 0x7, + 0xf0, 0x93, 0x0, 0x7f, 0xf1, 0x45, 0xa1, 0xc8, + 0x3, 0xff, 0x90, 0x2d, 0x2e, 0x40, 0x1f, 0xe4, + 0xc3, 0x0, 0xff, 0xe3, 0x9c, 0x65, 0xb9, 0x88, + 0x7, 0xff, 0x4, 0x9a, 0xb2, 0x50, 0x3, 0xfc, + 0x2d, 0xc8, 0x1, 0xff, 0xca, 0x14, 0x8c, 0xee, + 0x65, 0xcc, 0xa2, 0x13, 0x2a, 0xbd, 0xed, 0x95, + 0x20, 0xf, 0xf9, 0x22, 0x8, 0x1, 0xff, 0xc6, + 0x14, 0x54, 0x10, 0xe, 0x13, 0x46, 0x63, 0xb9, + 0x98, 0xa8, 0x42, 0x1, 0xff, 0xc0, 0x15, 0xaa, + 0x30, 0x80, 0x7f, 0xf2, 0xa, 0x6f, 0x61, 0x8, + 0x3, 0xff, 0x96, 0x28, 0xf7, 0xf4, 0xa2, 0x1, + 0xff, 0xcd, 0x37, 0xbd, 0xd5, 0xcb, 0xa9, 0x90, + 0x88, 0x3, 0x84, 0x44, 0x6a, 0xd1, 0x5b, 0xd7, + 0x8, 0x20, 0x1f, 0xfd, 0x42, 0x46, 0x8a, 0xcd, + 0xee, 0x7f, 0xf7, 0x73, 0x72, 0xa5, 0xd4, 0x80, + 0x3f, 0xff, 0xe0, 0x1f, 0xff, 0xf0, 0xf, 0xff, + 0xf8, 0x7, 0xff, 0xfc, 0x3, 0xff, 0x88, + + /* U+0071 "q" */ + 0x0, 0xff, 0xe1, 0x89, 0xb4, 0x4d, 0xe6, 0xf7, + 0xff, 0x77, 0x37, 0x2e, 0x5d, 0x4c, 0x40, 0x30, + 0xb5, 0xff, 0xff, 0xb1, 0xc4, 0x3, 0xff, 0x80, + 0x4d, 0x5b, 0xd9, 0x2e, 0xc8, 0x64, 0x20, 0x1c, + 0x22, 0x23, 0x46, 0x8a, 0xcf, 0xc8, 0x41, 0x0, + 0xff, 0xe6, 0x9c, 0x66, 0xca, 0x90, 0x7, 0xff, + 0x2c, 0x4d, 0xef, 0x23, 0x1c, 0x3, 0xff, 0x90, + 0x93, 0xce, 0x60, 0x1f, 0xfc, 0x12, 0x35, 0x67, + 0x7c, 0xca, 0x86, 0x20, 0x1c, 0x4c, 0xa6, 0x1, + 0xff, 0xc6, 0x27, 0x96, 0x20, 0xf, 0xf0, 0xa4, + 0xe7, 0x6e, 0x54, 0xc4, 0x69, 0xab, 0xce, 0xda, + 0x63, 0x0, 0xff, 0xe5, 0x15, 0x50, 0x80, 0x3f, + 0xc7, 0x19, 0x6c, 0x62, 0x1, 0xff, 0xc1, 0x25, + 0x9d, 0xb5, 0x10, 0xf, 0xfe, 0x30, 0xa2, 0x8, + 0x3, 0xf8, 0x5a, 0x1c, 0x80, 0x3f, 0xf9, 0x2, + 0x97, 0x26, 0x1, 0xff, 0xc5, 0x2e, 0x10, 0xf, + 0xf2, 0x62, 0x0, 0x7f, 0xf3, 0x5, 0x6c, 0x80, + 0x3f, 0xf8, 0x8e, 0x24, 0x1, 0xfc, 0x26, 0xc0, + 0x1f, 0xfc, 0xe3, 0x11, 0x0, 0x7f, 0xf1, 0x1c, + 0x4, 0x3, 0xf8, 0x4d, 0x80, 0x3f, 0xf9, 0xc6, + 0x22, 0x0, 0xff, 0xe2, 0x17, 0x10, 0x7, 0xf9, + 0x31, 0x0, 0x3f, 0xf9, 0x82, 0x98, 0x40, 0x1f, + 0xfc, 0x41, 0x44, 0x10, 0x7, 0xf0, 0xb4, 0x31, + 0x0, 0x7f, 0xf2, 0x52, 0x2d, 0x0, 0x3f, 0xf8, + 0xc7, 0x54, 0x30, 0xf, 0xf1, 0xcf, 0xd2, 0x90, + 0x7, 0xff, 0x8, 0x52, 0x32, 0x98, 0x80, 0x3f, + 0xf9, 0x4, 0xfe, 0xe4, 0x1, 0xfe, 0x25, 0xad, + 0xec, 0xa9, 0x87, 0x7d, 0x10, 0xab, 0xde, 0xb7, + 0x31, 0x0, 0xff, 0xe6, 0x1c, 0x7c, 0x18, 0x7, + 0xff, 0x0, 0x4d, 0x59, 0xe2, 0x33, 0xb9, 0x50, + 0x80, 0x38, 0x95, 0x46, 0x1, 0xff, 0xca, 0x27, + 0xcd, 0xa6, 0x20, 0xf, 0xfe, 0x61, 0x35, 0x7d, + 0xe3, 0x80, 0x7f, 0xf3, 0x49, 0x67, 0x7b, 0x2a, + 0x19, 0xc, 0x84, 0x40, 0x1c, 0x24, 0x44, 0x57, + 0x9b, 0xed, 0x95, 0x20, 0xf, 0xfe, 0xa0, 0x9a, + 0xbc, 0xde, 0x6f, 0x73, 0xff, 0xbb, 0x75, 0x75, + 0xc, 0x82, 0x1, 0xff, 0xff, 0x0, 0xff, 0xff, + 0x80, 0x7f, 0xff, 0xc0, 0x3f, 0xff, 0xe0, 0x1f, + 0xfc, 0x90, + + /* U+0072 "r" */ + 0x16, 0xbf, 0xff, 0xf6, 0x30, 0x80, 0x71, 0x23, + 0x45, 0x66, 0xeb, 0xb6, 0xc, 0x3, 0xff, 0x8a, + 0x4d, 0x5b, 0xab, 0x97, 0x53, 0x22, 0x9, 0x8b, + 0x80, 0x7f, 0xf0, 0x85, 0xeb, 0x25, 0x48, 0x3, + 0xff, 0x9a, 0x71, 0x2a, 0x20, 0x1f, 0xf0, 0x98, + 0xb8, 0x7, 0xff, 0x20, 0x91, 0xe7, 0x37, 0xbf, + 0xdd, 0xb0, 0x60, 0x1f, 0xfc, 0x41, 0x48, 0xdd, + 0x5c, 0x31, 0x90, 0x80, 0x7f, 0xf2, 0x56, 0xe9, + 0xc8, 0x3, 0xff, 0x9c, 0x2d, 0xca, 0x20, 0x1f, + 0xfd, 0x2, 0xe5, 0x0, 0xff, 0xe9, 0x88, 0x7, + 0xff, 0xfc, 0x3, 0xff, 0xfe, 0x1, 0xff, 0xff, + 0x0, 0xff, 0xe6, 0x0, + + /* U+0073 "s" */ + 0x0, 0xff, 0x84, 0x95, 0xe6, 0xb3, 0x7b, 0x9f, + 0xfd, 0xdd, 0x6e, 0x5c, 0xc3, 0x29, 0x88, 0x7, + 0xff, 0x8, 0x52, 0x33, 0xf6, 0xa1, 0x94, 0xc8, + 0x44, 0x1, 0xc2, 0x31, 0x1a, 0x33, 0xcd, 0x67, + 0x73, 0x25, 0x8c, 0x3, 0xe2, 0x7d, 0xb7, 0x31, + 0x0, 0xff, 0xe7, 0x9, 0xa7, 0x0, 0x7c, 0x97, + 0x26, 0x1, 0xf8, 0x4d, 0xa6, 0xaf, 0x31, 0x76, + 0xa9, 0x87, 0x53, 0x20, 0xf, 0x24, 0x49, 0x80, + 0x70, 0x9a, 0x88, 0x7, 0xe3, 0x9e, 0x96, 0x54, + 0x33, 0x22, 0x15, 0x9e, 0x2b, 0x37, 0xf6, 0xe1, + 0xe6, 0x4a, 0x20, 0x1f, 0x8, 0x7, 0xf8, 0xed, + 0x4c, 0x3, 0xff, 0x86, 0x48, 0xf0, 0xc4, 0x1, + 0xf8, 0x55, 0x42, 0x1, 0xfc, 0x71, 0x9f, 0xb7, + 0x30, 0xc8, 0x62, 0x1, 0xff, 0xc9, 0x38, 0x82, + 0x8, 0x7, 0xfc, 0x48, 0xcf, 0x37, 0x9d, 0xfb, + 0x95, 0xc, 0x62, 0x1, 0xff, 0xc2, 0x16, 0xbc, + 0x95, 0x20, 0xf, 0xfe, 0x29, 0x1a, 0xbc, 0xe7, + 0x6d, 0x31, 0x0, 0x7f, 0xf0, 0x49, 0xab, 0x7b, + 0x6e, 0x5d, 0x4c, 0x80, 0x3f, 0xf8, 0x84, 0xb3, + 0x94, 0xa2, 0x1, 0xff, 0xc2, 0x12, 0x46, 0x8a, + 0xcd, 0xfe, 0xcb, 0x97, 0x53, 0x10, 0xf, 0xf0, + 0xad, 0xc9, 0x80, 0x7f, 0xf2, 0x84, 0xd1, 0xa2, + 0xb3, 0xed, 0x88, 0x3, 0xf8, 0x4d, 0x44, 0x3, + 0x24, 0xee, 0xa9, 0xd0, 0x80, 0x3f, 0xf8, 0x82, + 0x98, 0xe0, 0x1f, 0xfc, 0x32, 0x78, 0x62, 0x22, + 0xc5, 0xef, 0x6d, 0xcc, 0x32, 0xa1, 0x9c, 0x44, + 0x34, 0x57, 0xa8, 0x50, 0xf, 0xe1, 0x35, 0x10, + 0x25, 0xa3, 0x0, 0xf8, 0x49, 0x19, 0xe6, 0xaf, + 0x32, 0xdd, 0x65, 0xd4, 0x29, 0x0, 0x7e, 0x14, + 0x89, 0x30, 0x1, 0x3e, 0x62, 0x54, 0xc4, 0x3, + 0xff, 0x9e, 0x29, 0x1b, 0x6c, 0x20, 0x1c, 0x26, + 0xd5, 0x9d, 0xcc, 0xa8, 0x76, 0x43, 0x21, 0x18, + 0x3, 0x84, 0x44, 0x68, 0xcf, 0x37, 0xbd, 0x6e, + 0x60, 0x1c, + + /* U+0074 "t" */ + 0x0, 0xfe, 0x6b, 0xff, 0xff, 0x63, 0x8, 0x7, + 0xff, 0xfc, 0x3, 0xff, 0xfe, 0x1, 0xff, 0xca, + 0x27, 0xcf, 0xfe, 0x94, 0x0, 0xff, 0x1c, 0xf7, + 0xff, 0xff, 0x2, 0x94, 0x3, 0xff, 0xba, 0x62, + 0x1, 0xff, 0xd6, 0x10, 0x0, 0xb6, 0x7f, 0xf4, + 0xa0, 0x7, 0xf8, 0xe7, 0xbf, 0xff, 0xf8, 0x14, + 0x80, 0x1f, 0xff, 0xf0, 0xf, 0xff, 0xf8, 0x7, + 0xff, 0xfc, 0x3, 0xff, 0xa8, 0x20, 0x1f, 0xfc, + 0xd3, 0x10, 0xf, 0xf1, 0xea, 0x0, 0x7f, 0x11, + 0x4, 0x3, 0xff, 0x80, 0xc4, 0x40, 0xf, 0xf2, + 0xd7, 0x65, 0x55, 0x79, 0xbf, 0xb9, 0x6, 0x1, + 0xff, 0x1d, 0xa9, 0x0, 0x7f, 0xc2, 0x6a, 0xb2, + 0x19, 0x0, 0x5, 0xec, 0xc0, 0x3f, 0xe3, 0x8e, + 0x73, 0x0, 0xff, 0xe4, 0xa, 0x20, 0x80, 0x3f, + 0xf8, 0x7, 0x19, 0xb7, 0xc, 0x84, 0x20, 0x1e, + 0x12, 0x35, 0x68, 0xad, 0xd3, 0x90, + + /* U+0075 "u" */ + 0x0, 0x25, 0x7f, 0xff, 0xba, 0x4c, 0x3, 0xff, + 0x92, 0x4f, 0x9f, 0xff, 0xeb, 0x61, 0x0, 0xff, + 0xff, 0x80, 0x7f, 0xff, 0xc0, 0x3f, 0xff, 0xe0, + 0x1f, 0xff, 0xf0, 0xf, 0xff, 0xf8, 0x7, 0xff, + 0xf5, 0xc0, 0x3f, 0xf9, 0x23, 0xc4, 0x1, 0xff, + 0xc4, 0x30, 0xf, 0xf0, 0x91, 0x0, 0x3f, 0xf9, + 0x4, 0x88, 0x10, 0xf, 0xfe, 0x1b, 0x88, 0x80, + 0x3f, 0xc9, 0xac, 0x20, 0x1f, 0xfc, 0x41, 0x58, + 0x92, 0x0, 0xff, 0xe2, 0x1f, 0x28, 0x7, 0xfc, + 0x93, 0xb0, 0x82, 0x1, 0xfe, 0x25, 0x9c, 0xa5, + 0x10, 0xf, 0xfe, 0x33, 0xea, 0x0, 0x7f, 0xf0, + 0xd, 0xef, 0xb9, 0xb9, 0x8b, 0xb6, 0x6f, 0x7e, + 0xd3, 0x10, 0x7, 0xff, 0x24, 0x5a, 0x1c, 0x80, + 0x3f, 0xf8, 0x42, 0x46, 0x64, 0x41, 0x90, 0x80, + 0x70, 0xa3, 0xb1, 0x80, 0x7f, 0xf1, 0x8e, 0x3e, + 0x94, 0x80, 0x3f, 0xf9, 0x42, 0x91, 0xb5, 0x4e, + 0x0, 0xff, 0xe4, 0x92, 0xd6, 0xea, 0xa1, 0x90, + 0xc8, 0x40, 0x38, 0x44, 0x46, 0x8d, 0x15, 0x9f, + 0x6e, 0x62, 0x1, 0xff, 0xc4, + + /* U+0076 "v" */ + 0x0, 0x14, 0x6f, 0xff, 0xfb, 0x1c, 0x80, 0x3f, + 0xf9, 0x6b, 0x5f, 0xff, 0xed, 0x82, 0x0, 0x8a, + 0xa8, 0x60, 0x1f, 0xc7, 0x54, 0x20, 0xf, 0xfe, + 0x4a, 0xfa, 0x80, 0x7f, 0x1d, 0x50, 0x80, 0x31, + 0x35, 0x20, 0x7, 0xf1, 0x2d, 0x10, 0x7, 0xff, + 0x1d, 0x7d, 0x40, 0x3f, 0x92, 0x98, 0x80, 0x3c, + 0x2d, 0xca, 0x1, 0xfc, 0x4b, 0x46, 0x1, 0xff, + 0xc5, 0x5f, 0x50, 0xf, 0xe4, 0xe7, 0x10, 0xf, + 0xe5, 0xe6, 0x10, 0xf, 0xc4, 0xb6, 0x60, 0x1f, + 0xfc, 0x35, 0xf5, 0x0, 0xfe, 0x5e, 0x51, 0x0, + 0xff, 0x92, 0x9c, 0x40, 0x3f, 0x13, 0x59, 0x80, + 0x7f, 0xf0, 0x57, 0xd4, 0x3, 0xf0, 0xb7, 0x28, + 0x7, 0xff, 0x8, 0xed, 0x88, 0x3, 0xf0, 0xb5, + 0x18, 0x7, 0xfc, 0xbc, 0xa0, 0x1f, 0x89, 0xa9, + 0x0, 0x3f, 0xf8, 0x85, 0x54, 0x30, 0xf, 0xc2, + 0xf4, 0x60, 0x1f, 0xcb, 0xc8, 0x1, 0xf8, 0xaa, + 0x86, 0x1, 0xff, 0xc6, 0x26, 0xa4, 0x0, 0xfc, + 0x2f, 0x48, 0x1, 0xf2, 0xf2, 0x0, 0x7e, 0x3b, + 0x62, 0x0, 0xff, 0xe4, 0xb, 0x72, 0x80, 0x7e, + 0x17, 0xd4, 0x0, 0xc2, 0xbc, 0x80, 0x1f, 0x92, + 0x9c, 0x40, 0x3f, 0xf9, 0x6b, 0xca, 0x20, 0x1f, + 0xb, 0xf2, 0x0, 0x5, 0xf9, 0x0, 0x3f, 0x2f, + 0x30, 0x80, 0x7f, 0xf3, 0x52, 0x5c, 0x40, 0x3e, + 0x15, 0xe4, 0x17, 0xd4, 0x0, 0xf8, 0x57, 0x94, + 0x3, 0xff, 0xa0, 0x76, 0xc4, 0x1, 0xf9, 0x7e, + 0xa8, 0x80, 0x1f, 0xb, 0xca, 0x0, 0x7f, 0xf4, + 0x8a, 0xa8, 0x60, 0x1f, 0x91, 0x6, 0x1, 0xf1, + 0x35, 0x18, 0x7, 0xff, 0x50, 0x9a, 0x90, 0x3, + 0xff, 0x88, 0x75, 0x43, 0x0, 0xff, 0xeb, 0xb, + 0x72, 0x0, 0x7f, 0xf0, 0x92, 0x98, 0x80, 0x3f, + 0xfb, 0x2b, 0xea, 0x20, 0x1f, 0xf2, 0x73, 0x88, + 0x7, 0xff, 0x18, + + /* U+0077 "w" */ + 0x0, 0x14, 0x6f, 0xff, 0xfa, 0xd8, 0x40, 0x3f, + 0xf9, 0x2b, 0x5f, 0xff, 0xf6, 0xc1, 0x80, 0x7f, + 0xf2, 0x4e, 0x7b, 0xff, 0xfb, 0xa5, 0x0, 0x31, + 0x55, 0xc, 0x3, 0xf9, 0x35, 0xc4, 0x3, 0xff, + 0x8e, 0x9e, 0xa0, 0x1f, 0xf1, 0x2d, 0x90, 0x7, + 0xff, 0x1c, 0xed, 0xc4, 0x3, 0xf0, 0xbd, 0x20, + 0x7, 0x13, 0x59, 0x80, 0x7f, 0x26, 0xb8, 0x80, + 0x7f, 0xf1, 0x53, 0x50, 0x3, 0xff, 0x82, 0x4b, + 0x44, 0x1, 0xff, 0xc5, 0x3b, 0x51, 0x0, 0xfc, + 0x2d, 0x46, 0x1, 0xf0, 0xb5, 0x20, 0x7, 0xf2, + 0x6b, 0x88, 0x7, 0xff, 0xd, 0x35, 0xc4, 0x3, + 0xff, 0x84, 0x4a, 0xa2, 0x0, 0xff, 0xe1, 0x9d, + 0xa9, 0x0, 0x7e, 0x26, 0xa3, 0x0, 0xfe, 0x17, + 0xd4, 0x0, 0xfe, 0x4d, 0x71, 0x0, 0xff, 0xe0, + 0x9e, 0xb8, 0x80, 0x7f, 0xf1, 0xa, 0x94, 0x80, + 0x3f, 0xf8, 0x27, 0x6a, 0x40, 0x1f, 0x8e, 0xa8, + 0x40, 0x1f, 0xf0, 0xb7, 0x28, 0x7, 0xf2, 0x6b, + 0x88, 0x7, 0xfc, 0x76, 0xe2, 0x1, 0xf2, 0x2a, + 0x84, 0x3, 0xe2, 0xb5, 0x20, 0xf, 0xf8, 0xad, + 0x48, 0x3, 0xf1, 0xdb, 0x10, 0x7, 0xff, 0x9, + 0x79, 0x44, 0x3, 0xf2, 0x6b, 0x88, 0x7, 0xf1, + 0xda, 0x88, 0x7, 0xc9, 0xb7, 0xce, 0x20, 0x1f, + 0x1d, 0xa8, 0x80, 0x7f, 0x12, 0xa8, 0x80, 0x3f, + 0x25, 0x30, 0x80, 0x7f, 0xf1, 0x13, 0x9c, 0x40, + 0x3f, 0x26, 0xb8, 0x7, 0xe3, 0xb5, 0x20, 0xf, + 0x93, 0x5c, 0x53, 0x5c, 0x40, 0x3e, 0x3b, 0x61, + 0x0, 0xf8, 0x96, 0xc8, 0x3, 0xf2, 0x6b, 0x88, + 0x7, 0xff, 0x19, 0x29, 0xc4, 0x3, 0xf2, 0x6a, + 0x80, 0x78, 0xad, 0x48, 0x3, 0xe4, 0xd7, 0x10, + 0x2, 0x53, 0x88, 0x7, 0xc7, 0x6e, 0x20, 0x1c, + 0x2b, 0x66, 0x1, 0xf9, 0x79, 0x84, 0x3, 0xff, + 0x90, 0x74, 0xc4, 0x1, 0xf9, 0x39, 0x40, 0x31, + 0x2a, 0x88, 0x3, 0xe4, 0xe7, 0x10, 0xc, 0x74, + 0xe2, 0x1, 0xf1, 0xd3, 0x88, 0x4, 0x2d, 0x66, + 0x1, 0xf9, 0x7d, 0x40, 0x3f, 0xf9, 0x67, 0x54, + 0x20, 0xf, 0xc9, 0xca, 0x0, 0x25, 0xb2, 0x0, + 0xf9, 0x39, 0x44, 0x3, 0xc7, 0x4e, 0x20, 0x1f, + 0x1d, 0x38, 0x80, 0xbd, 0x98, 0x7, 0xc2, 0xdc, + 0xa0, 0x1f, 0xfc, 0xd2, 0x5a, 0x30, 0xf, 0xc9, + 0xca, 0x4b, 0x66, 0x1, 0xf2, 0x72, 0x80, 0x7f, + 0x1d, 0x30, 0x80, 0x7c, 0x7a, 0xe4, 0xf4, 0x60, + 0x1f, 0xb, 0xd2, 0x0, 0x7f, 0xf3, 0xc9, 0xa8, + 0xc0, 0x3f, 0x24, 0xf5, 0x98, 0x7, 0xc9, 0xca, + 0x1, 0xff, 0x1d, 0xb0, 0x80, 0x7c, 0x95, 0xd4, + 0x60, 0x1f, 0x13, 0x51, 0x80, 0x7f, 0xf4, 0x45, + 0xe9, 0x0, 0x3f, 0x19, 0xc0, 0x1f, 0x2f, 0x28, + 0x7, 0xff, 0x4, 0xed, 0x88, 0x3, 0xe3, 0x38, + 0x3, 0xe2, 0x5a, 0x30, 0xf, 0xfe, 0x98, 0xb7, + 0x20, 0x7, 0xff, 0x11, 0x7d, 0x40, 0x3f, 0xf8, + 0x67, 0x6a, 0x40, 0x1f, 0xfc, 0x32, 0xaa, 0x10, + 0x7, 0xff, 0x59, 0x79, 0x40, 0x3f, 0xf8, 0x4b, + 0xea, 0x1, 0xff, 0xc5, 0x3a, 0x52, 0x0, 0xff, + 0xe0, 0x9d, 0x29, 0x0, 0x7f, 0xf6, 0x17, 0x98, + 0x40, 0x3f, 0xe5, 0xf5, 0x0, 0xff, 0xe3, 0x95, + 0xa9, 0x0, 0x7f, 0xc7, 0x4c, 0x40, 0x1f, 0xfc, + 0x60, + + /* U+0078 "x" */ + 0x0, 0x1c, 0xef, 0xff, 0xfd, 0xb0, 0x60, 0x1f, + 0xfc, 0x53, 0x9d, 0xff, 0xff, 0x75, 0xa8, 0x80, + 0x78, 0xe7, 0x9c, 0x80, 0x3f, 0x89, 0xfa, 0xc, + 0x3, 0xff, 0x82, 0x71, 0xcc, 0x40, 0x1f, 0x85, + 0x2e, 0x94, 0x40, 0x3f, 0x1c, 0x73, 0x90, 0x7, + 0xf1, 0x3f, 0x39, 0x80, 0x7f, 0x1c, 0x73, 0x90, + 0x7, 0xe1, 0x48, 0xa5, 0x10, 0xf, 0xfe, 0x1, + 0xc7, 0x39, 0x0, 0x7f, 0x14, 0x7b, 0x90, 0x7, + 0x1c, 0x73, 0x90, 0x7, 0xf2, 0x45, 0x30, 0x80, + 0x7f, 0xf1, 0xe, 0x39, 0xc8, 0x3, 0xf8, 0xe3, + 0x9c, 0x80, 0xe3, 0x9c, 0x80, 0x3f, 0x92, 0x69, + 0x84, 0x3, 0xff, 0x90, 0x71, 0xce, 0x40, 0x1f, + 0xc7, 0x1f, 0xbc, 0xe4, 0x1, 0xfc, 0x93, 0x4c, + 0x20, 0x1f, 0xfc, 0xc3, 0x8e, 0x72, 0x0, 0xfe, + 0x22, 0x80, 0x3f, 0x92, 0x64, 0xc2, 0x1, 0xff, + 0xd0, 0x38, 0xe7, 0x20, 0xf, 0xfe, 0x2a, 0x4c, + 0x98, 0x80, 0x3f, 0xfa, 0x87, 0x4a, 0x40, 0x1f, + 0xfc, 0x33, 0xd7, 0x20, 0xf, 0xfe, 0xa9, 0x3f, + 0x39, 0x0, 0x7f, 0xf0, 0xce, 0x29, 0x84, 0x3, + 0xff, 0xa4, 0x71, 0xf0, 0x60, 0x1f, 0xfc, 0x61, + 0x49, 0xa6, 0x10, 0xf, 0xfe, 0x71, 0xc7, 0x39, + 0x0, 0x7f, 0x1b, 0xc3, 0x8, 0x7, 0xf2, 0x4d, + 0x30, 0x80, 0x7f, 0xf2, 0x8e, 0x39, 0xc8, 0x3, + 0xf8, 0xe3, 0xa1, 0xe6, 0x94, 0x40, 0x3f, 0x92, + 0x69, 0x84, 0x3, 0xff, 0x8c, 0x73, 0xce, 0x40, + 0x1f, 0xc9, 0x3c, 0xe4, 0x1, 0x25, 0xd9, 0x44, + 0x3, 0xf9, 0x26, 0x98, 0x40, 0x3f, 0xf8, 0x49, + 0x3c, 0xc4, 0x1, 0xfc, 0x93, 0x4c, 0x40, 0x1e, + 0x15, 0xbb, 0x28, 0x80, 0x7f, 0x24, 0xd3, 0x8, + 0x7, 0xf9, 0x26, 0x98, 0x80, 0x3f, 0xa, 0x55, + 0x18, 0x40, 0x3f, 0xc2, 0xb7, 0x64, 0x0, 0xff, + 0x24, 0xd3, 0x8, 0x7, 0xa, 0x55, 0x18, 0x40, + 0x3f, 0xa, 0xdd, 0x28, 0x80, 0x7f, 0xf0, 0x85, + 0x6a, 0x50, 0x3, 0xfc, 0x93, 0x4c, 0x20, 0x10, + + /* U+0079 "y" */ + 0x0, 0x2d, 0x7f, 0xff, 0xba, 0x50, 0x3, 0xff, + 0x98, 0x2f, 0x9f, 0xff, 0xeb, 0x61, 0x0, 0x2f, + 0x30, 0x80, 0x7e, 0x16, 0xf5, 0x0, 0xff, 0xe5, + 0x13, 0x51, 0x80, 0x7f, 0x2f, 0xb0, 0x80, 0x49, + 0x72, 0x40, 0x1f, 0xc9, 0x2c, 0x20, 0x1f, 0xfc, + 0x72, 0xaa, 0x10, 0x7, 0xe1, 0x69, 0x40, 0xf, + 0x13, 0x5a, 0x0, 0x7f, 0x1d, 0xb1, 0x0, 0x7f, + 0xf1, 0x4e, 0x94, 0x80, 0x3f, 0x14, 0xd9, 0x80, + 0x7e, 0x16, 0xf6, 0x10, 0xf, 0xc5, 0x36, 0x60, + 0x1f, 0xfc, 0x33, 0xa6, 0x20, 0xf, 0xc7, 0x6c, + 0x40, 0x1f, 0xf2, 0x5b, 0x10, 0x7, 0xe1, 0x7a, + 0x40, 0xf, 0xfe, 0xa, 0x53, 0x88, 0x7, 0xe5, + 0x97, 0x10, 0xf, 0xfe, 0x9, 0x4d, 0x98, 0x7, + 0xe1, 0x6f, 0x50, 0xf, 0xf9, 0x39, 0x84, 0x3, + 0xe1, 0x6e, 0x51, 0x0, 0xff, 0xe1, 0x8b, 0x4a, + 0x80, 0x7f, 0x24, 0xb0, 0x80, 0x7e, 0x5e, 0x50, + 0xf, 0xc4, 0xd4, 0x80, 0x1f, 0xfc, 0x75, 0x96, + 0x10, 0xf, 0xc7, 0x6c, 0x40, 0x1c, 0x2d, 0xca, + 0x1, 0xf8, 0xea, 0x86, 0x1, 0xff, 0xc9, 0x3b, + 0x93, 0x0, 0xfc, 0x53, 0x66, 0x1, 0xb, 0xd2, + 0x0, 0x7e, 0x4a, 0x62, 0x0, 0xff, 0xe5, 0x93, + 0x52, 0x0, 0x7e, 0x17, 0xa4, 0x1, 0x6a, 0x30, + 0xf, 0xcb, 0xcc, 0x20, 0x1f, 0xfc, 0xd1, 0x6f, + 0x61, 0x0, 0xf8, 0x5b, 0xe2, 0x68, 0xc0, 0x3e, + 0x16, 0x95, 0x0, 0xff, 0xe8, 0xa5, 0xb1, 0x0, + 0x7e, 0x47, 0x71, 0x0, 0x7c, 0x53, 0x66, 0x1, + 0xff, 0xd3, 0x29, 0xb3, 0x0, 0xff, 0xe2, 0x9d, + 0xb1, 0x0, 0x7f, 0xf5, 0x45, 0xa5, 0x40, 0x3f, + 0xf8, 0x6b, 0x2c, 0x20, 0x1f, 0xfd, 0x85, 0x96, + 0x10, 0xf, 0xf8, 0x5b, 0x94, 0x3, 0xff, 0xb6, + 0x7a, 0xe2, 0x1, 0xfc, 0x4d, 0x48, 0x1, 0xff, + 0xdb, 0x15, 0xe7, 0x10, 0xf, 0xc7, 0x54, 0x30, + 0xf, 0xfe, 0x71, 0x2b, 0x29, 0x0, 0x7c, 0x6d, + 0x56, 0xa2, 0x1, 0xf9, 0x29, 0x88, 0x3, 0xff, + 0x9a, 0x2b, 0x35, 0x35, 0xbf, 0xdb, 0xb7, 0x7e, + 0x4a, 0x8, 0x7, 0xe2, 0x78, 0x61, 0x0, 0xff, + 0xe6, 0xa4, 0x5a, 0x0, 0x70, 0x91, 0x42, 0x1, + 0xff, 0xa, 0xc4, 0x98, 0x7, 0xff, 0x38, 0xf5, + 0x4, 0x3, 0xff, 0x8e, 0x29, 0x39, 0x4a, 0x20, + 0x1f, 0xfc, 0xf3, 0x9d, 0xd5, 0x43, 0x21, 0x88, + 0x80, 0x38, 0x48, 0xd5, 0xe7, 0x3e, 0xd8, 0x80, + 0x3f, 0xfa, 0x0, + + /* U+007A "z" */ + 0x5, 0xaf, 0xff, 0xfe, 0xec, 0xa0, 0x7, 0xff, + 0xfc, 0x3, 0xff, 0x8c, 0x20, 0xe0, 0x12, 0x4d, + 0x57, 0xff, 0x32, 0x10, 0x40, 0x3f, 0xe2, 0x6a, + 0x83, 0x0, 0x84, 0xd5, 0x7f, 0xf9, 0x28, 0x39, + 0x48, 0x20, 0x1f, 0x85, 0x27, 0xe5, 0x4, 0x3, + 0xff, 0x9a, 0x4f, 0xb6, 0xc4, 0x1, 0xf8, 0x9f, + 0x6d, 0x88, 0x3, 0xff, 0x9a, 0x29, 0x59, 0x6, + 0x1, 0xf8, 0x56, 0xb2, 0xc, 0x3, 0xff, 0x9c, + 0x71, 0xb6, 0xa2, 0x1, 0xf8, 0xe3, 0x69, 0x44, + 0x3, 0xff, 0x9a, 0x2b, 0x7a, 0xe6, 0x1, 0xf8, + 0x96, 0xf5, 0xcc, 0x3, 0xff, 0x9c, 0x91, 0x94, + 0x82, 0x1, 0xf8, 0xe7, 0xe9, 0x4, 0x3, 0xff, + 0x9a, 0x4d, 0x74, 0xe4, 0x1, 0xf8, 0x9a, 0xf5, + 0x88, 0x3, 0xff, 0x9a, 0x29, 0x3f, 0x28, 0x20, + 0x1f, 0xa, 0x4f, 0xca, 0x8, 0x7, 0xff, 0x34, + 0xdf, 0x6d, 0x88, 0x3, 0xf1, 0xbe, 0xdb, 0x10, + 0x7, 0xff, 0x34, 0x56, 0xb6, 0xc, 0x3, 0xf8, + 0x96, 0xf5, 0x95, 0x7f, 0xf9, 0x68, 0x42, 0x9, + 0x74, 0xa2, 0x1, 0xff, 0x12, 0xc5, 0x57, 0xff, + 0x36, 0x68, 0x80, 0x40, 0x3f, 0xff, 0xe0, 0x1f, + 0xfc, 0x80, + + /* U+007B "{" */ + 0x0, 0xff, 0xe1, 0xa, 0x34, 0x56, 0x6f, 0x73, + 0xff, 0xeb, 0x61, 0x0, 0xff, 0x85, 0x2b, 0xee, + 0x5d, 0x4c, 0x84, 0x40, 0x1f, 0xfc, 0x82, 0x68, + 0x51, 0x0, 0xff, 0xe8, 0x36, 0x98, 0x7, 0xf8, + 0x4d, 0xa2, 0x6a, 0xe1, 0xc4, 0x3, 0xfc, 0x20, + 0x1f, 0xe1, 0x5a, 0xc9, 0x76, 0x54, 0x31, 0x0, + 0xff, 0xe0, 0x8, 0x7, 0xf1, 0x62, 0x80, 0x7f, + 0xff, 0xc0, 0x3f, 0xff, 0xe0, 0x60, 0x1f, 0xe7, + 0x1, 0x0, 0xff, 0xe2, 0x8a, 0xe2, 0x80, 0x7e, + 0x23, 0x50, 0xf, 0xfe, 0xb, 0x5f, 0xfd, 0xd4, + 0xa2, 0x1, 0xc2, 0x91, 0xd0, 0x60, 0x1f, 0xfc, + 0xb2, 0x59, 0xdf, 0xb7, 0x30, 0xf, 0xfe, 0x69, + 0x2c, 0x74, 0x31, 0x88, 0x7, 0xff, 0xd, 0x3e, + 0x66, 0x85, 0x20, 0xc, 0x26, 0xd3, 0x94, 0xa2, + 0x1, 0xff, 0xc1, 0x24, 0x66, 0x9e, 0xec, 0x80, + 0x1f, 0x93, 0xd0, 0x3, 0xff, 0x8e, 0x26, 0x1, + 0xfe, 0x13, 0x10, 0xf, 0xfe, 0x93, 0x80, 0x7f, + 0xff, 0xc0, 0x3f, 0xfd, 0x83, 0xc4, 0x1, 0xff, + 0xc8, 0x10, 0xf, 0xe2, 0x68, 0x74, 0x21, 0x0, + 0xff, 0xe1, 0xb1, 0x8, 0x7, 0xf0, 0xa4, 0x5e, + 0xf7, 0xfa, 0xd8, 0x40, 0x3f, 0xc7, 0x4c, 0x40, + 0x1f, 0xfd, 0x22, 0x8c, 0xb7, 0x42, 0x0, 0xff, + 0xe8, 0xa, 0x45, 0xef, 0xfb, 0xb7, 0x31, 0x77, + 0xe8, 0x71, + + /* U+007C "|" */ + 0x0, 0x84, 0x7f, 0x0, 0x71, 0x3e, 0x77, 0x7d, + 0x6a, 0x1, 0xff, 0xff, 0x0, 0xff, 0xff, 0x80, + 0x7f, 0xff, 0xc0, 0x3f, 0xff, 0xe0, 0x1f, 0xff, + 0xf0, 0xf, 0xff, 0x18, + + /* U+007D "}" */ + 0x3, 0x8e, 0xff, 0xfb, 0xb7, 0x2e, 0xa1, 0x48, + 0x3, 0xff, 0x9a, 0x24, 0x68, 0xaf, 0x5b, 0x8e, + 0x40, 0x1f, 0xfd, 0x23, 0x88, 0x20, 0x7, 0xfc, + 0x75, 0x5a, 0x5d, 0x48, 0x3, 0xfe, 0x73, 0x20, + 0xf, 0xf8, 0x91, 0x54, 0xd1, 0x59, 0x26, 0x1, + 0xfe, 0xf1, 0x0, 0xff, 0xe3, 0xa, 0xa8, 0x40, + 0x3f, 0x18, 0x7, 0xff, 0x28, 0x40, 0x3f, 0xff, + 0xe0, 0x1f, 0xfe, 0xd3, 0x0, 0xfe, 0x10, 0xf, + 0xfe, 0x41, 0xeb, 0x80, 0x7e, 0x15, 0xb3, 0x10, + 0xf, 0xfe, 0x32, 0xc5, 0x31, 0x0, 0x78, 0xdf, + 0x3b, 0xfd, 0xd2, 0x80, 0x1f, 0xfc, 0x22, 0x59, + 0xde, 0xb8, 0x41, 0x0, 0xff, 0xe6, 0x8a, 0x3d, + 0xcc, 0x20, 0x80, 0x7f, 0xf2, 0xce, 0x32, 0xe1, + 0x48, 0x3, 0x8d, 0xa2, 0x65, 0x74, 0xa0, 0x1f, + 0xfc, 0x2, 0x45, 0x20, 0xf, 0x85, 0xa2, 0x5d, + 0x98, 0xa6, 0x20, 0x1f, 0xfc, 0x1, 0xf3, 0x0, + 0xfe, 0x17, 0x0, 0xff, 0xff, 0x80, 0x7f, 0xff, + 0xc1, 0x88, 0x40, 0x3f, 0xf9, 0xa2, 0x23, 0x59, + 0x85, 0x0, 0xfe, 0x30, 0xf, 0xfe, 0x1, 0xc7, + 0x7f, 0x73, 0x29, 0x88, 0x3, 0xfc, 0xdc, 0x40, + 0x1f, 0xfd, 0x14, 0xe7, 0x10, 0xf, 0xfe, 0x60, + 0x9a, 0xce, 0x52, 0x88, 0x7, 0xfc, 0x75, 0xb7, + 0x7d, 0x99, 0x6f, 0x7f, 0x65, 0x31, 0x88, 0x7, + 0xff, 0x0, + + /* U+007E "~" */ + 0x0, 0xf1, 0x2c, 0x5e, 0x6f, 0x73, 0x72, 0xe5, + 0x8c, 0x40, 0x3f, 0x1c, 0x67, 0x77, 0xa5, 0x0, + 0x3c, 0x71, 0xf4, 0xe8, 0x64, 0x22, 0x23, 0x46, + 0x9c, 0xee, 0x5c, 0xb2, 0x1a, 0x34, 0xb1, 0x88, + 0xf0, 0x1, 0xc0, 0x39, 0x65, 0xc8, 0x3, 0xff, + 0x84, 0x28, 0xd3, 0x79, 0x72, 0xa2, 0x1, 0xe5, + 0xf2, 0x0, 0xc5, 0xae, 0x1, 0xe1, 0x37, 0x9a, + 0x97, 0x53, 0x10, 0xf, 0xfe, 0x1a, 0xf3, 0x88, + 0x6, 0x61, 0x30, 0xf, 0x3c, 0x41, 0x95, 0xa2, + 0xb3, 0xb6, 0xa1, 0x4c, 0x84, 0x2, 0x12, 0x58, + 0xcb, 0x51, 0x0, 0x80 +}; + + +/*--------------------- + * GLYPH DESCRIPTION + *--------------------*/ + +static const lv_font_fmt_txt_glyph_dsc_t glyph_dsc[] = { + {.bitmap_index = 0, .adv_w = 0, .box_w = 0, .box_h = 0, .ofs_x = 0, .ofs_y = 0} /* id = 0 reserved */, + {.bitmap_index = 0, .adv_w = 125, .box_w = 6, .box_h = 0, .ofs_x = -1, .ofs_y = 0}, + {.bitmap_index = 0, .adv_w = 114, .box_w = 18, .box_h = 22, .ofs_x = 1, .ofs_y = 0}, + {.bitmap_index = 113, .adv_w = 196, .box_w = 30, .box_h = 9, .ofs_x = 1, .ofs_y = 13}, + {.bitmap_index = 144, .adv_w = 373, .box_w = 69, .box_h = 22, .ofs_x = 0, .ofs_y = 0}, + {.bitmap_index = 487, .adv_w = 322, .box_w = 60, .box_h = 31, .ofs_x = 0, .ofs_y = -5}, + {.bitmap_index = 916, .adv_w = 498, .box_w = 93, .box_h = 22, .ofs_x = 0, .ofs_y = 0}, + {.bitmap_index = 1559, .adv_w = 343, .box_w = 63, .box_h = 23, .ofs_x = 1, .ofs_y = -1}, + {.bitmap_index = 2016, .adv_w = 112, .box_w = 15, .box_h = 9, .ofs_x = 1, .ofs_y = 13}, + {.bitmap_index = 2033, .adv_w = 164, .box_w = 30, .box_h = 28, .ofs_x = 1, .ofs_y = -5}, + {.bitmap_index = 2274, .adv_w = 164, .box_w = 27, .box_h = 28, .ofs_x = 0, .ofs_y = -5}, + {.bitmap_index = 2506, .adv_w = 182, .box_w = 33, .box_h = 11, .ofs_x = 0, .ofs_y = 13}, + {.bitmap_index = 2643, .adv_w = 257, .box_w = 48, .box_h = 14, .ofs_x = 0, .ofs_y = 3}, + {.bitmap_index = 2718, .adv_w = 113, .box_w = 21, .box_h = 8, .ofs_x = 0, .ofs_y = -4}, + {.bitmap_index = 2780, .adv_w = 189, .box_w = 30, .box_h = 3, .ofs_x = 1, .ofs_y = 8}, + {.bitmap_index = 2797, .adv_w = 115, .box_w = 18, .box_h = 5, .ofs_x = 1, .ofs_y = 0}, + {.bitmap_index = 2835, .adv_w = 173, .box_w = 48, .box_h = 30, .ofs_x = -2, .ofs_y = -4}, + {.bitmap_index = 3099, .adv_w = 361, .box_w = 63, .box_h = 22, .ofs_x = 1, .ofs_y = 0}, + {.bitmap_index = 3476, .adv_w = 196, .box_w = 33, .box_h = 22, .ofs_x = -1, .ofs_y = 0}, + {.bitmap_index = 3524, .adv_w = 302, .box_w = 57, .box_h = 22, .ofs_x = 0, .ofs_y = 0}, + {.bitmap_index = 3818, .adv_w = 304, .box_w = 54, .box_h = 22, .ofs_x = 0, .ofs_y = 0}, + {.bitmap_index = 4109, .adv_w = 307, .box_w = 60, .box_h = 22, .ofs_x = -1, .ofs_y = 0}, + {.bitmap_index = 4312, .adv_w = 317, .box_w = 54, .box_h = 22, .ofs_x = 1, .ofs_y = 0}, + {.bitmap_index = 4557, .adv_w = 324, .box_w = 57, .box_h = 22, .ofs_x = 1, .ofs_y = 0}, + {.bitmap_index = 4953, .adv_w = 294, .box_w = 57, .box_h = 22, .ofs_x = -1, .ofs_y = 0}, + {.bitmap_index = 5172, .adv_w = 324, .box_w = 57, .box_h = 22, .ofs_x = 1, .ofs_y = 0}, + {.bitmap_index = 5581, .adv_w = 323, .box_w = 54, .box_h = 22, .ofs_x = 1, .ofs_y = 0}, + {.bitmap_index = 5961, .adv_w = 115, .box_w = 18, .box_h = 14, .ofs_x = 1, .ofs_y = 0}, + {.bitmap_index = 6045, .adv_w = 114, .box_w = 21, .box_h = 17, .ofs_x = 0, .ofs_y = -4}, + {.bitmap_index = 6154, .adv_w = 257, .box_w = 48, .box_h = 16, .ofs_x = 0, .ofs_y = 2}, + {.bitmap_index = 6371, .adv_w = 257, .box_w = 48, .box_h = 10, .ofs_x = 0, .ofs_y = 6}, + {.bitmap_index = 6418, .adv_w = 257, .box_w = 48, .box_h = 17, .ofs_x = 0, .ofs_y = 2}, + {.bitmap_index = 6635, .adv_w = 231, .box_w = 45, .box_h = 22, .ofs_x = 0, .ofs_y = 0}, + {.bitmap_index = 6881, .adv_w = 490, .box_w = 90, .box_h = 27, .ofs_x = 0, .ofs_y = -5}, + {.bitmap_index = 7648, .adv_w = 382, .box_w = 78, .box_h = 22, .ofs_x = -1, .ofs_y = 0}, + {.bitmap_index = 7982, .adv_w = 363, .box_w = 60, .box_h = 22, .ofs_x = 2, .ofs_y = 0}, + {.bitmap_index = 8238, .adv_w = 356, .box_w = 66, .box_h = 22, .ofs_x = 0, .ofs_y = 0}, + {.bitmap_index = 8592, .adv_w = 396, .box_w = 69, .box_h = 22, .ofs_x = 2, .ofs_y = 0}, + {.bitmap_index = 8841, .adv_w = 338, .box_w = 54, .box_h = 22, .ofs_x = 2, .ofs_y = 0}, + {.bitmap_index = 8937, .adv_w = 298, .box_w = 51, .box_h = 22, .ofs_x = 2, .ofs_y = 0}, + {.bitmap_index = 9022, .adv_w = 382, .box_w = 69, .box_h = 22, .ofs_x = 0, .ofs_y = 0}, + {.bitmap_index = 9379, .adv_w = 404, .box_w = 63, .box_h = 22, .ofs_x = 2, .ofs_y = 0}, + {.bitmap_index = 9464, .adv_w = 157, .box_w = 18, .box_h = 22, .ofs_x = 2, .ofs_y = 0}, + {.bitmap_index = 9487, .adv_w = 261, .box_w = 48, .box_h = 22, .ofs_x = -1, .ofs_y = 0}, + {.bitmap_index = 9644, .adv_w = 372, .box_w = 66, .box_h = 22, .ofs_x = 2, .ofs_y = 0}, + {.bitmap_index = 9916, .adv_w = 277, .box_w = 48, .box_h = 22, .ofs_x = 2, .ofs_y = 0}, + {.bitmap_index = 9977, .adv_w = 481, .box_w = 78, .box_h = 22, .ofs_x = 2, .ofs_y = 0}, + {.bitmap_index = 10272, .adv_w = 404, .box_w = 63, .box_h = 22, .ofs_x = 2, .ofs_y = 0}, + {.bitmap_index = 10459, .adv_w = 414, .box_w = 78, .box_h = 22, .ofs_x = 0, .ofs_y = 0}, + {.bitmap_index = 10886, .adv_w = 346, .box_w = 60, .box_h = 22, .ofs_x = 2, .ofs_y = 0}, + {.bitmap_index = 11087, .adv_w = 418, .box_w = 81, .box_h = 27, .ofs_x = 0, .ofs_y = -5}, + {.bitmap_index = 11613, .adv_w = 370, .box_w = 60, .box_h = 22, .ofs_x = 2, .ofs_y = 0}, + {.bitmap_index = 11849, .adv_w = 322, .box_w = 60, .box_h = 22, .ofs_x = 0, .ofs_y = 0}, + {.bitmap_index = 12240, .adv_w = 301, .box_w = 60, .box_h = 22, .ofs_x = -1, .ofs_y = 0}, + {.bitmap_index = 12326, .adv_w = 387, .box_w = 63, .box_h = 22, .ofs_x = 2, .ofs_y = 0}, + {.bitmap_index = 12535, .adv_w = 359, .box_w = 72, .box_h = 22, .ofs_x = -1, .ofs_y = 0}, + {.bitmap_index = 12883, .adv_w = 551, .box_w = 108, .box_h = 22, .ofs_x = -1, .ofs_y = 0}, + {.bitmap_index = 13485, .adv_w = 360, .box_w = 69, .box_h = 22, .ofs_x = 0, .ofs_y = 0}, + {.bitmap_index = 13863, .adv_w = 332, .box_w = 69, .box_h = 22, .ofs_x = -1, .ofs_y = 0}, + {.bitmap_index = 14133, .adv_w = 342, .box_w = 63, .box_h = 22, .ofs_x = 0, .ofs_y = 0}, + {.bitmap_index = 14355, .adv_w = 172, .box_w = 27, .box_h = 28, .ofs_x = 2, .ofs_y = -5}, + {.bitmap_index = 14414, .adv_w = 173, .box_w = 45, .box_h = 30, .ofs_x = -3, .ofs_y = -4}, + {.bitmap_index = 14672, .adv_w = 172, .box_w = 27, .box_h = 28, .ofs_x = 0, .ofs_y = -5}, + {.bitmap_index = 14731, .adv_w = 280, .box_w = 51, .box_h = 13, .ofs_x = 0, .ofs_y = 4}, + {.bitmap_index = 14918, .adv_w = 292, .box_w = 60, .box_h = 3, .ofs_x = -1, .ofs_y = -6}, + {.bitmap_index = 14935, .adv_w = 170, .box_w = 27, .box_h = 5, .ofs_x = 1, .ofs_y = 19}, + {.bitmap_index = 14986, .adv_w = 302, .box_w = 54, .box_h = 17, .ofs_x = 0, .ofs_y = 0}, + {.bitmap_index = 15254, .adv_w = 349, .box_w = 60, .box_h = 23, .ofs_x = 2, .ofs_y = 0}, + {.bitmap_index = 15545, .adv_w = 289, .box_w = 54, .box_h = 17, .ofs_x = 0, .ofs_y = 0}, + {.bitmap_index = 15812, .adv_w = 350, .box_w = 60, .box_h = 23, .ofs_x = 0, .ofs_y = 0}, + {.bitmap_index = 16104, .adv_w = 303, .box_w = 57, .box_h = 17, .ofs_x = 0, .ofs_y = 0}, + {.bitmap_index = 16383, .adv_w = 187, .box_w = 39, .box_h = 23, .ofs_x = 0, .ofs_y = 0}, + {.bitmap_index = 16517, .adv_w = 329, .box_w = 57, .box_h = 23, .ofs_x = 0, .ofs_y = -6}, + {.bitmap_index = 16896, .adv_w = 344, .box_w = 54, .box_h = 23, .ofs_x = 2, .ofs_y = 0}, + {.bitmap_index = 17061, .adv_w = 149, .box_w = 21, .box_h = 24, .ofs_x = 1, .ofs_y = 0}, + {.bitmap_index = 17136, .adv_w = 145, .box_w = 33, .box_h = 30, .ofs_x = -3, .ofs_y = -6}, + {.bitmap_index = 17292, .adv_w = 310, .box_w = 54, .box_h = 23, .ofs_x = 2, .ofs_y = 0}, + {.bitmap_index = 17504, .adv_w = 155, .box_w = 18, .box_h = 23, .ofs_x = 2, .ofs_y = 0}, + {.bitmap_index = 17529, .adv_w = 533, .box_w = 90, .box_h = 17, .ofs_x = 2, .ofs_y = 0}, + {.bitmap_index = 17800, .adv_w = 341, .box_w = 54, .box_h = 17, .ofs_x = 2, .ofs_y = 0}, + {.bitmap_index = 17952, .adv_w = 322, .box_w = 60, .box_h = 17, .ofs_x = 0, .ofs_y = 0}, + {.bitmap_index = 18256, .adv_w = 349, .box_w = 60, .box_h = 23, .ofs_x = 2, .ofs_y = -6}, + {.bitmap_index = 18559, .adv_w = 350, .box_w = 60, .box_h = 23, .ofs_x = 0, .ofs_y = -6}, + {.bitmap_index = 18865, .adv_w = 206, .box_w = 33, .box_h = 17, .ofs_x = 2, .ofs_y = 0}, + {.bitmap_index = 18957, .adv_w = 247, .box_w = 45, .box_h = 17, .ofs_x = 0, .ofs_y = 0}, + {.bitmap_index = 19223, .adv_w = 212, .box_w = 39, .box_h = 21, .ofs_x = 0, .ofs_y = 0}, + {.bitmap_index = 19349, .adv_w = 336, .box_w = 54, .box_h = 17, .ofs_x = 1, .ofs_y = 0}, + {.bitmap_index = 19498, .adv_w = 275, .box_w = 57, .box_h = 17, .ofs_x = -1, .ofs_y = 0}, + {.bitmap_index = 19749, .adv_w = 463, .box_w = 93, .box_h = 17, .ofs_x = -1, .ofs_y = 0}, + {.bitmap_index = 20190, .adv_w = 291, .box_w = 57, .box_h = 17, .ofs_x = 0, .ofs_y = 0}, + {.bitmap_index = 20462, .adv_w = 279, .box_w = 57, .box_h = 23, .ofs_x = -1, .ofs_y = -6}, + {.bitmap_index = 20793, .adv_w = 277, .box_w = 48, .box_h = 17, .ofs_x = 1, .ofs_y = 0}, + {.bitmap_index = 20955, .adv_w = 179, .box_w = 33, .box_h = 28, .ofs_x = 0, .ofs_y = -5}, + {.bitmap_index = 21141, .adv_w = 142, .box_w = 15, .box_h = 30, .ofs_x = 2, .ofs_y = -4}, + {.bitmap_index = 21169, .adv_w = 179, .box_w = 33, .box_h = 28, .ofs_x = 0, .ofs_y = -5}, + {.bitmap_index = 21355, .adv_w = 257, .box_w = 42, .box_h = 5, .ofs_x = 1, .ofs_y = 8} +}; + +/*--------------------- + * CHARACTER MAPPING + *--------------------*/ + + + +/*Collect the unicode lists and glyph_id offsets*/ +static const lv_font_fmt_txt_cmap_t cmaps[] = +{ + { + .range_start = 32, .range_length = 95, .glyph_id_start = 1, + .unicode_list = NULL, .glyph_id_ofs_list = NULL, .list_length = 0, .type = LV_FONT_FMT_TXT_CMAP_FORMAT0_TINY + } +}; + +/*----------------- + * KERNING + *----------------*/ + + +/*Map glyph_ids to kern left classes*/ +static const uint8_t kern_left_class_mapping[] = +{ + 0, 0, 0, 0, 0, 0, 0, 0, + 1, 2, 0, 3, 0, 0, 4, 0, + 5, 0, 0, 0, 0, 0, 0, 0, + 6, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 7, 8, 9, 10, 0, 11, + 0, 0, 0, 12, 13, 14, 0, 0, + 10, 15, 10, 16, 17, 18, 19, 20, + 21, 22, 23, 0, 0, 0, 0, 0, + 0, 0, 24, 25, 26, 27, 28, 29, + 30, 31, 0, 30, 32, 27, 31, 31, + 25, 25, 33, 34, 35, 36, 37, 38, + 38, 32, 39, 40, 41, 0, 0, 0 +}; + +/*Map glyph_ids to kern right classes*/ +static const uint8_t kern_right_class_mapping[] = +{ + 0, 0, 0, 0, 0, 0, 0, 1, + 0, 0, 0, 0, 0, 0, 0, 2, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 3, 0, 0, 0, 0, 0, + 0, 0, 4, 5, 6, 5, 5, 5, + 6, 5, 5, 7, 5, 5, 5, 5, + 6, 5, 6, 5, 8, 9, 10, 11, + 11, 0, 12, 0, 0, 13, 14, 0, + 0, 0, 15, 16, 17, 17, 17, 18, + 17, 16, 0, 0, 16, 16, 19, 19, + 17, 20, 17, 19, 21, 22, 22, 23, + 23, 24, 23, 25, 0, 0, 0, 0 +}; + +/*Kern values between classes*/ +static const int8_t kern_class_values[] = +{ + 0, -29, 0, 0, 0, 0, -9, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, -6, 0, 0, 15, 0, + 0, 0, 0, 0, 0, 0, 0, -5, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + -3, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, -13, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, -9, 0, + 0, -10, -12, 0, 0, 0, 0, 0, + 0, 0, -6, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, -16, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, -9, 0, -3, -36, -10, + -26, -26, -19, 0, 0, 0, -13, 0, + 0, 0, 0, -13, -13, 0, 0, 0, + 0, 0, 0, 0, 0, -3, 0, 0, + 0, 0, 0, -5, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, -3, 0, -7, 0, 0, + 0, 0, 0, 0, 0, 0, -1, 0, + -7, 0, 0, 0, 0, 0, 0, 0, + 0, 0, -12, 0, -9, 0, -12, -14, + 0, -8, 0, -5, -2, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, -3, + -5, 0, 0, -15, 0, -15, 0, 0, + -9, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, -3, 0, -10, 0, + 0, -4, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, -10, 0, 0, 0, 0, 0, + 0, -11, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 3, 0, 0, 0, 0, 0, 0, 0, + 0, -27, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, -16, + 0, -24, 0, 0, -15, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, -5, 0, 0, + 0, -4, -4, -7, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, -3, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, -23, -29, 0, -36, 0, -20, -7, + 0, 0, 0, 0, 0, 0, 0, -5, + -26, -35, 0, -17, 0, -7, -17, -17, + 0, -14, 0, -8, 0, -10, 0, 0, + -4, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, -10, 0, -4, -8, 0, -26, 0, + -7, -1, 0, 0, 0, 0, 0, 0, + 0, -26, 0, -29, 0, -13, -7, -11, + -13, -3, -11, -11, -10, -8, 0, -26, + 0, -7, -1, 0, 0, 0, 0, 0, + 0, 0, -26, 0, -29, 0, -13, -7, + -11, -13, -3, -11, -11, 0, 0, 0, + 0, 0, -8, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, -18, -1, + 0, -26, 0, -13, -1, 0, 0, 0, + 0, 0, 0, 0, -26, 0, -29, 0, + -13, -7, -11, -13, -3, -11, -11, 0, + 0, 0, 0, 0, -3, -4, 0, -17, + 0, -21, -21, -4, -14, 0, 0, 0, + 0, 0, 0, 0, 0, -7, 0, -5, + 0, 0, 0, -13, 0, 0, -19, 0, + -35, 0, -29, -29, -5, -5, 0, 0, + 0, -3, 0, 0, 0, 0, -10, -15, + -3, 0, 0, 0, 0, 0, -8, 0, + 0, 0, 0, -11, -11, 0, 0, -10, + 0, -10, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + -4, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, -13, 0, + 0, -19, 0, -35, 0, -29, -29, -6, + -18, 0, 0, 0, -3, 0, 0, 0, + 0, -10, -15, -3, 0, 5, 0, -6, + 15, 13, -11, 0, 48, 5, 22, 22, + 0, 0, -15, 8, -5, 3, 0, 0, + 0, 6, 15, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, -14, 0, -3, + -3, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, -3, -4, 0, -17, 0, + -21, -21, -15, -3, 0, 0, 0, 0, + 0, 0, 0, 0, -7, 0, -5, 0, + 0, 0, 0, 0, -5, 0, 0, 0, + -10, -11, -11, 0, 0, -13, 0, -13, + 0, 0, 0, -6, 0, -3, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + -17, 0, -7, -7, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, -5, 0, 0, 0, + 0, 0, 0, -8, -8, 0, 0, -10, + 0, 0, 0, 0, 0, 0, 0, 13, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, -10, 0, -11, -11, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + -3, -6, 0, 0, 0, 0, 3, 0, + 0, 0, 0, 0, 0, -13, -13, 0, + 0, 0, 0, -3, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, -9, -4, 0, -17, 0, -3, -3, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, -12, 0, + -13, 0, -3, -7, 0, -17, 0, -3, + -3, 0, 0, -8, 0, -10, 0, 3, + 0, -3, 0, 0, -3, 0, 0, -7, + 0, -13, 0, -3, -7, 0, -17, 0, + -3, -3, 0, 0, -8, 0, -10, 0, + 3, 0, -3, 0, 0, -3, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, -11, -11, 0, 0, -5, 0, -3, + 0, -5, 0, 0, 0, 0, 0, 0, + 0, 0, -9, 0, 0, -8, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0 +}; + + +/*Collect the kern class' data in one place*/ +static const lv_font_fmt_txt_kern_classes_t kern_classes = +{ + .class_pair_values = kern_class_values, + .left_class_mapping = kern_left_class_mapping, + .right_class_mapping = kern_right_class_mapping, + .left_class_cnt = 41, + .right_class_cnt = 25, +}; + +/*-------------------- + * ALL CUSTOM DATA + *--------------------*/ + +#if LVGL_VERSION_MAJOR >= 8 +/*Store all the custom data of the font*/ +static lv_font_fmt_txt_glyph_cache_t cache; +static const lv_font_fmt_txt_dsc_t font_dsc = { +#else +static lv_font_fmt_txt_dsc_t font_dsc = { +#endif + .glyph_bitmap = glyph_bitmap, + .glyph_dsc = glyph_dsc, + .cmaps = cmaps, + .kern_dsc = &kern_classes, + .kern_scale = 16, + .cmap_num = 1, + .bpp = 4, + .kern_classes = 1, + .bitmap_format = 1, +#if LVGL_VERSION_MAJOR >= 8 + .cache = &cache +#endif +}; + + +/*----------------- + * PUBLIC FONT + *----------------*/ + +/*Initialize a public general font descriptor*/ +#if LVGL_VERSION_MAJOR >= 8 +const lv_font_t ime_num_32 = { +#else +lv_font_t ime_num_32 = { +#endif + .get_glyph_dsc = lv_font_get_glyph_dsc_fmt_txt, /*Function pointer to get glyph's data*/ + .get_glyph_bitmap = lv_font_get_bitmap_fmt_txt, /*Function pointer to get glyph's bitmap*/ + .line_height = 32, /*The maximum line height required by the font*/ + .base_line = 6, /*Baseline measured from the bottom of the line*/ +#if !(LVGL_VERSION_MAJOR == 6 && LVGL_VERSION_MINOR == 0) + .subpx = LV_FONT_SUBPX_HOR, +#endif +#if LV_VERSION_CHECK(7, 4, 0) || LVGL_VERSION_MAJOR >= 8 + .underline_position = -2, + .underline_thickness = 2, +#endif + .dsc = &font_dsc, /*The custom font data. Will be accessed by `get_glyph_bitmap/dsc` */ +}; + + + +#endif /*#if IME_NUM_32*/ + diff --git a/fonts/monts_m_24.c b/fonts/monts_m_24.c new file mode 100644 index 0000000..a2ee2fb --- /dev/null +++ b/fonts/monts_m_24.c @@ -0,0 +1,365 @@ +/******************************************************************************* + * Size: 24 px + * Bpp: 4 + * Opts: + ******************************************************************************/ + +#ifdef LV_LVGL_H_INCLUDE_SIMPLE +#include "lvgl.h" +#else +#include "lvgl/lvgl.h" +#endif + +#ifndef MONTS_M_24 +#define MONTS_M_24 1 +#endif + +#if MONTS_M_24 + +/*----------------- + * BITMAPS + *----------------*/ + +/*Store the image of the glyphs*/ +static LV_ATTRIBUTE_LARGE_CONST const uint8_t glyph_bitmap[] = { + /* U+002C "," */ + 0x3b, 0x80, 0xcf, 0xf3, 0xaf, 0xf3, 0xf, 0xe0, + 0x1f, 0x90, 0x5f, 0x40, 0x9e, 0x0, + + /* U+002D "-" */ + 0x0, 0x0, 0x0, 0xa, 0xff, 0xff, 0xfd, 0xaf, + 0xff, 0xff, 0xd0, + + /* U+002E "." */ + 0x4, 0x10, 0x9f, 0xf1, 0xdf, 0xf4, 0x6f, 0xb0, + + /* U+0030 "0" */ + 0x0, 0x1, 0x8d, 0xff, 0xd8, 0x10, 0x0, 0x0, + 0x2e, 0xff, 0xff, 0xff, 0xe2, 0x0, 0x1, 0xff, + 0xe7, 0x33, 0x7e, 0xff, 0x10, 0xb, 0xfe, 0x20, + 0x0, 0x2, 0xef, 0xb0, 0x2f, 0xf5, 0x0, 0x0, + 0x0, 0x5f, 0xf2, 0x7f, 0xe0, 0x0, 0x0, 0x0, + 0xe, 0xf7, 0xaf, 0xb0, 0x0, 0x0, 0x0, 0xb, + 0xfa, 0xcf, 0x90, 0x0, 0x0, 0x0, 0x9, 0xfc, + 0xdf, 0x80, 0x0, 0x0, 0x0, 0x8, 0xfd, 0xcf, + 0x90, 0x0, 0x0, 0x0, 0x9, 0xfc, 0xaf, 0xb0, + 0x0, 0x0, 0x0, 0xb, 0xfa, 0x7f, 0xe0, 0x0, + 0x0, 0x0, 0xe, 0xf7, 0x2f, 0xf5, 0x0, 0x0, + 0x0, 0x5f, 0xf2, 0xb, 0xfe, 0x10, 0x0, 0x2, + 0xef, 0xb0, 0x1, 0xff, 0xe7, 0x33, 0x7e, 0xff, + 0x10, 0x0, 0x3e, 0xff, 0xff, 0xff, 0xe2, 0x0, + 0x0, 0x1, 0x7c, 0xee, 0xc7, 0x10, 0x0, + + /* U+0031 "1" */ + 0xdf, 0xff, 0xff, 0x5d, 0xff, 0xff, 0xf5, 0x11, + 0x11, 0xff, 0x50, 0x0, 0xf, 0xf5, 0x0, 0x0, + 0xff, 0x50, 0x0, 0xf, 0xf5, 0x0, 0x0, 0xff, + 0x50, 0x0, 0xf, 0xf5, 0x0, 0x0, 0xff, 0x50, + 0x0, 0xf, 0xf5, 0x0, 0x0, 0xff, 0x50, 0x0, + 0xf, 0xf5, 0x0, 0x0, 0xff, 0x50, 0x0, 0xf, + 0xf5, 0x0, 0x0, 0xff, 0x50, 0x0, 0xf, 0xf5, + 0x0, 0x0, 0xff, 0x50, + + /* U+0032 "2" */ + 0x0, 0x17, 0xce, 0xfe, 0xc6, 0x0, 0x0, 0x7f, + 0xff, 0xff, 0xff, 0xfc, 0x10, 0x6f, 0xfc, 0x63, + 0x35, 0xbf, 0xfa, 0x0, 0x97, 0x0, 0x0, 0x0, + 0xaf, 0xf1, 0x0, 0x0, 0x0, 0x0, 0x3, 0xff, + 0x30, 0x0, 0x0, 0x0, 0x0, 0x3f, 0xf2, 0x0, + 0x0, 0x0, 0x0, 0x8, 0xfe, 0x0, 0x0, 0x0, + 0x0, 0x2, 0xff, 0x70, 0x0, 0x0, 0x0, 0x2, + 0xef, 0xc0, 0x0, 0x0, 0x0, 0x2, 0xef, 0xd1, + 0x0, 0x0, 0x0, 0x2, 0xef, 0xd1, 0x0, 0x0, + 0x0, 0x3, 0xef, 0xc1, 0x0, 0x0, 0x0, 0x3, + 0xef, 0xc0, 0x0, 0x0, 0x0, 0x3, 0xff, 0xb0, + 0x0, 0x0, 0x0, 0x4, 0xff, 0xc2, 0x11, 0x11, + 0x11, 0x11, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, + 0x1f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xf0, + + /* U+0033 "3" */ + 0x1f, 0xff, 0xff, 0xff, 0xff, 0xff, 0x1, 0xff, + 0xff, 0xff, 0xff, 0xff, 0xe0, 0x1, 0x11, 0x11, + 0x11, 0x7f, 0xf4, 0x0, 0x0, 0x0, 0x0, 0x3f, + 0xf7, 0x0, 0x0, 0x0, 0x0, 0x1e, 0xfa, 0x0, + 0x0, 0x0, 0x0, 0xc, 0xfd, 0x0, 0x0, 0x0, + 0x0, 0x9, 0xfe, 0x20, 0x0, 0x0, 0x0, 0x3, + 0xff, 0xfc, 0x71, 0x0, 0x0, 0x0, 0x3f, 0xff, + 0xff, 0xe3, 0x0, 0x0, 0x0, 0x0, 0x15, 0xef, + 0xe1, 0x0, 0x0, 0x0, 0x0, 0x2, 0xff, 0x60, + 0x0, 0x0, 0x0, 0x0, 0xc, 0xf9, 0x0, 0x0, + 0x0, 0x0, 0x0, 0xdf, 0x81, 0xa1, 0x0, 0x0, + 0x0, 0x4f, 0xf5, 0x9f, 0xfa, 0x53, 0x34, 0x9f, + 0xfd, 0x3, 0xdf, 0xff, 0xff, 0xff, 0xfd, 0x20, + 0x0, 0x49, 0xdf, 0xfe, 0xb6, 0x0, 0x0, + + /* U+0034 "4" */ + 0x0, 0x0, 0x0, 0x0, 0xd, 0xfb, 0x0, 0x0, + 0x0, 0x0, 0x0, 0x0, 0xaf, 0xe1, 0x0, 0x0, + 0x0, 0x0, 0x0, 0x6, 0xff, 0x30, 0x0, 0x0, + 0x0, 0x0, 0x0, 0x3f, 0xf7, 0x0, 0x0, 0x0, + 0x0, 0x0, 0x0, 0xdf, 0xb0, 0x0, 0x0, 0x0, + 0x0, 0x0, 0xa, 0xfd, 0x10, 0x0, 0x0, 0x0, + 0x0, 0x0, 0x7f, 0xf3, 0x0, 0x0, 0x0, 0x0, + 0x0, 0x3, 0xff, 0x60, 0x0, 0x9d, 0x70, 0x0, + 0x0, 0x1e, 0xfa, 0x0, 0x0, 0xbf, 0x90, 0x0, + 0x0, 0xbf, 0xd0, 0x0, 0x0, 0xbf, 0x90, 0x0, + 0x7, 0xff, 0x41, 0x11, 0x11, 0xbf, 0x91, 0x11, + 0x1f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, + 0x1f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, + 0x0, 0x0, 0x0, 0x0, 0x0, 0xcf, 0x90, 0x0, + 0x0, 0x0, 0x0, 0x0, 0x0, 0xcf, 0x90, 0x0, + 0x0, 0x0, 0x0, 0x0, 0x0, 0xcf, 0x90, 0x0, + 0x0, 0x0, 0x0, 0x0, 0x0, 0xcf, 0x90, 0x0, + + /* U+0035 "5" */ + 0x0, 0x8f, 0xff, 0xff, 0xff, 0xff, 0x0, 0xa, + 0xff, 0xff, 0xff, 0xff, 0xf0, 0x0, 0xbf, 0x81, + 0x11, 0x11, 0x11, 0x0, 0xd, 0xf6, 0x0, 0x0, + 0x0, 0x0, 0x0, 0xef, 0x40, 0x0, 0x0, 0x0, + 0x0, 0xf, 0xf3, 0x0, 0x0, 0x0, 0x0, 0x2, + 0xff, 0x31, 0x10, 0x0, 0x0, 0x0, 0x3f, 0xff, + 0xff, 0xfe, 0xa3, 0x0, 0x5, 0xff, 0xff, 0xff, + 0xff, 0xf8, 0x0, 0x0, 0x0, 0x0, 0x26, 0xdf, + 0xf5, 0x0, 0x0, 0x0, 0x0, 0x0, 0xdf, 0xb0, + 0x0, 0x0, 0x0, 0x0, 0x8, 0xfe, 0x0, 0x0, + 0x0, 0x0, 0x0, 0x8f, 0xd0, 0x93, 0x0, 0x0, + 0x0, 0x1e, 0xfa, 0x5f, 0xfb, 0x63, 0x24, 0x7e, + 0xff, 0x31, 0xbf, 0xff, 0xff, 0xff, 0xff, 0x50, + 0x0, 0x28, 0xce, 0xfe, 0xc8, 0x10, 0x0, + + /* U+0036 "6" */ + 0x0, 0x0, 0x4a, 0xdf, 0xfe, 0xb5, 0x0, 0x0, + 0xa, 0xff, 0xff, 0xff, 0xff, 0x10, 0x0, 0xcf, + 0xf9, 0x42, 0x23, 0x76, 0x0, 0x8, 0xfe, 0x30, + 0x0, 0x0, 0x0, 0x0, 0xf, 0xf5, 0x0, 0x0, + 0x0, 0x0, 0x0, 0x6f, 0xe0, 0x0, 0x0, 0x0, + 0x0, 0x0, 0xaf, 0xa0, 0x5b, 0xef, 0xd9, 0x30, + 0x0, 0xbf, 0x9a, 0xff, 0xff, 0xff, 0xf7, 0x0, + 0xdf, 0xff, 0xc4, 0x1, 0x4c, 0xff, 0x40, 0xcf, + 0xfc, 0x0, 0x0, 0x0, 0xcf, 0xc0, 0xbf, 0xf5, + 0x0, 0x0, 0x0, 0x5f, 0xf0, 0x8f, 0xf2, 0x0, + 0x0, 0x0, 0x3f, 0xf1, 0x4f, 0xf4, 0x0, 0x0, + 0x0, 0x4f, 0xf0, 0xd, 0xfc, 0x0, 0x0, 0x0, + 0xbf, 0xb0, 0x4, 0xff, 0xc3, 0x0, 0x3b, 0xff, + 0x30, 0x0, 0x5f, 0xff, 0xff, 0xff, 0xf5, 0x0, + 0x0, 0x1, 0x8d, 0xff, 0xd9, 0x20, 0x0, + + /* U+0037 "7" */ + 0x4f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xf6, 0x4f, + 0xff, 0xff, 0xff, 0xff, 0xff, 0xf5, 0x4f, 0xf2, + 0x11, 0x11, 0x11, 0x8f, 0xf1, 0x4f, 0xf0, 0x0, + 0x0, 0x0, 0xef, 0x90, 0x4f, 0xf0, 0x0, 0x0, + 0x5, 0xff, 0x20, 0x2, 0x20, 0x0, 0x0, 0xc, + 0xfa, 0x0, 0x0, 0x0, 0x0, 0x0, 0x4f, 0xf3, + 0x0, 0x0, 0x0, 0x0, 0x0, 0xbf, 0xc0, 0x0, + 0x0, 0x0, 0x0, 0x2, 0xff, 0x50, 0x0, 0x0, + 0x0, 0x0, 0x9, 0xfe, 0x0, 0x0, 0x0, 0x0, + 0x0, 0x1f, 0xf7, 0x0, 0x0, 0x0, 0x0, 0x0, + 0x7f, 0xf1, 0x0, 0x0, 0x0, 0x0, 0x0, 0xef, + 0x90, 0x0, 0x0, 0x0, 0x0, 0x6, 0xff, 0x20, + 0x0, 0x0, 0x0, 0x0, 0xd, 0xfb, 0x0, 0x0, + 0x0, 0x0, 0x0, 0x4f, 0xf4, 0x0, 0x0, 0x0, + 0x0, 0x0, 0xbf, 0xd0, 0x0, 0x0, 0x0, + + /* U+0038 "8" */ + 0x0, 0x6, 0xbe, 0xff, 0xd9, 0x20, 0x0, 0x2, + 0xdf, 0xff, 0xff, 0xff, 0xf7, 0x0, 0xd, 0xff, + 0x71, 0x0, 0x4b, 0xff, 0x40, 0x3f, 0xf5, 0x0, + 0x0, 0x0, 0xcf, 0xa0, 0x4f, 0xf1, 0x0, 0x0, + 0x0, 0x9f, 0xc0, 0x2f, 0xf5, 0x0, 0x0, 0x0, + 0xdf, 0x90, 0xa, 0xff, 0x72, 0x1, 0x4c, 0xff, + 0x20, 0x0, 0x8f, 0xff, 0xff, 0xff, 0xd3, 0x0, + 0x4, 0xdf, 0xff, 0xef, 0xff, 0xf8, 0x0, 0x2f, + 0xfc, 0x40, 0x0, 0x18, 0xff, 0x90, 0xaf, 0xd0, + 0x0, 0x0, 0x0, 0x6f, 0xf2, 0xdf, 0x80, 0x0, + 0x0, 0x0, 0xf, 0xf5, 0xdf, 0x80, 0x0, 0x0, + 0x0, 0x1f, 0xf5, 0xaf, 0xe1, 0x0, 0x0, 0x0, + 0x8f, 0xf2, 0x3f, 0xfd, 0x51, 0x0, 0x3a, 0xff, + 0xa0, 0x5, 0xff, 0xff, 0xff, 0xff, 0xfa, 0x0, + 0x0, 0x17, 0xce, 0xff, 0xd9, 0x40, 0x0, + + /* U+0039 "9" */ + 0x0, 0x4, 0xae, 0xfe, 0xc7, 0x0, 0x0, 0x0, + 0xaf, 0xff, 0xff, 0xff, 0xe2, 0x0, 0x8, 0xff, + 0x82, 0x0, 0x4c, 0xfe, 0x10, 0x1f, 0xf6, 0x0, + 0x0, 0x0, 0xcf, 0xa0, 0x3f, 0xf0, 0x0, 0x0, + 0x0, 0x6f, 0xf1, 0x4f, 0xf0, 0x0, 0x0, 0x0, + 0x6f, 0xf5, 0x1f, 0xf6, 0x0, 0x0, 0x0, 0xcf, + 0xf8, 0xa, 0xff, 0x82, 0x0, 0x4c, 0xff, 0xf9, + 0x0, 0xcf, 0xff, 0xff, 0xff, 0x9c, 0xfa, 0x0, + 0x6, 0xbe, 0xfe, 0xa4, 0xd, 0xf8, 0x0, 0x0, + 0x0, 0x0, 0x0, 0xf, 0xf7, 0x0, 0x0, 0x0, + 0x0, 0x0, 0x3f, 0xf2, 0x0, 0x0, 0x0, 0x0, + 0x0, 0xbf, 0xd0, 0x0, 0x0, 0x0, 0x0, 0x8, + 0xff, 0x50, 0x0, 0xa7, 0x31, 0x25, 0xcf, 0xf9, + 0x0, 0x3, 0xff, 0xff, 0xff, 0xff, 0x80, 0x0, + 0x0, 0x7b, 0xdf, 0xec, 0x82, 0x0, 0x0, + + /* U+006D "m" */ + 0xdf, 0x61, 0x9d, 0xfe, 0xb5, 0x0, 0x7, 0xcf, + 0xfd, 0x80, 0x0, 0xdf, 0xaf, 0xff, 0xff, 0xff, + 0x92, 0xef, 0xff, 0xff, 0xfd, 0x10, 0xdf, 0xfe, + 0x60, 0x3, 0xcf, 0xff, 0xfa, 0x20, 0x17, 0xff, + 0xa0, 0xdf, 0xf3, 0x0, 0x0, 0xe, 0xff, 0xa0, + 0x0, 0x0, 0x8f, 0xf0, 0xdf, 0xc0, 0x0, 0x0, + 0x9, 0xff, 0x20, 0x0, 0x0, 0x2f, 0xf3, 0xdf, + 0x80, 0x0, 0x0, 0x7, 0xff, 0x0, 0x0, 0x0, + 0xf, 0xf4, 0xdf, 0x70, 0x0, 0x0, 0x6, 0xfe, + 0x0, 0x0, 0x0, 0xf, 0xf4, 0xdf, 0x70, 0x0, + 0x0, 0x6, 0xfe, 0x0, 0x0, 0x0, 0xf, 0xf4, + 0xdf, 0x70, 0x0, 0x0, 0x6, 0xfe, 0x0, 0x0, + 0x0, 0xf, 0xf4, 0xdf, 0x70, 0x0, 0x0, 0x6, + 0xfe, 0x0, 0x0, 0x0, 0xf, 0xf4, 0xdf, 0x70, + 0x0, 0x0, 0x6, 0xfe, 0x0, 0x0, 0x0, 0xf, + 0xf4, 0xdf, 0x70, 0x0, 0x0, 0x6, 0xfe, 0x0, + 0x0, 0x0, 0xf, 0xf4, 0xdf, 0x70, 0x0, 0x0, + 0x6, 0xfe, 0x0, 0x0, 0x0, 0xf, 0xf4 +}; + + +/*--------------------- + * GLYPH DESCRIPTION + *--------------------*/ + +static const lv_font_fmt_txt_glyph_dsc_t glyph_dsc[] = { + {.bitmap_index = 0, .adv_w = 0, .box_w = 0, .box_h = 0, .ofs_x = 0, .ofs_y = 0} /* id = 0 reserved */, + {.bitmap_index = 0, .adv_w = 87, .box_w = 4, .box_h = 7, .ofs_x = 1, .ofs_y = -4}, + {.bitmap_index = 14, .adv_w = 147, .box_w = 7, .box_h = 3, .ofs_x = 1, .ofs_y = 6}, + {.bitmap_index = 25, .adv_w = 87, .box_w = 4, .box_h = 4, .ofs_x = 1, .ofs_y = 0}, + {.bitmap_index = 33, .adv_w = 256, .box_w = 14, .box_h = 17, .ofs_x = 1, .ofs_y = 0}, + {.bitmap_index = 152, .adv_w = 142, .box_w = 7, .box_h = 17, .ofs_x = 0, .ofs_y = 0}, + {.bitmap_index = 212, .adv_w = 220, .box_w = 13, .box_h = 17, .ofs_x = 0, .ofs_y = 0}, + {.bitmap_index = 323, .adv_w = 220, .box_w = 13, .box_h = 17, .ofs_x = 0, .ofs_y = 0}, + {.bitmap_index = 434, .adv_w = 257, .box_w = 16, .box_h = 17, .ofs_x = 0, .ofs_y = 0}, + {.bitmap_index = 570, .adv_w = 220, .box_w = 13, .box_h = 17, .ofs_x = 0, .ofs_y = 0}, + {.bitmap_index = 681, .adv_w = 237, .box_w = 14, .box_h = 17, .ofs_x = 1, .ofs_y = 0}, + {.bitmap_index = 800, .adv_w = 230, .box_w = 14, .box_h = 17, .ofs_x = 0, .ofs_y = 0}, + {.bitmap_index = 919, .adv_w = 247, .box_w = 14, .box_h = 17, .ofs_x = 1, .ofs_y = 0}, + {.bitmap_index = 1038, .adv_w = 237, .box_w = 14, .box_h = 17, .ofs_x = 0, .ofs_y = 0}, + {.bitmap_index = 1157, .adv_w = 406, .box_w = 22, .box_h = 13, .ofs_x = 2, .ofs_y = 0} +}; + +/*--------------------- + * CHARACTER MAPPING + *--------------------*/ + +static const uint16_t unicode_list_0[] = { + 0x0, 0x1, 0x2, 0x4, 0x5, 0x6, 0x7, 0x8, + 0x9, 0xa, 0xb, 0xc, 0xd, 0x41 +}; + +/*Collect the unicode lists and glyph_id offsets*/ +static const lv_font_fmt_txt_cmap_t cmaps[] = +{ + { + .range_start = 44, .range_length = 66, .glyph_id_start = 1, + .unicode_list = unicode_list_0, .glyph_id_ofs_list = NULL, .list_length = 14, .type = LV_FONT_FMT_TXT_CMAP_SPARSE_TINY + } +}; + +/*----------------- + * KERNING + *----------------*/ + + +/*Map glyph_ids to kern left classes*/ +static const uint8_t kern_left_class_mapping[] = +{ + 0, 1, 2, 1, 3, 0, 4, 5, + 6, 7, 8, 9, 10, 3, 11 +}; + +/*Map glyph_ids to kern right classes*/ +static const uint8_t kern_right_class_mapping[] = +{ + 0, 1, 2, 1, 3, 4, 5, 6, + 7, 8, 3, 9, 10, 11, 12 +}; + +/*Kern values between classes*/ +static const int8_t kern_class_values[] = +{ + 0, -3, -5, -5, 4, 4, -3, 0, + -5, 4, 0, 0, -3, 1, 3, -7, + -5, -8, 3, 0, -4, 0, 0, 0, + -5, 3, 0, -1, -1, -4, 0, 0, + -3, 0, 0, 0, 4, -3, -1, 0, + 0, 0, -7, 0, -1, 0, 0, 0, + 0, 0, 0, 0, -2, -2, 0, -4, + -5, 0, 0, 0, 8, 4, 0, -10, + -1, -5, 0, -1, -18, 4, -3, 0, + 0, 0, 0, 0, -2, -2, 0, -2, + -5, 0, 0, 0, 4, 2, 0, 0, + 0, 0, 0, 0, -3, 0, 0, 0, + -20, -19, -8, 4, 0, -3, -25, -7, + 0, -7, 0, -9, 4, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, -8, -2, 0, 0, 0, + -8, 0, -5, 0 +}; + + +/*Collect the kern class' data in one place*/ +static const lv_font_fmt_txt_kern_classes_t kern_classes = +{ + .class_pair_values = kern_class_values, + .left_class_mapping = kern_left_class_mapping, + .right_class_mapping = kern_right_class_mapping, + .left_class_cnt = 11, + .right_class_cnt = 12, +}; + +/*-------------------- + * ALL CUSTOM DATA + *--------------------*/ + +#if LVGL_VERSION_MAJOR >= 8 +/*Store all the custom data of the font*/ +static lv_font_fmt_txt_glyph_cache_t cache; +static const lv_font_fmt_txt_dsc_t font_dsc = { +#else +static lv_font_fmt_txt_dsc_t font_dsc = { +#endif + .glyph_bitmap = glyph_bitmap, + .glyph_dsc = glyph_dsc, + .cmaps = cmaps, + .kern_dsc = &kern_classes, + .kern_scale = 16, + .cmap_num = 1, + .bpp = 4, + .kern_classes = 1, + .bitmap_format = 0, +#if LVGL_VERSION_MAJOR >= 8 + .cache = &cache +#endif +}; + + +/*----------------- + * PUBLIC FONT + *----------------*/ + +/*Initialize a public general font descriptor*/ +#if LVGL_VERSION_MAJOR >= 8 +const lv_font_t monts_m_24 = { +#else +lv_font_t monts_m_24 = { +#endif + .get_glyph_dsc = lv_font_get_glyph_dsc_fmt_txt, /*Function pointer to get glyph's data*/ + .get_glyph_bitmap = lv_font_get_bitmap_fmt_txt, /*Function pointer to get glyph's bitmap*/ + .line_height = 21, /*The maximum line height required by the font*/ + .base_line = 4, /*Baseline measured from the bottom of the line*/ +#if !(LVGL_VERSION_MAJOR == 6 && LVGL_VERSION_MINOR == 0) + .subpx = LV_FONT_SUBPX_NONE, +#endif +#if LV_VERSION_CHECK(7, 4, 0) || LVGL_VERSION_MAJOR >= 8 + .underline_position = -2, + .underline_thickness = 1, +#endif + .dsc = &font_dsc, /*The custom font data. Will be accessed by `get_glyph_bitmap/dsc` */ +}; + + + +#endif /*#if MONTS_M_24*/ + diff --git a/fonts/monts_m_30.c b/fonts/monts_m_30.c new file mode 100644 index 0000000..e8efb07 --- /dev/null +++ b/fonts/monts_m_30.c @@ -0,0 +1,455 @@ +/******************************************************************************* + * Size: 30 px + * Bpp: 4 + * Opts: + ******************************************************************************/ + +#ifdef LV_LVGL_H_INCLUDE_SIMPLE +#include "lvgl.h" +#else +#include "lvgl/lvgl.h" +#endif + +#ifndef MONTS_M_30 +#define MONTS_M_30 1 +#endif + +#if MONTS_M_30 + +/*----------------- + * BITMAPS + *----------------*/ + +/*Store the image of the glyphs*/ +static LV_ATTRIBUTE_LARGE_CONST const uint8_t glyph_bitmap[] = { + /* U+002C "," */ + 0x1, 0x41, 0x3, 0xff, 0xe1, 0x8f, 0xff, 0x55, + 0xff, 0xf4, 0x9, 0xff, 0x0, 0x8f, 0xa0, 0xc, + 0xf5, 0x0, 0xff, 0x0, 0x4f, 0xa0, 0x0, + + /* U+002D "-" */ + 0x27, 0x77, 0x77, 0x77, 0x64, 0xff, 0xff, 0xff, + 0xfc, 0x4f, 0xff, 0xff, 0xff, 0xc0, + + /* U+002E "." */ + 0x0, 0x0, 0x1, 0xdf, 0xb0, 0x8f, 0xff, 0x58, + 0xff, 0xf4, 0x1b, 0xf9, 0x0, + + /* U+0030 "0" */ + 0x0, 0x0, 0x3, 0x9d, 0xff, 0xd9, 0x30, 0x0, + 0x0, 0x0, 0x0, 0xaf, 0xff, 0xff, 0xff, 0xfa, + 0x0, 0x0, 0x0, 0xc, 0xff, 0xfe, 0xbb, 0xef, + 0xff, 0xc0, 0x0, 0x0, 0xaf, 0xfe, 0x50, 0x0, + 0x5, 0xef, 0xfa, 0x0, 0x4, 0xff, 0xf2, 0x0, + 0x0, 0x0, 0x2f, 0xff, 0x40, 0xb, 0xff, 0x70, + 0x0, 0x0, 0x0, 0x7, 0xff, 0xb0, 0xf, 0xff, + 0x10, 0x0, 0x0, 0x0, 0x1, 0xff, 0xf0, 0x4f, + 0xfb, 0x0, 0x0, 0x0, 0x0, 0x0, 0xcf, 0xf4, + 0x6f, 0xf9, 0x0, 0x0, 0x0, 0x0, 0x0, 0x9f, + 0xf6, 0x8f, 0xf7, 0x0, 0x0, 0x0, 0x0, 0x0, + 0x7f, 0xf8, 0x8f, 0xf7, 0x0, 0x0, 0x0, 0x0, + 0x0, 0x7f, 0xf8, 0x8f, 0xf7, 0x0, 0x0, 0x0, + 0x0, 0x0, 0x7f, 0xf8, 0x6f, 0xf9, 0x0, 0x0, + 0x0, 0x0, 0x0, 0x9f, 0xf6, 0x4f, 0xfb, 0x0, + 0x0, 0x0, 0x0, 0x0, 0xcf, 0xf4, 0xf, 0xff, + 0x10, 0x0, 0x0, 0x0, 0x1, 0xff, 0xf0, 0xb, + 0xff, 0x70, 0x0, 0x0, 0x0, 0x7, 0xff, 0xb0, + 0x4, 0xff, 0xf2, 0x0, 0x0, 0x0, 0x2f, 0xff, + 0x40, 0x0, 0xaf, 0xfe, 0x50, 0x0, 0x4, 0xef, + 0xfa, 0x0, 0x0, 0xc, 0xff, 0xfe, 0xbb, 0xef, + 0xff, 0xc0, 0x0, 0x0, 0x1, 0xaf, 0xff, 0xff, + 0xff, 0xfa, 0x10, 0x0, 0x0, 0x0, 0x3, 0x9d, + 0xff, 0xda, 0x30, 0x0, 0x0, + + /* U+0031 "1" */ + 0xcf, 0xff, 0xff, 0xff, 0xcf, 0xff, 0xff, 0xff, + 0x79, 0x99, 0x9f, 0xff, 0x0, 0x0, 0xf, 0xff, + 0x0, 0x0, 0xf, 0xff, 0x0, 0x0, 0xf, 0xff, + 0x0, 0x0, 0xf, 0xff, 0x0, 0x0, 0xf, 0xff, + 0x0, 0x0, 0xf, 0xff, 0x0, 0x0, 0xf, 0xff, + 0x0, 0x0, 0xf, 0xff, 0x0, 0x0, 0xf, 0xff, + 0x0, 0x0, 0xf, 0xff, 0x0, 0x0, 0xf, 0xff, + 0x0, 0x0, 0xf, 0xff, 0x0, 0x0, 0xf, 0xff, + 0x0, 0x0, 0xf, 0xff, 0x0, 0x0, 0xf, 0xff, + 0x0, 0x0, 0xf, 0xff, 0x0, 0x0, 0xf, 0xff, + 0x0, 0x0, 0xf, 0xff, + + /* U+0032 "2" */ + 0x0, 0x1, 0x6b, 0xdf, 0xfe, 0xb6, 0x0, 0x0, + 0x0, 0x8, 0xff, 0xff, 0xff, 0xff, 0xfe, 0x40, + 0x0, 0x1c, 0xff, 0xff, 0xcb, 0xbd, 0xff, 0xff, + 0x30, 0x3, 0xef, 0xe5, 0x0, 0x0, 0x4, 0xdf, + 0xfd, 0x0, 0x2, 0xa1, 0x0, 0x0, 0x0, 0x2, + 0xff, 0xf2, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, + 0xc, 0xff, 0x40, 0x0, 0x0, 0x0, 0x0, 0x0, + 0x0, 0xcf, 0xf3, 0x0, 0x0, 0x0, 0x0, 0x0, + 0x0, 0xe, 0xff, 0x10, 0x0, 0x0, 0x0, 0x0, + 0x0, 0x6, 0xff, 0xb0, 0x0, 0x0, 0x0, 0x0, + 0x0, 0x2, 0xff, 0xf3, 0x0, 0x0, 0x0, 0x0, + 0x0, 0x2, 0xef, 0xf8, 0x0, 0x0, 0x0, 0x0, + 0x0, 0x2, 0xef, 0xfa, 0x0, 0x0, 0x0, 0x0, + 0x0, 0x3, 0xef, 0xf9, 0x0, 0x0, 0x0, 0x0, + 0x0, 0x3, 0xff, 0xf9, 0x0, 0x0, 0x0, 0x0, + 0x0, 0x4, 0xff, 0xf8, 0x0, 0x0, 0x0, 0x0, + 0x0, 0x4, 0xff, 0xf7, 0x0, 0x0, 0x0, 0x0, + 0x0, 0x5, 0xff, 0xf6, 0x0, 0x0, 0x0, 0x0, + 0x0, 0x6, 0xff, 0xf6, 0x0, 0x0, 0x0, 0x0, + 0x0, 0x6, 0xff, 0xfd, 0x99, 0x99, 0x99, 0x99, + 0x99, 0x10, 0xef, 0xff, 0xff, 0xff, 0xff, 0xff, + 0xff, 0xf3, 0xe, 0xff, 0xff, 0xff, 0xff, 0xff, + 0xff, 0xff, 0x30, + + /* U+0033 "3" */ + 0xe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xf0, + 0xe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xf0, + 0x8, 0x99, 0x99, 0x99, 0x99, 0x9f, 0xff, 0x90, + 0x0, 0x0, 0x0, 0x0, 0x0, 0x8f, 0xfb, 0x0, + 0x0, 0x0, 0x0, 0x0, 0x5, 0xff, 0xd1, 0x0, + 0x0, 0x0, 0x0, 0x0, 0x3f, 0xff, 0x20, 0x0, + 0x0, 0x0, 0x0, 0x1, 0xef, 0xf4, 0x0, 0x0, + 0x0, 0x0, 0x0, 0xc, 0xff, 0x70, 0x0, 0x0, + 0x0, 0x0, 0x0, 0xaf, 0xfd, 0x10, 0x0, 0x0, + 0x0, 0x0, 0x1, 0xff, 0xff, 0xfd, 0x80, 0x0, + 0x0, 0x0, 0x1, 0xff, 0xff, 0xff, 0xfd, 0x20, + 0x0, 0x0, 0x0, 0x11, 0x13, 0x8e, 0xff, 0xd0, + 0x0, 0x0, 0x0, 0x0, 0x0, 0x1, 0xef, 0xf6, + 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x6f, 0xfb, + 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x3f, 0xfc, + 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x4f, 0xfb, + 0x8, 0x30, 0x0, 0x0, 0x0, 0x0, 0xbf, 0xf7, + 0x4f, 0xfa, 0x30, 0x0, 0x0, 0x1a, 0xff, 0xf1, + 0x9f, 0xff, 0xfe, 0xca, 0xbd, 0xff, 0xff, 0x50, + 0x6, 0xef, 0xff, 0xff, 0xff, 0xff, 0xe5, 0x0, + 0x0, 0x4, 0x8c, 0xef, 0xfd, 0xb6, 0x0, 0x0, + + /* U+0034 "4" */ + 0x0, 0x0, 0x0, 0x0, 0x0, 0x8f, 0xfb, 0x0, + 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x4f, 0xfe, + 0x10, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x2e, + 0xff, 0x30, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, + 0xc, 0xff, 0x70, 0x0, 0x0, 0x0, 0x0, 0x0, + 0x0, 0x9, 0xff, 0xa0, 0x0, 0x0, 0x0, 0x0, + 0x0, 0x0, 0x5, 0xff, 0xd0, 0x0, 0x0, 0x0, + 0x0, 0x0, 0x0, 0x2, 0xff, 0xf2, 0x0, 0x0, + 0x0, 0x0, 0x0, 0x0, 0x0, 0xdf, 0xf5, 0x0, + 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xaf, 0xf9, + 0x0, 0x0, 0x33, 0x20, 0x0, 0x0, 0x0, 0x7f, + 0xfc, 0x0, 0x0, 0x1f, 0xfb, 0x0, 0x0, 0x0, + 0x3f, 0xfe, 0x20, 0x0, 0x1, 0xff, 0xb0, 0x0, + 0x0, 0x1e, 0xff, 0x40, 0x0, 0x0, 0x1f, 0xfb, + 0x0, 0x0, 0xc, 0xff, 0x80, 0x0, 0x0, 0x1, + 0xff, 0xb0, 0x0, 0x8, 0xff, 0xf9, 0x99, 0x99, + 0x99, 0x9f, 0xfe, 0x99, 0x96, 0xdf, 0xff, 0xff, + 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbd, 0xff, + 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfb, + 0x0, 0x0, 0x0, 0x0, 0x0, 0x3, 0xff, 0xb0, + 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x3f, + 0xfb, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, + 0x3, 0xff, 0xb0, 0x0, 0x0, 0x0, 0x0, 0x0, + 0x0, 0x0, 0x3f, 0xfb, 0x0, 0x0, 0x0, 0x0, + 0x0, 0x0, 0x0, 0x3, 0xff, 0xb0, 0x0, 0x0, + + /* U+0035 "5" */ + 0x0, 0xe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xf0, + 0x0, 0x0, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, + 0x0, 0x0, 0x1f, 0xfd, 0x99, 0x99, 0x99, 0x99, + 0x90, 0x0, 0x3, 0xff, 0x90, 0x0, 0x0, 0x0, + 0x0, 0x0, 0x0, 0x5f, 0xf7, 0x0, 0x0, 0x0, + 0x0, 0x0, 0x0, 0x6, 0xff, 0x50, 0x0, 0x0, + 0x0, 0x0, 0x0, 0x0, 0x8f, 0xf4, 0x0, 0x0, + 0x0, 0x0, 0x0, 0x0, 0xa, 0xff, 0x20, 0x0, + 0x0, 0x0, 0x0, 0x0, 0x0, 0xbf, 0xff, 0xff, + 0xfe, 0xb8, 0x20, 0x0, 0x0, 0xd, 0xff, 0xff, + 0xff, 0xff, 0xff, 0x90, 0x0, 0x0, 0x89, 0x99, + 0x9a, 0xbd, 0xff, 0xff, 0xc0, 0x0, 0x0, 0x0, + 0x0, 0x0, 0x1, 0x8f, 0xff, 0x70, 0x0, 0x0, + 0x0, 0x0, 0x0, 0x0, 0x6f, 0xfe, 0x0, 0x0, + 0x0, 0x0, 0x0, 0x0, 0x0, 0xff, 0xf1, 0x0, + 0x0, 0x0, 0x0, 0x0, 0x0, 0xd, 0xff, 0x20, + 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xff, 0xf0, + 0x5, 0x70, 0x0, 0x0, 0x0, 0x0, 0x6f, 0xfc, + 0x0, 0xef, 0xd5, 0x0, 0x0, 0x0, 0x7f, 0xff, + 0x60, 0x3f, 0xff, 0xff, 0xdb, 0xac, 0xff, 0xff, + 0xa0, 0x0, 0x2b, 0xff, 0xff, 0xff, 0xff, 0xff, + 0x90, 0x0, 0x0, 0x2, 0x7b, 0xdf, 0xfe, 0xc8, + 0x20, 0x0, 0x0, + + /* U+0036 "6" */ + 0x0, 0x0, 0x0, 0x5a, 0xdf, 0xff, 0xc9, 0x40, + 0x0, 0x0, 0x4, 0xef, 0xff, 0xff, 0xff, 0xff, + 0x60, 0x0, 0x7, 0xff, 0xff, 0xca, 0x99, 0xcf, + 0xe0, 0x0, 0x6, 0xff, 0xf9, 0x10, 0x0, 0x0, + 0x13, 0x0, 0x1, 0xff, 0xf5, 0x0, 0x0, 0x0, + 0x0, 0x0, 0x0, 0x9f, 0xf8, 0x0, 0x0, 0x0, + 0x0, 0x0, 0x0, 0xe, 0xff, 0x10, 0x0, 0x0, + 0x0, 0x0, 0x0, 0x3, 0xff, 0xb0, 0x0, 0x0, + 0x0, 0x0, 0x0, 0x0, 0x6f, 0xf8, 0x1, 0x7c, + 0xef, 0xec, 0x71, 0x0, 0x8, 0xff, 0x75, 0xff, + 0xff, 0xff, 0xff, 0xe5, 0x0, 0x8f, 0xfb, 0xff, + 0xea, 0x77, 0x9e, 0xff, 0xf5, 0x8, 0xff, 0xff, + 0xa0, 0x0, 0x0, 0x9, 0xff, 0xe0, 0x7f, 0xff, + 0xc0, 0x0, 0x0, 0x0, 0xb, 0xff, 0x65, 0xff, + 0xf5, 0x0, 0x0, 0x0, 0x0, 0x5f, 0xf9, 0x1f, + 0xff, 0x30, 0x0, 0x0, 0x0, 0x3, 0xff, 0xa0, + 0xdf, 0xf5, 0x0, 0x0, 0x0, 0x0, 0x5f, 0xf8, + 0x6, 0xff, 0xb0, 0x0, 0x0, 0x0, 0xb, 0xff, + 0x50, 0xd, 0xff, 0xa0, 0x0, 0x0, 0x9, 0xff, + 0xd0, 0x0, 0x2e, 0xff, 0xea, 0x77, 0x9e, 0xff, + 0xf3, 0x0, 0x0, 0x2c, 0xff, 0xff, 0xff, 0xff, + 0xd3, 0x0, 0x0, 0x0, 0x4, 0x9d, 0xff, 0xeb, + 0x60, 0x0, 0x0, + + /* U+0037 "7" */ + 0x1f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, + 0xb1, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, + 0xfb, 0x1f, 0xfe, 0x99, 0x99, 0x99, 0x99, 0x9e, + 0xff, 0x81, 0xff, 0xc0, 0x0, 0x0, 0x0, 0x1, + 0xff, 0xf1, 0x1f, 0xfc, 0x0, 0x0, 0x0, 0x0, + 0x7f, 0xfa, 0x1, 0xff, 0xc0, 0x0, 0x0, 0x0, + 0xe, 0xff, 0x20, 0x5, 0x54, 0x0, 0x0, 0x0, + 0x6, 0xff, 0xb0, 0x0, 0x0, 0x0, 0x0, 0x0, + 0x0, 0xdf, 0xf4, 0x0, 0x0, 0x0, 0x0, 0x0, + 0x0, 0x4f, 0xfd, 0x0, 0x0, 0x0, 0x0, 0x0, + 0x0, 0xb, 0xff, 0x60, 0x0, 0x0, 0x0, 0x0, + 0x0, 0x3, 0xff, 0xe0, 0x0, 0x0, 0x0, 0x0, + 0x0, 0x0, 0xaf, 0xf7, 0x0, 0x0, 0x0, 0x0, + 0x0, 0x0, 0x1f, 0xff, 0x10, 0x0, 0x0, 0x0, + 0x0, 0x0, 0x8, 0xff, 0x90, 0x0, 0x0, 0x0, + 0x0, 0x0, 0x0, 0xff, 0xf2, 0x0, 0x0, 0x0, + 0x0, 0x0, 0x0, 0x7f, 0xfb, 0x0, 0x0, 0x0, + 0x0, 0x0, 0x0, 0xe, 0xff, 0x40, 0x0, 0x0, + 0x0, 0x0, 0x0, 0x5, 0xff, 0xd0, 0x0, 0x0, + 0x0, 0x0, 0x0, 0x0, 0xcf, 0xf5, 0x0, 0x0, + 0x0, 0x0, 0x0, 0x0, 0x4f, 0xfe, 0x0, 0x0, + 0x0, 0x0, 0x0, 0x0, 0xb, 0xff, 0x70, 0x0, + 0x0, 0x0, 0x0, + + /* U+0038 "8" */ + 0x0, 0x0, 0x39, 0xce, 0xfe, 0xda, 0x50, 0x0, + 0x0, 0x1, 0xbf, 0xff, 0xff, 0xff, 0xff, 0xd3, + 0x0, 0x0, 0xdf, 0xff, 0xb8, 0x78, 0xaf, 0xff, + 0xf3, 0x0, 0x7f, 0xfe, 0x30, 0x0, 0x0, 0x1a, + 0xff, 0xc0, 0xc, 0xff, 0x40, 0x0, 0x0, 0x0, + 0xe, 0xff, 0x10, 0xef, 0xf1, 0x0, 0x0, 0x0, + 0x0, 0xbf, 0xf3, 0xc, 0xff, 0x30, 0x0, 0x0, + 0x0, 0xd, 0xff, 0x10, 0x7f, 0xfc, 0x10, 0x0, + 0x0, 0x8, 0xff, 0xb0, 0x0, 0xbf, 0xff, 0x96, + 0x45, 0x8d, 0xff, 0xe2, 0x0, 0x0, 0x8f, 0xff, + 0xff, 0xff, 0xff, 0xb1, 0x0, 0x0, 0x6e, 0xff, + 0xff, 0xff, 0xff, 0xff, 0x90, 0x0, 0x7f, 0xff, + 0x93, 0x10, 0x3, 0x7e, 0xff, 0xb0, 0x2f, 0xff, + 0x30, 0x0, 0x0, 0x0, 0x1d, 0xff, 0x67, 0xff, + 0x80, 0x0, 0x0, 0x0, 0x0, 0x3f, 0xfc, 0xaf, + 0xf5, 0x0, 0x0, 0x0, 0x0, 0x0, 0xff, 0xfa, + 0xff, 0x60, 0x0, 0x0, 0x0, 0x0, 0x1f, 0xff, + 0x7f, 0xfc, 0x0, 0x0, 0x0, 0x0, 0x7, 0xff, + 0xc1, 0xff, 0xfa, 0x10, 0x0, 0x0, 0x7, 0xff, + 0xf5, 0x5, 0xff, 0xff, 0xa7, 0x67, 0x9e, 0xff, + 0xf9, 0x0, 0x4, 0xdf, 0xff, 0xff, 0xff, 0xff, + 0xf7, 0x0, 0x0, 0x0, 0x59, 0xde, 0xfe, 0xdb, + 0x61, 0x0, 0x0, + + /* U+0039 "9" */ + 0x0, 0x0, 0x38, 0xde, 0xfe, 0xc7, 0x10, 0x0, + 0x0, 0x0, 0x9, 0xff, 0xff, 0xff, 0xff, 0xf7, + 0x0, 0x0, 0x0, 0xbf, 0xff, 0xb7, 0x78, 0xcf, + 0xff, 0x80, 0x0, 0x6, 0xff, 0xd2, 0x0, 0x0, + 0x3, 0xdf, 0xf5, 0x0, 0xd, 0xff, 0x20, 0x0, + 0x0, 0x0, 0x2f, 0xfe, 0x0, 0xf, 0xfd, 0x0, + 0x0, 0x0, 0x0, 0xb, 0xff, 0x50, 0x1f, 0xfc, + 0x0, 0x0, 0x0, 0x0, 0xa, 0xff, 0x90, 0xf, + 0xff, 0x0, 0x0, 0x0, 0x0, 0xe, 0xff, 0xd0, + 0xb, 0xff, 0x90, 0x0, 0x0, 0x0, 0x9f, 0xff, + 0xf0, 0x3, 0xff, 0xfb, 0x41, 0x1, 0x5c, 0xff, + 0xff, 0xf0, 0x0, 0x6f, 0xff, 0xff, 0xff, 0xff, + 0xf5, 0xff, 0xf0, 0x0, 0x3, 0xbf, 0xff, 0xff, + 0xfb, 0x30, 0xff, 0xf0, 0x0, 0x0, 0x1, 0x46, + 0x64, 0x10, 0x1, 0xff, 0xe0, 0x0, 0x0, 0x0, + 0x0, 0x0, 0x0, 0x5, 0xff, 0xb0, 0x0, 0x0, + 0x0, 0x0, 0x0, 0x0, 0xa, 0xff, 0x70, 0x0, + 0x0, 0x0, 0x0, 0x0, 0x0, 0x2f, 0xff, 0x10, + 0x0, 0x0, 0x0, 0x0, 0x0, 0x1, 0xdf, 0xf9, + 0x0, 0x0, 0x5, 0x0, 0x0, 0x0, 0x5e, 0xff, + 0xd0, 0x0, 0x0, 0x7f, 0xeb, 0xa9, 0xae, 0xff, + 0xfd, 0x20, 0x0, 0x0, 0xdf, 0xff, 0xff, 0xff, + 0xff, 0xa1, 0x0, 0x0, 0x0, 0x17, 0xbe, 0xff, + 0xec, 0x82, 0x0, 0x0, 0x0, + + /* U+006D "m" */ + 0x4f, 0xf7, 0x3, 0x9d, 0xff, 0xd8, 0x20, 0x0, + 0x6, 0xbe, 0xfe, 0xc7, 0x0, 0x0, 0x4f, 0xf7, + 0x9f, 0xff, 0xff, 0xff, 0xf6, 0x4, 0xef, 0xff, + 0xff, 0xff, 0xe2, 0x0, 0x4f, 0xfe, 0xff, 0xc8, + 0x78, 0xef, 0xff, 0x8f, 0xff, 0xa7, 0x79, 0xff, + 0xfe, 0x10, 0x4f, 0xff, 0xf5, 0x0, 0x0, 0xb, + 0xff, 0xff, 0xd2, 0x0, 0x0, 0x1d, 0xff, 0x80, + 0x4f, 0xff, 0x60, 0x0, 0x0, 0x1, 0xff, 0xff, + 0x20, 0x0, 0x0, 0x4, 0xff, 0xd0, 0x4f, 0xfe, + 0x0, 0x0, 0x0, 0x0, 0xbf, 0xfb, 0x0, 0x0, + 0x0, 0x0, 0xef, 0xf0, 0x4f, 0xfb, 0x0, 0x0, + 0x0, 0x0, 0x8f, 0xf7, 0x0, 0x0, 0x0, 0x0, + 0xcf, 0xf1, 0x4f, 0xfa, 0x0, 0x0, 0x0, 0x0, + 0x8f, 0xf6, 0x0, 0x0, 0x0, 0x0, 0xcf, 0xf2, + 0x4f, 0xf9, 0x0, 0x0, 0x0, 0x0, 0x8f, 0xf6, + 0x0, 0x0, 0x0, 0x0, 0xcf, 0xf2, 0x4f, 0xf9, + 0x0, 0x0, 0x0, 0x0, 0x8f, 0xf6, 0x0, 0x0, + 0x0, 0x0, 0xcf, 0xf2, 0x4f, 0xf9, 0x0, 0x0, + 0x0, 0x0, 0x8f, 0xf6, 0x0, 0x0, 0x0, 0x0, + 0xcf, 0xf2, 0x4f, 0xf9, 0x0, 0x0, 0x0, 0x0, + 0x8f, 0xf6, 0x0, 0x0, 0x0, 0x0, 0xcf, 0xf2, + 0x4f, 0xf9, 0x0, 0x0, 0x0, 0x0, 0x8f, 0xf6, + 0x0, 0x0, 0x0, 0x0, 0xcf, 0xf2, 0x4f, 0xf9, + 0x0, 0x0, 0x0, 0x0, 0x8f, 0xf6, 0x0, 0x0, + 0x0, 0x0, 0xcf, 0xf2, 0x4f, 0xf9, 0x0, 0x0, + 0x0, 0x0, 0x8f, 0xf6, 0x0, 0x0, 0x0, 0x0, + 0xcf, 0xf2, 0x4f, 0xf9, 0x0, 0x0, 0x0, 0x0, + 0x8f, 0xf6, 0x0, 0x0, 0x0, 0x0, 0xcf, 0xf2 +}; + + +/*--------------------- + * GLYPH DESCRIPTION + *--------------------*/ + +static const lv_font_fmt_txt_glyph_dsc_t glyph_dsc[] = { + {.bitmap_index = 0, .adv_w = 0, .box_w = 0, .box_h = 0, .ofs_x = 0, .ofs_y = 0} /* id = 0 reserved */, + {.bitmap_index = 0, .adv_w = 109, .box_w = 5, .box_h = 9, .ofs_x = 1, .ofs_y = -4}, + {.bitmap_index = 23, .adv_w = 184, .box_w = 9, .box_h = 3, .ofs_x = 1, .ofs_y = 7}, + {.bitmap_index = 37, .adv_w = 109, .box_w = 5, .box_h = 5, .ofs_x = 1, .ofs_y = 0}, + {.bitmap_index = 50, .adv_w = 320, .box_w = 18, .box_h = 21, .ofs_x = 1, .ofs_y = 0}, + {.bitmap_index = 239, .adv_w = 178, .box_w = 8, .box_h = 21, .ofs_x = 0, .ofs_y = 0}, + {.bitmap_index = 323, .adv_w = 276, .box_w = 17, .box_h = 21, .ofs_x = 0, .ofs_y = 0}, + {.bitmap_index = 502, .adv_w = 275, .box_w = 16, .box_h = 21, .ofs_x = 0, .ofs_y = 0}, + {.bitmap_index = 670, .adv_w = 321, .box_w = 19, .box_h = 21, .ofs_x = 1, .ofs_y = 0}, + {.bitmap_index = 870, .adv_w = 276, .box_w = 17, .box_h = 21, .ofs_x = 0, .ofs_y = 0}, + {.bitmap_index = 1049, .adv_w = 296, .box_w = 17, .box_h = 21, .ofs_x = 1, .ofs_y = 0}, + {.bitmap_index = 1228, .adv_w = 287, .box_w = 17, .box_h = 21, .ofs_x = 0, .ofs_y = 0}, + {.bitmap_index = 1407, .adv_w = 309, .box_w = 17, .box_h = 21, .ofs_x = 1, .ofs_y = 0}, + {.bitmap_index = 1586, .adv_w = 296, .box_w = 18, .box_h = 21, .ofs_x = 0, .ofs_y = 0}, + {.bitmap_index = 1775, .adv_w = 507, .box_w = 28, .box_h = 16, .ofs_x = 2, .ofs_y = 0} +}; + +/*--------------------- + * CHARACTER MAPPING + *--------------------*/ + +static const uint16_t unicode_list_0[] = { + 0x0, 0x1, 0x2, 0x4, 0x5, 0x6, 0x7, 0x8, + 0x9, 0xa, 0xb, 0xc, 0xd, 0x41 +}; + +/*Collect the unicode lists and glyph_id offsets*/ +static const lv_font_fmt_txt_cmap_t cmaps[] = +{ + { + .range_start = 44, .range_length = 66, .glyph_id_start = 1, + .unicode_list = unicode_list_0, .glyph_id_ofs_list = NULL, .list_length = 14, .type = LV_FONT_FMT_TXT_CMAP_SPARSE_TINY + } +}; + +/*----------------- + * KERNING + *----------------*/ + + +/*Map glyph_ids to kern left classes*/ +static const uint8_t kern_left_class_mapping[] = +{ + 0, 1, 2, 1, 3, 0, 4, 5, + 6, 7, 8, 9, 10, 3, 11 +}; + +/*Map glyph_ids to kern right classes*/ +static const uint8_t kern_right_class_mapping[] = +{ + 0, 1, 2, 1, 3, 4, 5, 6, + 7, 8, 3, 9, 10, 11, 12 +}; + +/*Kern values between classes*/ +static const int8_t kern_class_values[] = +{ + 0, -3, -6, -6, 5, 5, -4, 0, + -6, 5, 0, 0, -3, 1, 3, -9, + -6, -10, 3, 0, -5, 0, 0, 0, + -6, 3, 0, -1, -1, -5, 0, 0, + -3, 0, 0, 0, 5, -3, -1, 0, + 0, 0, -9, 0, -1, 0, 0, 0, + 0, 0, 0, 0, -2, -2, 0, -5, + -6, 0, 0, 0, 10, 5, 0, -12, + -1, -6, 0, -1, -23, 5, -3, 0, + 0, 0, 0, 0, -2, -2, 0, -2, + -6, 0, 0, 0, 5, 2, 0, 0, + 0, 0, 0, 0, -3, 0, 0, 0, + -25, -24, -10, 5, 0, -4, -31, -9, + 0, -9, 0, -12, 5, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, -11, -2, 0, 0, 0, + -11, 0, -6, 0 +}; + + +/*Collect the kern class' data in one place*/ +static const lv_font_fmt_txt_kern_classes_t kern_classes = +{ + .class_pair_values = kern_class_values, + .left_class_mapping = kern_left_class_mapping, + .right_class_mapping = kern_right_class_mapping, + .left_class_cnt = 11, + .right_class_cnt = 12, +}; + +/*-------------------- + * ALL CUSTOM DATA + *--------------------*/ + +#if LVGL_VERSION_MAJOR >= 8 +/*Store all the custom data of the font*/ +static lv_font_fmt_txt_glyph_cache_t cache; +static const lv_font_fmt_txt_dsc_t font_dsc = { +#else +static lv_font_fmt_txt_dsc_t font_dsc = { +#endif + .glyph_bitmap = glyph_bitmap, + .glyph_dsc = glyph_dsc, + .cmaps = cmaps, + .kern_dsc = &kern_classes, + .kern_scale = 16, + .cmap_num = 1, + .bpp = 4, + .kern_classes = 1, + .bitmap_format = 0, +#if LVGL_VERSION_MAJOR >= 8 + .cache = &cache +#endif +}; + + +/*----------------- + * PUBLIC FONT + *----------------*/ + +/*Initialize a public general font descriptor*/ +#if LVGL_VERSION_MAJOR >= 8 +const lv_font_t monts_m_30 = { +#else +lv_font_t monts_m_30 = { +#endif + .get_glyph_dsc = lv_font_get_glyph_dsc_fmt_txt, /*Function pointer to get glyph's data*/ + .get_glyph_bitmap = lv_font_get_bitmap_fmt_txt, /*Function pointer to get glyph's bitmap*/ + .line_height = 25, /*The maximum line height required by the font*/ + .base_line = 4, /*Baseline measured from the bottom of the line*/ +#if !(LVGL_VERSION_MAJOR == 6 && LVGL_VERSION_MINOR == 0) + .subpx = LV_FONT_SUBPX_NONE, +#endif +#if LV_VERSION_CHECK(7, 4, 0) || LVGL_VERSION_MAJOR >= 8 + .underline_position = -2, + .underline_thickness = 2, +#endif + .dsc = &font_dsc, /*The custom font data. Will be accessed by `get_glyph_bitmap/dsc` */ +}; + + + +#endif /*#if MONTS_M_30*/ + diff --git a/fonts/monts_m_32.c b/fonts/monts_m_32.c new file mode 100644 index 0000000..4d1cc51 --- /dev/null +++ b/fonts/monts_m_32.c @@ -0,0 +1,441 @@ +/******************************************************************************* + * Size: 32 px + * Bpp: 4 + * Opts: + ******************************************************************************/ + +#ifdef LV_LVGL_H_INCLUDE_SIMPLE +#include "lvgl.h" +#else +#include "lvgl/lvgl.h" +#endif + +#ifndef MONTS_M_32 +#define MONTS_M_32 1 +#endif + +#if MONTS_M_32 + +/*----------------- + * BITMAPS + *----------------*/ + +/*Store the image of the glyphs*/ +static LV_ATTRIBUTE_LARGE_CONST const uint8_t glyph_bitmap[] = { + /* U+002C "," */ + 0x7, 0xca, 0x14, 0xff, 0xf9, 0x6f, 0xff, 0xb2, + 0xef, 0xf8, 0x4, 0xff, 0x30, 0x6f, 0xe0, 0xa, + 0xf9, 0x0, 0xef, 0x30, 0x2f, 0xe0, 0x0, + + /* U+002E "." */ + 0x1, 0x42, 0x1, 0xef, 0xf4, 0x7f, 0xff, 0xb6, + 0xff, 0xf9, 0xa, 0xfc, 0x10, + + /* U+0030 "0" */ + 0x0, 0x0, 0x0, 0x6b, 0xef, 0xfc, 0x82, 0x0, + 0x0, 0x0, 0x0, 0x5, 0xef, 0xff, 0xff, 0xff, + 0xf9, 0x0, 0x0, 0x0, 0x7, 0xff, 0xff, 0xfd, + 0xef, 0xff, 0xfc, 0x0, 0x0, 0x5, 0xff, 0xfc, + 0x40, 0x0, 0x29, 0xff, 0xfa, 0x0, 0x0, 0xef, + 0xfb, 0x0, 0x0, 0x0, 0x6, 0xff, 0xf4, 0x0, + 0x7f, 0xfe, 0x10, 0x0, 0x0, 0x0, 0xa, 0xff, + 0xc0, 0xd, 0xff, 0x70, 0x0, 0x0, 0x0, 0x0, + 0x2f, 0xff, 0x21, 0xff, 0xf2, 0x0, 0x0, 0x0, + 0x0, 0x0, 0xdf, 0xf6, 0x4f, 0xff, 0x0, 0x0, + 0x0, 0x0, 0x0, 0x9, 0xff, 0x96, 0xff, 0xd0, + 0x0, 0x0, 0x0, 0x0, 0x0, 0x7f, 0xfb, 0x7f, + 0xfc, 0x0, 0x0, 0x0, 0x0, 0x0, 0x6, 0xff, + 0xc7, 0xff, 0xc0, 0x0, 0x0, 0x0, 0x0, 0x0, + 0x6f, 0xfc, 0x6f, 0xfd, 0x0, 0x0, 0x0, 0x0, + 0x0, 0x7, 0xff, 0xb4, 0xff, 0xf0, 0x0, 0x0, + 0x0, 0x0, 0x0, 0x9f, 0xf9, 0x1f, 0xff, 0x20, + 0x0, 0x0, 0x0, 0x0, 0xd, 0xff, 0x60, 0xdf, + 0xf7, 0x0, 0x0, 0x0, 0x0, 0x2, 0xff, 0xf2, + 0x7, 0xff, 0xe1, 0x0, 0x0, 0x0, 0x0, 0xaf, + 0xfc, 0x0, 0xe, 0xff, 0xb0, 0x0, 0x0, 0x0, + 0x6f, 0xff, 0x40, 0x0, 0x5f, 0xff, 0xc4, 0x0, + 0x2, 0x9f, 0xff, 0xa0, 0x0, 0x0, 0x7f, 0xff, + 0xff, 0xde, 0xff, 0xff, 0xc0, 0x0, 0x0, 0x0, + 0x5e, 0xff, 0xff, 0xff, 0xff, 0x90, 0x0, 0x0, + 0x0, 0x0, 0x6, 0xbe, 0xff, 0xd8, 0x20, 0x0, + 0x0, + + /* U+0031 "1" */ + 0xcf, 0xff, 0xff, 0xff, 0x7c, 0xff, 0xff, 0xff, + 0xf7, 0x9c, 0xcc, 0xce, 0xff, 0x70, 0x0, 0x0, + 0xbf, 0xf7, 0x0, 0x0, 0xb, 0xff, 0x70, 0x0, + 0x0, 0xbf, 0xf7, 0x0, 0x0, 0xb, 0xff, 0x70, + 0x0, 0x0, 0xbf, 0xf7, 0x0, 0x0, 0xb, 0xff, + 0x70, 0x0, 0x0, 0xbf, 0xf7, 0x0, 0x0, 0xb, + 0xff, 0x70, 0x0, 0x0, 0xbf, 0xf7, 0x0, 0x0, + 0xb, 0xff, 0x70, 0x0, 0x0, 0xbf, 0xf7, 0x0, + 0x0, 0xb, 0xff, 0x70, 0x0, 0x0, 0xbf, 0xf7, + 0x0, 0x0, 0xb, 0xff, 0x70, 0x0, 0x0, 0xbf, + 0xf7, 0x0, 0x0, 0xb, 0xff, 0x70, 0x0, 0x0, + 0xbf, 0xf7, 0x0, 0x0, 0xb, 0xff, 0x70, 0x0, + 0x0, 0xbf, 0xf7, + + /* U+0032 "2" */ + 0x0, 0x0, 0x49, 0xce, 0xff, 0xda, 0x50, 0x0, + 0x0, 0x0, 0x5d, 0xff, 0xff, 0xff, 0xff, 0xfd, + 0x20, 0x0, 0x9, 0xff, 0xff, 0xfe, 0xde, 0xff, + 0xff, 0xe2, 0x0, 0x4f, 0xff, 0xb4, 0x0, 0x0, + 0x18, 0xff, 0xfb, 0x0, 0x4, 0xe6, 0x0, 0x0, + 0x0, 0x0, 0x7f, 0xff, 0x10, 0x0, 0x0, 0x0, + 0x0, 0x0, 0x0, 0xf, 0xff, 0x40, 0x0, 0x0, + 0x0, 0x0, 0x0, 0x0, 0xe, 0xff, 0x40, 0x0, + 0x0, 0x0, 0x0, 0x0, 0x0, 0xf, 0xff, 0x20, + 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x6f, 0xfd, + 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x1, 0xef, + 0xf6, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xc, + 0xff, 0xc0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x1, + 0xcf, 0xfd, 0x10, 0x0, 0x0, 0x0, 0x0, 0x0, + 0x1d, 0xff, 0xd1, 0x0, 0x0, 0x0, 0x0, 0x0, + 0x2, 0xdf, 0xfd, 0x10, 0x0, 0x0, 0x0, 0x0, + 0x0, 0x2e, 0xff, 0xc1, 0x0, 0x0, 0x0, 0x0, + 0x0, 0x3, 0xef, 0xfb, 0x0, 0x0, 0x0, 0x0, + 0x0, 0x0, 0x4f, 0xff, 0xb0, 0x0, 0x0, 0x0, + 0x0, 0x0, 0x5, 0xff, 0xfa, 0x0, 0x0, 0x0, + 0x0, 0x0, 0x0, 0x6f, 0xff, 0x90, 0x0, 0x0, + 0x0, 0x0, 0x0, 0x6, 0xff, 0xff, 0xcc, 0xcc, + 0xcc, 0xcc, 0xcc, 0xc3, 0xd, 0xff, 0xff, 0xff, + 0xff, 0xff, 0xff, 0xff, 0xf4, 0xd, 0xff, 0xff, + 0xff, 0xff, 0xff, 0xff, 0xff, 0xf4, + + /* U+0033 "3" */ + 0xd, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, + 0x0, 0xdf, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, + 0xf0, 0x9, 0xcc, 0xcc, 0xcc, 0xcc, 0xcc, 0xff, + 0xfa, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xaf, + 0xfc, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x8f, + 0xfe, 0x10, 0x0, 0x0, 0x0, 0x0, 0x0, 0x5f, + 0xff, 0x30, 0x0, 0x0, 0x0, 0x0, 0x0, 0x3f, + 0xff, 0x50, 0x0, 0x0, 0x0, 0x0, 0x0, 0x1e, + 0xff, 0x70, 0x0, 0x0, 0x0, 0x0, 0x0, 0xd, + 0xff, 0xa0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x9, + 0xff, 0xfd, 0xa5, 0x0, 0x0, 0x0, 0x0, 0x0, + 0xaf, 0xff, 0xff, 0xfe, 0x50, 0x0, 0x0, 0x0, + 0x6, 0x99, 0xad, 0xff, 0xff, 0x70, 0x0, 0x0, + 0x0, 0x0, 0x0, 0x2, 0xbf, 0xff, 0x20, 0x0, + 0x0, 0x0, 0x0, 0x0, 0x0, 0xdf, 0xf9, 0x0, + 0x0, 0x0, 0x0, 0x0, 0x0, 0x7, 0xff, 0xc0, + 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x5f, 0xfd, + 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x8, 0xff, + 0xb0, 0xb8, 0x0, 0x0, 0x0, 0x0, 0x2, 0xff, + 0xf7, 0x5f, 0xfe, 0x83, 0x0, 0x0, 0x16, 0xef, + 0xfe, 0x7, 0xff, 0xff, 0xff, 0xed, 0xef, 0xff, + 0xff, 0x30, 0x4, 0xcf, 0xff, 0xff, 0xff, 0xff, + 0xfc, 0x30, 0x0, 0x0, 0x27, 0xbd, 0xef, 0xed, + 0x94, 0x0, 0x0, + + /* U+0034 "4" */ + 0x0, 0x0, 0x0, 0x0, 0x0, 0xb, 0xff, 0xb0, + 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x8, + 0xff, 0xd1, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, + 0x0, 0x4, 0xff, 0xf3, 0x0, 0x0, 0x0, 0x0, + 0x0, 0x0, 0x0, 0x2, 0xff, 0xf6, 0x0, 0x0, + 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xdf, 0xf9, + 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, + 0xaf, 0xfc, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, + 0x0, 0x0, 0x7f, 0xfe, 0x10, 0x0, 0x0, 0x0, + 0x0, 0x0, 0x0, 0x0, 0x4f, 0xff, 0x40, 0x0, + 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x1e, 0xff, + 0x70, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, + 0xc, 0xff, 0xa0, 0x0, 0x3, 0xdd, 0x90, 0x0, + 0x0, 0x0, 0x9, 0xff, 0xd0, 0x0, 0x0, 0x3f, + 0xfc, 0x0, 0x0, 0x0, 0x6, 0xff, 0xf2, 0x0, + 0x0, 0x3, 0xff, 0xc0, 0x0, 0x0, 0x3, 0xff, + 0xf5, 0x0, 0x0, 0x0, 0x3f, 0xfc, 0x0, 0x0, + 0x1, 0xef, 0xf8, 0x0, 0x0, 0x0, 0x3, 0xff, + 0xc0, 0x0, 0x0, 0xaf, 0xff, 0xff, 0xff, 0xff, + 0xff, 0xff, 0xff, 0xff, 0xff, 0xc, 0xff, 0xff, + 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xf0, + 0x9b, 0xbb, 0xbb, 0xbb, 0xbb, 0xbb, 0xdf, 0xff, + 0xbb, 0xbb, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, + 0x5, 0xff, 0xc0, 0x0, 0x0, 0x0, 0x0, 0x0, + 0x0, 0x0, 0x0, 0x5f, 0xfc, 0x0, 0x0, 0x0, + 0x0, 0x0, 0x0, 0x0, 0x0, 0x5, 0xff, 0xc0, + 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, + 0x5f, 0xfc, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, + 0x0, 0x0, 0x5, 0xff, 0xc0, 0x0, 0x0, + + /* U+0035 "5" */ + 0x0, 0xb, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, + 0x0, 0x0, 0xc, 0xff, 0xff, 0xff, 0xff, 0xff, + 0xff, 0x0, 0x0, 0xe, 0xff, 0xcc, 0xcc, 0xcc, + 0xcc, 0xcc, 0x0, 0x0, 0xf, 0xff, 0x0, 0x0, + 0x0, 0x0, 0x0, 0x0, 0x0, 0x2f, 0xfd, 0x0, + 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x3f, 0xfb, + 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x5f, + 0xfa, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, + 0x7f, 0xf8, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, + 0x0, 0x8f, 0xfd, 0xcc, 0xba, 0x96, 0x20, 0x0, + 0x0, 0x0, 0xaf, 0xff, 0xff, 0xff, 0xff, 0xfc, + 0x40, 0x0, 0x0, 0xcf, 0xff, 0xff, 0xff, 0xff, + 0xff, 0xf6, 0x0, 0x0, 0x0, 0x0, 0x0, 0x2, + 0x49, 0xff, 0xff, 0x40, 0x0, 0x0, 0x0, 0x0, + 0x0, 0x0, 0x2e, 0xff, 0xc0, 0x0, 0x0, 0x0, + 0x0, 0x0, 0x0, 0x4, 0xff, 0xf1, 0x0, 0x0, + 0x0, 0x0, 0x0, 0x0, 0x0, 0xff, 0xf3, 0x0, + 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xff, 0xf2, + 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x3, 0xff, + 0xf0, 0x6, 0xd3, 0x0, 0x0, 0x0, 0x0, 0xc, + 0xff, 0xc0, 0x1e, 0xff, 0xb5, 0x10, 0x0, 0x4, + 0xcf, 0xff, 0x40, 0x2e, 0xff, 0xff, 0xfe, 0xdd, + 0xff, 0xff, 0xf8, 0x0, 0x1, 0x9f, 0xff, 0xff, + 0xff, 0xff, 0xff, 0x60, 0x0, 0x0, 0x0, 0x59, + 0xde, 0xff, 0xdb, 0x61, 0x0, 0x0, + + /* U+0036 "6" */ + 0x0, 0x0, 0x0, 0x27, 0xbe, 0xff, 0xec, 0x94, + 0x0, 0x0, 0x0, 0x1a, 0xff, 0xff, 0xff, 0xff, + 0xff, 0x70, 0x0, 0x3, 0xef, 0xff, 0xfe, 0xcb, + 0xcf, 0xff, 0x10, 0x0, 0x2e, 0xff, 0xf8, 0x10, + 0x0, 0x0, 0x36, 0x0, 0x0, 0xbf, 0xfd, 0x20, + 0x0, 0x0, 0x0, 0x0, 0x0, 0x4, 0xff, 0xf2, + 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xb, 0xff, + 0x80, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf, + 0xff, 0x20, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, + 0x3f, 0xfe, 0x0, 0x2, 0x68, 0x87, 0x40, 0x0, + 0x0, 0x5f, 0xfc, 0x4, 0xdf, 0xff, 0xff, 0xff, + 0x80, 0x0, 0x6f, 0xfb, 0x7f, 0xff, 0xff, 0xff, + 0xff, 0xfd, 0x10, 0x7f, 0xff, 0xff, 0xd6, 0x10, + 0x3, 0x9f, 0xff, 0xc0, 0x6f, 0xff, 0xfa, 0x0, + 0x0, 0x0, 0x4, 0xff, 0xf4, 0x5f, 0xff, 0xe0, + 0x0, 0x0, 0x0, 0x0, 0x9f, 0xfa, 0x2f, 0xff, + 0x90, 0x0, 0x0, 0x0, 0x0, 0x4f, 0xfc, 0xe, + 0xff, 0x80, 0x0, 0x0, 0x0, 0x0, 0x4f, 0xfd, + 0x9, 0xff, 0xc0, 0x0, 0x0, 0x0, 0x0, 0x6f, + 0xfb, 0x2, 0xff, 0xf4, 0x0, 0x0, 0x0, 0x0, + 0xdf, 0xf6, 0x0, 0x8f, 0xff, 0x60, 0x0, 0x0, + 0x2c, 0xff, 0xe0, 0x0, 0xa, 0xff, 0xfe, 0xb9, + 0x9c, 0xff, 0xff, 0x20, 0x0, 0x0, 0x7f, 0xff, + 0xff, 0xff, 0xff, 0xc2, 0x0, 0x0, 0x0, 0x1, + 0x7b, 0xef, 0xfd, 0xa4, 0x0, 0x0, + + /* U+0037 "7" */ + 0xf, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, + 0xfd, 0xf, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, + 0xff, 0xfd, 0xf, 0xff, 0xcc, 0xcc, 0xcc, 0xcc, + 0xcc, 0xff, 0xfb, 0xf, 0xff, 0x0, 0x0, 0x0, + 0x0, 0x1, 0xff, 0xf3, 0xf, 0xff, 0x0, 0x0, + 0x0, 0x0, 0x8, 0xff, 0xc0, 0xf, 0xff, 0x0, + 0x0, 0x0, 0x0, 0xf, 0xff, 0x50, 0xb, 0xbb, + 0x0, 0x0, 0x0, 0x0, 0x7f, 0xfd, 0x0, 0x0, + 0x0, 0x0, 0x0, 0x0, 0x0, 0xef, 0xf6, 0x0, + 0x0, 0x0, 0x0, 0x0, 0x0, 0x6, 0xff, 0xe0, + 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xd, 0xff, + 0x80, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x4f, + 0xff, 0x10, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, + 0xcf, 0xf9, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, + 0x3, 0xff, 0xf2, 0x0, 0x0, 0x0, 0x0, 0x0, + 0x0, 0xa, 0xff, 0xa0, 0x0, 0x0, 0x0, 0x0, + 0x0, 0x0, 0x2f, 0xff, 0x30, 0x0, 0x0, 0x0, + 0x0, 0x0, 0x0, 0x9f, 0xfc, 0x0, 0x0, 0x0, + 0x0, 0x0, 0x0, 0x1, 0xff, 0xf4, 0x0, 0x0, + 0x0, 0x0, 0x0, 0x0, 0x8, 0xff, 0xd0, 0x0, + 0x0, 0x0, 0x0, 0x0, 0x0, 0xe, 0xff, 0x60, + 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x7f, 0xfe, + 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xef, + 0xf7, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x5, + 0xff, 0xf1, 0x0, 0x0, 0x0, 0x0, + + /* U+0038 "8" */ + 0x0, 0x0, 0x16, 0xbd, 0xff, 0xed, 0x94, 0x0, + 0x0, 0x0, 0x0, 0x7f, 0xff, 0xff, 0xff, 0xff, + 0xfd, 0x30, 0x0, 0x0, 0x9f, 0xff, 0xfc, 0xa9, + 0xbd, 0xff, 0xff, 0x40, 0x0, 0x4f, 0xff, 0x91, + 0x0, 0x0, 0x4, 0xdf, 0xfe, 0x0, 0x9, 0xff, + 0xb0, 0x0, 0x0, 0x0, 0x1, 0xff, 0xf4, 0x0, + 0xcf, 0xf6, 0x0, 0x0, 0x0, 0x0, 0xc, 0xff, + 0x60, 0xa, 0xff, 0x70, 0x0, 0x0, 0x0, 0x0, + 0xdf, 0xf4, 0x0, 0x6f, 0xfe, 0x10, 0x0, 0x0, + 0x0, 0x6f, 0xfe, 0x0, 0x0, 0xcf, 0xfe, 0x83, + 0x10, 0x14, 0xaf, 0xff, 0x50, 0x0, 0x0, 0x9f, + 0xff, 0xff, 0xff, 0xff, 0xfe, 0x50, 0x0, 0x0, + 0x7, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc3, 0x0, + 0x0, 0x1c, 0xff, 0xfc, 0x97, 0x67, 0xaf, 0xff, + 0xf7, 0x0, 0xb, 0xff, 0xe4, 0x0, 0x0, 0x0, + 0x8, 0xff, 0xf5, 0x3, 0xff, 0xf2, 0x0, 0x0, + 0x0, 0x0, 0x9, 0xff, 0xd0, 0x7f, 0xfb, 0x0, + 0x0, 0x0, 0x0, 0x0, 0x2f, 0xff, 0x19, 0xff, + 0xa0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xff, 0xf2, + 0x7f, 0xfc, 0x0, 0x0, 0x0, 0x0, 0x0, 0x3f, + 0xff, 0x14, 0xff, 0xf4, 0x0, 0x0, 0x0, 0x0, + 0xb, 0xff, 0xd0, 0xc, 0xff, 0xf6, 0x0, 0x0, + 0x0, 0x2b, 0xff, 0xf6, 0x0, 0x1d, 0xff, 0xff, + 0xb9, 0x9a, 0xdf, 0xff, 0xf8, 0x0, 0x0, 0x1a, + 0xff, 0xff, 0xff, 0xff, 0xff, 0xe6, 0x0, 0x0, + 0x0, 0x2, 0x7b, 0xdf, 0xfe, 0xd9, 0x50, 0x0, + 0x0, + + /* U+0039 "9" */ + 0x0, 0x0, 0x16, 0xbd, 0xff, 0xda, 0x60, 0x0, + 0x0, 0x0, 0x0, 0x6e, 0xff, 0xff, 0xff, 0xff, + 0xe4, 0x0, 0x0, 0x0, 0x7f, 0xff, 0xfb, 0x99, + 0xbf, 0xff, 0xf6, 0x0, 0x0, 0x4f, 0xff, 0x90, + 0x0, 0x0, 0x8, 0xff, 0xf3, 0x0, 0xb, 0xff, + 0x90, 0x0, 0x0, 0x0, 0x7, 0xff, 0xd0, 0x0, + 0xff, 0xf2, 0x0, 0x0, 0x0, 0x0, 0xe, 0xff, + 0x40, 0x1f, 0xff, 0x0, 0x0, 0x0, 0x0, 0x0, + 0xcf, 0xfa, 0x0, 0xff, 0xf2, 0x0, 0x0, 0x0, + 0x0, 0xe, 0xff, 0xd0, 0xc, 0xff, 0x90, 0x0, + 0x0, 0x0, 0x7, 0xff, 0xff, 0x0, 0x5f, 0xff, + 0x90, 0x0, 0x0, 0x8, 0xff, 0xff, 0xf1, 0x0, + 0xaf, 0xff, 0xfb, 0x99, 0xbf, 0xff, 0xaf, 0xff, + 0x20, 0x0, 0x8f, 0xff, 0xff, 0xff, 0xff, 0x90, + 0xff, 0xf2, 0x0, 0x0, 0x28, 0xce, 0xfe, 0xc8, + 0x20, 0x1f, 0xff, 0x10, 0x0, 0x0, 0x0, 0x0, + 0x0, 0x0, 0x4, 0xff, 0xf0, 0x0, 0x0, 0x0, + 0x0, 0x0, 0x0, 0x0, 0x8f, 0xfb, 0x0, 0x0, + 0x0, 0x0, 0x0, 0x0, 0x0, 0xe, 0xff, 0x70, + 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x8, 0xff, + 0xf1, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x6, + 0xff, 0xf7, 0x0, 0x0, 0x9, 0x30, 0x0, 0x0, + 0x3b, 0xff, 0xfb, 0x0, 0x0, 0x5, 0xff, 0xec, + 0xbc, 0xef, 0xff, 0xfc, 0x10, 0x0, 0x0, 0xbf, + 0xff, 0xff, 0xff, 0xff, 0xf7, 0x0, 0x0, 0x0, + 0x0, 0x5a, 0xdf, 0xff, 0xda, 0x60, 0x0, 0x0, + 0x0 +}; + + +/*--------------------- + * GLYPH DESCRIPTION + *--------------------*/ + +static const lv_font_fmt_txt_glyph_dsc_t glyph_dsc[] = { + {.bitmap_index = 0, .adv_w = 0, .box_w = 0, .box_h = 0, .ofs_x = 0, .ofs_y = 0} /* id = 0 reserved */, + {.bitmap_index = 0, .adv_w = 116, .box_w = 5, .box_h = 9, .ofs_x = 1, .ofs_y = -5}, + {.bitmap_index = 23, .adv_w = 116, .box_w = 5, .box_h = 5, .ofs_x = 1, .ofs_y = 0}, + {.bitmap_index = 36, .adv_w = 342, .box_w = 19, .box_h = 22, .ofs_x = 1, .ofs_y = 0}, + {.bitmap_index = 245, .adv_w = 189, .box_w = 9, .box_h = 22, .ofs_x = 0, .ofs_y = 0}, + {.bitmap_index = 344, .adv_w = 294, .box_w = 18, .box_h = 22, .ofs_x = 0, .ofs_y = 0}, + {.bitmap_index = 542, .adv_w = 293, .box_w = 17, .box_h = 22, .ofs_x = 0, .ofs_y = 0}, + {.bitmap_index = 729, .adv_w = 343, .box_w = 21, .box_h = 22, .ofs_x = 1, .ofs_y = 0}, + {.bitmap_index = 960, .adv_w = 294, .box_w = 18, .box_h = 22, .ofs_x = 0, .ofs_y = 0}, + {.bitmap_index = 1158, .adv_w = 316, .box_w = 18, .box_h = 22, .ofs_x = 1, .ofs_y = 0}, + {.bitmap_index = 1356, .adv_w = 306, .box_w = 18, .box_h = 22, .ofs_x = 0, .ofs_y = 0}, + {.bitmap_index = 1554, .adv_w = 330, .box_w = 19, .box_h = 22, .ofs_x = 1, .ofs_y = 0}, + {.bitmap_index = 1763, .adv_w = 316, .box_w = 19, .box_h = 22, .ofs_x = 0, .ofs_y = 0} +}; + +/*--------------------- + * CHARACTER MAPPING + *--------------------*/ + +static const uint8_t glyph_id_ofs_list_0[] = { + 0, 0, 1, 0, 2, 3, 4, 5, + 6, 7, 8, 9, 10, 11 +}; + +/*Collect the unicode lists and glyph_id offsets*/ +static const lv_font_fmt_txt_cmap_t cmaps[] = +{ + { + .range_start = 44, .range_length = 14, .glyph_id_start = 1, + .unicode_list = NULL, .glyph_id_ofs_list = glyph_id_ofs_list_0, .list_length = 14, .type = LV_FONT_FMT_TXT_CMAP_FORMAT0_FULL + } +}; + +/*----------------- + * KERNING + *----------------*/ + + +/*Map glyph_ids to kern left classes*/ +static const uint8_t kern_left_class_mapping[] = +{ + 0, 1, 1, 2, 0, 3, 4, 5, + 6, 7, 8, 9, 2 +}; + +/*Map glyph_ids to kern right classes*/ +static const uint8_t kern_right_class_mapping[] = +{ + 0, 1, 1, 2, 3, 4, 5, 6, + 7, 2, 8, 9, 10 +}; + +/*Kern values between classes*/ +static const int8_t kern_class_values[] = +{ + 0, -6, -7, 5, 5, -5, 0, -7, + 5, 0, -6, 0, -2, -2, -5, 0, + 0, -4, 0, 0, 5, -2, 0, 0, + 0, -10, 0, -2, 0, 0, 0, 0, + 0, -3, -3, 0, -5, -6, 0, 0, + 10, 0, -13, -2, -6, 0, -2, -24, + 5, -4, 0, 0, 0, -3, -3, 0, + -3, -7, 0, 0, 5, 0, 0, 0, + 0, 0, 0, -4, 0, 0, -27, -10, + 5, 0, -4, -33, -9, 0, -9, 0, + 5, 0, 0, 0, 0, 0, 0, 0, + 0, 0 +}; + + +/*Collect the kern class' data in one place*/ +static const lv_font_fmt_txt_kern_classes_t kern_classes = +{ + .class_pair_values = kern_class_values, + .left_class_mapping = kern_left_class_mapping, + .right_class_mapping = kern_right_class_mapping, + .left_class_cnt = 9, + .right_class_cnt = 10, +}; + +/*-------------------- + * ALL CUSTOM DATA + *--------------------*/ + +#if LVGL_VERSION_MAJOR >= 8 +/*Store all the custom data of the font*/ +static lv_font_fmt_txt_glyph_cache_t cache; +static const lv_font_fmt_txt_dsc_t font_dsc = { +#else +static lv_font_fmt_txt_dsc_t font_dsc = { +#endif + .glyph_bitmap = glyph_bitmap, + .glyph_dsc = glyph_dsc, + .cmaps = cmaps, + .kern_dsc = &kern_classes, + .kern_scale = 16, + .cmap_num = 1, + .bpp = 4, + .kern_classes = 1, + .bitmap_format = 0, +#if LVGL_VERSION_MAJOR >= 8 + .cache = &cache +#endif +}; + + +/*----------------- + * PUBLIC FONT + *----------------*/ + +/*Initialize a public general font descriptor*/ +#if LVGL_VERSION_MAJOR >= 8 +const lv_font_t monts_m_32 = { +#else +lv_font_t monts_m_32 = { +#endif + .get_glyph_dsc = lv_font_get_glyph_dsc_fmt_txt, /*Function pointer to get glyph's data*/ + .get_glyph_bitmap = lv_font_get_bitmap_fmt_txt, /*Function pointer to get glyph's bitmap*/ + .line_height = 27, /*The maximum line height required by the font*/ + .base_line = 5, /*Baseline measured from the bottom of the line*/ +#if !(LVGL_VERSION_MAJOR == 6 && LVGL_VERSION_MINOR == 0) + .subpx = LV_FONT_SUBPX_NONE, +#endif +#if LV_VERSION_CHECK(7, 4, 0) || LVGL_VERSION_MAJOR >= 8 + .underline_position = -2, + .underline_thickness = 2, +#endif + .dsc = &font_dsc, /*The custom font data. Will be accessed by `get_glyph_bitmap/dsc` */ +}; + + + +#endif /*#if MONTS_M_32*/ + diff --git a/fonts/monts_r_32.c b/fonts/monts_r_32.c new file mode 100644 index 0000000..f0a3ee1 --- /dev/null +++ b/fonts/monts_r_32.c @@ -0,0 +1,433 @@ +/******************************************************************************* + * Size: 32 px + * Bpp: 4 + * Opts: + ******************************************************************************/ + +#ifdef LV_LVGL_H_INCLUDE_SIMPLE +#include "lvgl.h" +#else +#include "lvgl/lvgl.h" +#endif + +#ifndef MONTS_R_32 +#define MONTS_R_32 1 +#endif + +#if MONTS_R_32 + +/*----------------- + * BITMAPS + *----------------*/ + +/*Store the image of the glyphs*/ +static LV_ATTRIBUTE_LARGE_CONST const uint8_t glyph_bitmap[] = { + /* U+002C "," */ + 0x0, 0x0, 0x0, 0xbf, 0x90, 0x3f, 0xff, 0x11, + 0xff, 0xf0, 0x4, 0xfb, 0x0, 0x6f, 0x60, 0xa, + 0xf1, 0x0, 0xdc, 0x0, 0x1f, 0x70, 0x0, + + /* U+002E "." */ + 0x3, 0x71, 0x1, 0xff, 0xe0, 0x3f, 0xff, 0x10, + 0xaf, 0x80, + + /* U+0030 "0" */ + 0x0, 0x0, 0x0, 0x6b, 0xef, 0xec, 0x71, 0x0, + 0x0, 0x0, 0x0, 0x5, 0xef, 0xff, 0xff, 0xff, + 0xf7, 0x0, 0x0, 0x0, 0x6, 0xff, 0xe7, 0x32, + 0x36, 0xdf, 0xf9, 0x0, 0x0, 0x3, 0xff, 0xc0, + 0x0, 0x0, 0x0, 0x9f, 0xf6, 0x0, 0x0, 0xdf, + 0xc0, 0x0, 0x0, 0x0, 0x0, 0xaf, 0xf1, 0x0, + 0x5f, 0xf3, 0x0, 0x0, 0x0, 0x0, 0x1, 0xff, + 0x80, 0xb, 0xfb, 0x0, 0x0, 0x0, 0x0, 0x0, + 0x9, 0xfe, 0x0, 0xff, 0x70, 0x0, 0x0, 0x0, + 0x0, 0x0, 0x4f, 0xf2, 0x2f, 0xf3, 0x0, 0x0, + 0x0, 0x0, 0x0, 0x0, 0xff, 0x54, 0xff, 0x10, + 0x0, 0x0, 0x0, 0x0, 0x0, 0xe, 0xf7, 0x5f, + 0xf0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xdf, + 0x85, 0xff, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, + 0xd, 0xf8, 0x4f, 0xf1, 0x0, 0x0, 0x0, 0x0, + 0x0, 0x0, 0xef, 0x72, 0xff, 0x30, 0x0, 0x0, + 0x0, 0x0, 0x0, 0xf, 0xf5, 0xf, 0xf7, 0x0, + 0x0, 0x0, 0x0, 0x0, 0x4, 0xff, 0x20, 0xbf, + 0xb0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x9f, 0xe0, + 0x5, 0xff, 0x30, 0x0, 0x0, 0x0, 0x0, 0x1f, + 0xf8, 0x0, 0xd, 0xfc, 0x0, 0x0, 0x0, 0x0, + 0xa, 0xff, 0x10, 0x0, 0x4f, 0xfb, 0x0, 0x0, + 0x0, 0x9, 0xff, 0x60, 0x0, 0x0, 0x6f, 0xfe, + 0x73, 0x22, 0x6d, 0xff, 0x90, 0x0, 0x0, 0x0, + 0x5e, 0xff, 0xff, 0xff, 0xff, 0x70, 0x0, 0x0, + 0x0, 0x0, 0x7, 0xbe, 0xff, 0xc8, 0x10, 0x0, + 0x0, + + /* U+0031 "1" */ + 0xbf, 0xff, 0xff, 0xfe, 0xbf, 0xff, 0xff, 0xfe, + 0x1, 0x11, 0x17, 0xfe, 0x0, 0x0, 0x7, 0xfe, + 0x0, 0x0, 0x7, 0xfe, 0x0, 0x0, 0x7, 0xfe, + 0x0, 0x0, 0x7, 0xfe, 0x0, 0x0, 0x7, 0xfe, + 0x0, 0x0, 0x7, 0xfe, 0x0, 0x0, 0x7, 0xfe, + 0x0, 0x0, 0x7, 0xfe, 0x0, 0x0, 0x7, 0xfe, + 0x0, 0x0, 0x7, 0xfe, 0x0, 0x0, 0x7, 0xfe, + 0x0, 0x0, 0x7, 0xfe, 0x0, 0x0, 0x7, 0xfe, + 0x0, 0x0, 0x7, 0xfe, 0x0, 0x0, 0x7, 0xfe, + 0x0, 0x0, 0x7, 0xfe, 0x0, 0x0, 0x7, 0xfe, + 0x0, 0x0, 0x7, 0xfe, 0x0, 0x0, 0x7, 0xfe, + + /* U+0032 "2" */ + 0x0, 0x0, 0x59, 0xde, 0xff, 0xd9, 0x30, 0x0, + 0x0, 0x6, 0xef, 0xff, 0xff, 0xff, 0xff, 0xb1, + 0x0, 0xa, 0xff, 0xe8, 0x43, 0x23, 0x6c, 0xff, + 0xc0, 0x2, 0xdf, 0x70, 0x0, 0x0, 0x0, 0x7, + 0xff, 0x60, 0x1, 0x40, 0x0, 0x0, 0x0, 0x0, + 0xc, 0xfc, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, + 0x0, 0x8f, 0xe0, 0x0, 0x0, 0x0, 0x0, 0x0, + 0x0, 0x7, 0xfd, 0x0, 0x0, 0x0, 0x0, 0x0, + 0x0, 0x0, 0xaf, 0xb0, 0x0, 0x0, 0x0, 0x0, + 0x0, 0x0, 0xf, 0xf6, 0x0, 0x0, 0x0, 0x0, + 0x0, 0x0, 0x9, 0xfe, 0x0, 0x0, 0x0, 0x0, + 0x0, 0x0, 0x6, 0xff, 0x40, 0x0, 0x0, 0x0, + 0x0, 0x0, 0x6, 0xff, 0x60, 0x0, 0x0, 0x0, + 0x0, 0x0, 0x7, 0xff, 0x60, 0x0, 0x0, 0x0, + 0x0, 0x0, 0x7, 0xff, 0x60, 0x0, 0x0, 0x0, + 0x0, 0x0, 0x8, 0xff, 0x50, 0x0, 0x0, 0x0, + 0x0, 0x0, 0x9, 0xff, 0x50, 0x0, 0x0, 0x0, + 0x0, 0x0, 0xa, 0xff, 0x40, 0x0, 0x0, 0x0, + 0x0, 0x0, 0xb, 0xff, 0x40, 0x0, 0x0, 0x0, + 0x0, 0x0, 0xb, 0xfe, 0x30, 0x0, 0x0, 0x0, + 0x0, 0x0, 0xc, 0xff, 0x30, 0x0, 0x0, 0x0, + 0x0, 0x0, 0xa, 0xff, 0xff, 0xff, 0xff, 0xff, + 0xff, 0xff, 0xf0, 0xcf, 0xff, 0xff, 0xff, 0xff, + 0xff, 0xff, 0xff, + + /* U+0033 "3" */ + 0xc, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xf9, + 0x0, 0xcf, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, + 0x80, 0x0, 0x11, 0x11, 0x11, 0x11, 0x11, 0xbf, + 0xd0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x9f, + 0xe1, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x7f, + 0xf3, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x5f, + 0xf4, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x4f, + 0xf6, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x2e, + 0xf9, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x1e, + 0xfb, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x8, + 0xff, 0xfe, 0xc7, 0x10, 0x0, 0x0, 0x0, 0x0, + 0x7d, 0xde, 0xff, 0xff, 0x50, 0x0, 0x0, 0x0, + 0x0, 0x0, 0x1, 0x6e, 0xff, 0x40, 0x0, 0x0, + 0x0, 0x0, 0x0, 0x0, 0x1d, 0xfd, 0x0, 0x0, + 0x0, 0x0, 0x0, 0x0, 0x0, 0x4f, 0xf3, 0x0, + 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xff, 0x60, + 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xe, 0xf7, + 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xff, + 0x50, 0x70, 0x0, 0x0, 0x0, 0x0, 0x0, 0x6f, + 0xf1, 0x5f, 0xd4, 0x0, 0x0, 0x0, 0x0, 0x4f, + 0xfa, 0x4, 0xef, 0xfd, 0x84, 0x22, 0x25, 0xaf, + 0xfd, 0x0, 0x2, 0xaf, 0xff, 0xff, 0xff, 0xff, + 0xfa, 0x10, 0x0, 0x0, 0x16, 0xad, 0xef, 0xec, + 0x83, 0x0, 0x0, + + /* U+0034 "4" */ + 0x0, 0x0, 0x0, 0x0, 0x0, 0x4, 0xff, 0x50, + 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x2e, + 0xf7, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, + 0x0, 0xdf, 0xa0, 0x0, 0x0, 0x0, 0x0, 0x0, + 0x0, 0x0, 0xb, 0xfc, 0x0, 0x0, 0x0, 0x0, + 0x0, 0x0, 0x0, 0x0, 0x8f, 0xe1, 0x0, 0x0, + 0x0, 0x0, 0x0, 0x0, 0x0, 0x6, 0xff, 0x30, + 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x3f, + 0xf6, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, + 0x1, 0xef, 0x90, 0x0, 0x0, 0x0, 0x0, 0x0, + 0x0, 0x0, 0xd, 0xfb, 0x0, 0x0, 0x2, 0x20, + 0x0, 0x0, 0x0, 0x0, 0xaf, 0xd1, 0x0, 0x0, + 0xf, 0xf3, 0x0, 0x0, 0x0, 0x8, 0xff, 0x20, + 0x0, 0x0, 0xf, 0xf3, 0x0, 0x0, 0x0, 0x5f, + 0xf4, 0x0, 0x0, 0x0, 0xf, 0xf3, 0x0, 0x0, + 0x3, 0xff, 0x70, 0x0, 0x0, 0x0, 0xf, 0xf3, + 0x0, 0x0, 0x1e, 0xfa, 0x0, 0x0, 0x0, 0x0, + 0xf, 0xf3, 0x0, 0x0, 0xaf, 0xff, 0xff, 0xff, + 0xff, 0xff, 0xff, 0xff, 0xff, 0xfb, 0xbf, 0xff, + 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfb, + 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x1f, 0xf4, + 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, + 0x1f, 0xf3, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, + 0x0, 0x0, 0x1f, 0xf3, 0x0, 0x0, 0x0, 0x0, + 0x0, 0x0, 0x0, 0x0, 0x1f, 0xf3, 0x0, 0x0, + 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x1f, 0xf3, + 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, + 0x1f, 0xf3, 0x0, 0x0, + + /* U+0035 "5" */ + 0x0, 0xa, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfb, + 0x0, 0x0, 0xbf, 0xff, 0xff, 0xff, 0xff, 0xff, + 0xb0, 0x0, 0xd, 0xf6, 0x11, 0x11, 0x11, 0x11, + 0x10, 0x0, 0x0, 0xff, 0x40, 0x0, 0x0, 0x0, + 0x0, 0x0, 0x0, 0xf, 0xf2, 0x0, 0x0, 0x0, + 0x0, 0x0, 0x0, 0x2, 0xff, 0x0, 0x0, 0x0, + 0x0, 0x0, 0x0, 0x0, 0x4f, 0xf0, 0x0, 0x0, + 0x0, 0x0, 0x0, 0x0, 0x5, 0xfd, 0x0, 0x0, + 0x0, 0x0, 0x0, 0x0, 0x0, 0x7f, 0xb0, 0x0, + 0x0, 0x0, 0x0, 0x0, 0x0, 0x9, 0xff, 0xff, + 0xff, 0xfd, 0xa5, 0x0, 0x0, 0x0, 0xaf, 0xff, + 0xff, 0xff, 0xff, 0xfe, 0x60, 0x0, 0x0, 0x0, + 0x0, 0x0, 0x24, 0x9e, 0xff, 0x70, 0x0, 0x0, + 0x0, 0x0, 0x0, 0x0, 0xb, 0xff, 0x20, 0x0, + 0x0, 0x0, 0x0, 0x0, 0x0, 0xe, 0xf9, 0x0, + 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x9f, 0xc0, + 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x7, 0xfd, + 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x9f, + 0xb0, 0x32, 0x0, 0x0, 0x0, 0x0, 0x0, 0x1e, + 0xf7, 0xd, 0xe6, 0x0, 0x0, 0x0, 0x0, 0x1b, + 0xff, 0x11, 0xcf, 0xfe, 0x95, 0x32, 0x24, 0x8e, + 0xff, 0x50, 0x0, 0x7e, 0xff, 0xff, 0xff, 0xff, + 0xfe, 0x50, 0x0, 0x0, 0x5, 0x9c, 0xef, 0xed, + 0xa5, 0x0, 0x0, + + /* U+0036 "6" */ + 0x0, 0x0, 0x0, 0x28, 0xce, 0xff, 0xec, 0x82, + 0x0, 0x0, 0x0, 0x1a, 0xff, 0xff, 0xff, 0xff, + 0xff, 0x0, 0x0, 0x3, 0xef, 0xf9, 0x52, 0x0, + 0x14, 0x97, 0x0, 0x0, 0x1e, 0xfc, 0x20, 0x0, + 0x0, 0x0, 0x0, 0x0, 0x0, 0xbf, 0xc0, 0x0, + 0x0, 0x0, 0x0, 0x0, 0x0, 0x3, 0xff, 0x20, + 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xa, 0xfa, + 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xe, + 0xf5, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, + 0x1f, 0xf2, 0x0, 0x49, 0xde, 0xec, 0x93, 0x0, + 0x0, 0x4f, 0xf0, 0x1b, 0xff, 0xff, 0xff, 0xff, + 0xa1, 0x0, 0x5f, 0xf1, 0xdf, 0xc5, 0x10, 0x13, + 0x9f, 0xfc, 0x0, 0x5f, 0xfa, 0xf7, 0x0, 0x0, + 0x0, 0x3, 0xff, 0x90, 0x4f, 0xff, 0x90, 0x0, + 0x0, 0x0, 0x0, 0x6f, 0xf1, 0x3f, 0xff, 0x20, + 0x0, 0x0, 0x0, 0x0, 0xf, 0xf5, 0xf, 0xfe, + 0x0, 0x0, 0x0, 0x0, 0x0, 0xd, 0xf7, 0xc, + 0xfe, 0x0, 0x0, 0x0, 0x0, 0x0, 0xd, 0xf6, + 0x7, 0xff, 0x10, 0x0, 0x0, 0x0, 0x0, 0xf, + 0xf4, 0x1, 0xff, 0x80, 0x0, 0x0, 0x0, 0x0, + 0x6f, 0xf0, 0x0, 0x6f, 0xf6, 0x0, 0x0, 0x0, + 0x3, 0xff, 0x80, 0x0, 0x9, 0xff, 0xb4, 0x10, + 0x2, 0x8f, 0xfc, 0x0, 0x0, 0x0, 0x7f, 0xff, + 0xff, 0xff, 0xff, 0xa0, 0x0, 0x0, 0x0, 0x1, + 0x7b, 0xef, 0xed, 0x93, 0x0, 0x0, + + /* U+0037 "7" */ + 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, + 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, + 0xf7, 0xff, 0x51, 0x11, 0x11, 0x11, 0x11, 0x17, + 0xff, 0x1f, 0xf4, 0x0, 0x0, 0x0, 0x0, 0x0, + 0xdf, 0x90, 0xff, 0x40, 0x0, 0x0, 0x0, 0x0, + 0x5f, 0xf2, 0xf, 0xf4, 0x0, 0x0, 0x0, 0x0, + 0xc, 0xfb, 0x0, 0x22, 0x0, 0x0, 0x0, 0x0, + 0x3, 0xff, 0x30, 0x0, 0x0, 0x0, 0x0, 0x0, + 0x0, 0xbf, 0xc0, 0x0, 0x0, 0x0, 0x0, 0x0, + 0x0, 0x2f, 0xf4, 0x0, 0x0, 0x0, 0x0, 0x0, + 0x0, 0xa, 0xfd, 0x0, 0x0, 0x0, 0x0, 0x0, + 0x0, 0x1, 0xff, 0x60, 0x0, 0x0, 0x0, 0x0, + 0x0, 0x0, 0x8f, 0xe0, 0x0, 0x0, 0x0, 0x0, + 0x0, 0x0, 0x1f, 0xf7, 0x0, 0x0, 0x0, 0x0, + 0x0, 0x0, 0x7, 0xff, 0x0, 0x0, 0x0, 0x0, + 0x0, 0x0, 0x0, 0xef, 0x80, 0x0, 0x0, 0x0, + 0x0, 0x0, 0x0, 0x6f, 0xf1, 0x0, 0x0, 0x0, + 0x0, 0x0, 0x0, 0xd, 0xfa, 0x0, 0x0, 0x0, + 0x0, 0x0, 0x0, 0x5, 0xff, 0x20, 0x0, 0x0, + 0x0, 0x0, 0x0, 0x0, 0xcf, 0xb0, 0x0, 0x0, + 0x0, 0x0, 0x0, 0x0, 0x4f, 0xf3, 0x0, 0x0, + 0x0, 0x0, 0x0, 0x0, 0xb, 0xfc, 0x0, 0x0, + 0x0, 0x0, 0x0, 0x0, 0x2, 0xff, 0x50, 0x0, + 0x0, 0x0, 0x0, + + /* U+0038 "8" */ + 0x0, 0x0, 0x17, 0xbe, 0xff, 0xec, 0x83, 0x0, + 0x0, 0x0, 0x7, 0xff, 0xff, 0xff, 0xff, 0xff, + 0xb1, 0x0, 0x0, 0x9f, 0xfb, 0x51, 0x0, 0x3, + 0x9f, 0xfd, 0x10, 0x3, 0xff, 0x70, 0x0, 0x0, + 0x0, 0x3, 0xff, 0x90, 0x8, 0xfd, 0x0, 0x0, + 0x0, 0x0, 0x0, 0x7f, 0xe0, 0x9, 0xfa, 0x0, + 0x0, 0x0, 0x0, 0x0, 0x4f, 0xf0, 0x8, 0xfc, + 0x0, 0x0, 0x0, 0x0, 0x0, 0x6f, 0xe0, 0x2, + 0xff, 0x50, 0x0, 0x0, 0x0, 0x1, 0xef, 0x80, + 0x0, 0x7f, 0xf9, 0x20, 0x0, 0x1, 0x6e, 0xfc, + 0x0, 0x0, 0x4, 0xdf, 0xff, 0xdd, 0xef, 0xff, + 0x80, 0x0, 0x0, 0x5, 0xdf, 0xff, 0xff, 0xff, + 0xff, 0x81, 0x0, 0x0, 0xaf, 0xfb, 0x52, 0x0, + 0x13, 0x8f, 0xfe, 0x20, 0x9, 0xff, 0x40, 0x0, + 0x0, 0x0, 0x1, 0xcf, 0xe1, 0x1f, 0xf6, 0x0, + 0x0, 0x0, 0x0, 0x0, 0x1e, 0xf7, 0x5f, 0xf0, + 0x0, 0x0, 0x0, 0x0, 0x0, 0xa, 0xfc, 0x7f, + 0xe0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x8, 0xfd, + 0x5f, 0xf0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x9, + 0xfc, 0x2f, 0xf6, 0x0, 0x0, 0x0, 0x0, 0x0, + 0x1e, 0xf8, 0xb, 0xfe, 0x30, 0x0, 0x0, 0x0, + 0x1, 0xcf, 0xf2, 0x1, 0xdf, 0xfa, 0x41, 0x0, + 0x3, 0x7e, 0xff, 0x40, 0x0, 0x1a, 0xff, 0xff, + 0xff, 0xff, 0xff, 0xd4, 0x0, 0x0, 0x0, 0x28, + 0xce, 0xff, 0xec, 0x94, 0x0, 0x0, + + /* U+0039 "9" */ + 0x0, 0x0, 0x17, 0xce, 0xfe, 0xd9, 0x40, 0x0, + 0x0, 0x0, 0x6, 0xff, 0xff, 0xff, 0xff, 0xfc, + 0x20, 0x0, 0x0, 0x7f, 0xfb, 0x40, 0x0, 0x27, + 0xef, 0xe2, 0x0, 0x3, 0xff, 0x70, 0x0, 0x0, + 0x0, 0xb, 0xfd, 0x0, 0xa, 0xfc, 0x0, 0x0, + 0x0, 0x0, 0x0, 0xef, 0x80, 0xe, 0xf6, 0x0, + 0x0, 0x0, 0x0, 0x0, 0x7f, 0xe0, 0xf, 0xf4, + 0x0, 0x0, 0x0, 0x0, 0x0, 0x6f, 0xf4, 0xe, + 0xf6, 0x0, 0x0, 0x0, 0x0, 0x0, 0x8f, 0xf7, + 0xb, 0xfc, 0x0, 0x0, 0x0, 0x0, 0x0, 0xef, + 0xfa, 0x4, 0xff, 0x80, 0x0, 0x0, 0x0, 0x1b, + 0xfc, 0xfb, 0x0, 0x8f, 0xfc, 0x51, 0x0, 0x27, + 0xef, 0x88, 0xfc, 0x0, 0x7, 0xff, 0xff, 0xff, + 0xff, 0xf6, 0x8, 0xfc, 0x0, 0x0, 0x17, 0xbd, + 0xed, 0xb7, 0x10, 0x9, 0xfb, 0x0, 0x0, 0x0, + 0x0, 0x0, 0x0, 0x0, 0xb, 0xf9, 0x0, 0x0, + 0x0, 0x0, 0x0, 0x0, 0x0, 0xf, 0xf6, 0x0, + 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x5f, 0xf2, + 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xcf, + 0xb0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x8, + 0xff, 0x30, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, + 0x8f, 0xf8, 0x0, 0x0, 0x1d, 0x73, 0x10, 0x13, + 0x7e, 0xff, 0x90, 0x0, 0x0, 0x8f, 0xff, 0xff, + 0xff, 0xff, 0xe5, 0x0, 0x0, 0x0, 0x5, 0xad, + 0xff, 0xfd, 0xa5, 0x0, 0x0, 0x0 +}; + + +/*--------------------- + * GLYPH DESCRIPTION + *--------------------*/ + +static const lv_font_fmt_txt_glyph_dsc_t glyph_dsc[] = { + {.bitmap_index = 0, .adv_w = 0, .box_w = 0, .box_h = 0, .ofs_x = 0, .ofs_y = 0} /* id = 0 reserved */, + {.bitmap_index = 0, .adv_w = 109, .box_w = 5, .box_h = 9, .ofs_x = 1, .ofs_y = -5}, + {.bitmap_index = 23, .adv_w = 109, .box_w = 5, .box_h = 4, .ofs_x = 1, .ofs_y = 0}, + {.bitmap_index = 33, .adv_w = 339, .box_w = 19, .box_h = 22, .ofs_x = 1, .ofs_y = 0}, + {.bitmap_index = 242, .adv_w = 185, .box_w = 8, .box_h = 22, .ofs_x = 0, .ofs_y = 0}, + {.bitmap_index = 330, .adv_w = 291, .box_w = 17, .box_h = 22, .ofs_x = 0, .ofs_y = 0}, + {.bitmap_index = 517, .adv_w = 289, .box_w = 17, .box_h = 22, .ofs_x = 0, .ofs_y = 0}, + {.bitmap_index = 704, .adv_w = 338, .box_w = 20, .box_h = 22, .ofs_x = 1, .ofs_y = 0}, + {.bitmap_index = 924, .adv_w = 290, .box_w = 17, .box_h = 22, .ofs_x = 0, .ofs_y = 0}, + {.bitmap_index = 1111, .adv_w = 312, .box_w = 18, .box_h = 22, .ofs_x = 1, .ofs_y = 0}, + {.bitmap_index = 1309, .adv_w = 302, .box_w = 17, .box_h = 22, .ofs_x = 1, .ofs_y = 0}, + {.bitmap_index = 1496, .adv_w = 327, .box_w = 18, .box_h = 22, .ofs_x = 1, .ofs_y = 0}, + {.bitmap_index = 1694, .adv_w = 312, .box_w = 18, .box_h = 22, .ofs_x = 0, .ofs_y = 0} +}; + +/*--------------------- + * CHARACTER MAPPING + *--------------------*/ + +static const uint8_t glyph_id_ofs_list_0[] = { + 0, 0, 1, 0, 2, 3, 4, 5, + 6, 7, 8, 9, 10, 11 +}; + +/*Collect the unicode lists and glyph_id offsets*/ +static const lv_font_fmt_txt_cmap_t cmaps[] = +{ + { + .range_start = 44, .range_length = 14, .glyph_id_start = 1, + .unicode_list = NULL, .glyph_id_ofs_list = glyph_id_ofs_list_0, .list_length = 14, .type = LV_FONT_FMT_TXT_CMAP_FORMAT0_FULL + } +}; + +/*----------------- + * KERNING + *----------------*/ + + +/*Map glyph_ids to kern left classes*/ +static const uint8_t kern_left_class_mapping[] = +{ + 0, 1, 1, 2, 0, 3, 4, 5, + 6, 7, 8, 9, 2 +}; + +/*Map glyph_ids to kern right classes*/ +static const uint8_t kern_right_class_mapping[] = +{ + 0, 1, 1, 2, 3, 4, 5, 6, + 7, 2, 8, 9, 10 +}; + +/*Kern values between classes*/ +static const int8_t kern_class_values[] = +{ + 0, -6, -6, 5, 5, -7, 0, -6, + 5, 0, -6, 0, -1, -1, -5, 0, + 0, -4, 0, 0, 5, -2, 0, 0, + 0, -12, 0, -2, 0, 0, 0, 0, + 0, -3, -3, 0, -5, -7, 0, 0, + 10, 0, -13, -2, -8, 0, -2, -26, + 5, -4, 0, 0, 0, -3, -3, 0, + -3, -7, 0, 0, 5, 0, 0, 0, + 0, 0, 0, -4, 0, 0, -27, -10, + 5, 0, -5, -33, -10, 0, -10, 0, + 5, 0, 0, 0, 0, 0, 0, 0, + 0, 0 +}; + + +/*Collect the kern class' data in one place*/ +static const lv_font_fmt_txt_kern_classes_t kern_classes = +{ + .class_pair_values = kern_class_values, + .left_class_mapping = kern_left_class_mapping, + .right_class_mapping = kern_right_class_mapping, + .left_class_cnt = 9, + .right_class_cnt = 10, +}; + +/*-------------------- + * ALL CUSTOM DATA + *--------------------*/ + +#if LVGL_VERSION_MAJOR >= 8 +/*Store all the custom data of the font*/ +static lv_font_fmt_txt_glyph_cache_t cache; +static const lv_font_fmt_txt_dsc_t font_dsc = { +#else +static lv_font_fmt_txt_dsc_t font_dsc = { +#endif + .glyph_bitmap = glyph_bitmap, + .glyph_dsc = glyph_dsc, + .cmaps = cmaps, + .kern_dsc = &kern_classes, + .kern_scale = 16, + .cmap_num = 1, + .bpp = 4, + .kern_classes = 1, + .bitmap_format = 0, +#if LVGL_VERSION_MAJOR >= 8 + .cache = &cache +#endif +}; + + +/*----------------- + * PUBLIC FONT + *----------------*/ + +/*Initialize a public general font descriptor*/ +#if LVGL_VERSION_MAJOR >= 8 +const lv_font_t monts_r_32 = { +#else +lv_font_t monts_r_32 = { +#endif + .get_glyph_dsc = lv_font_get_glyph_dsc_fmt_txt, /*Function pointer to get glyph's data*/ + .get_glyph_bitmap = lv_font_get_bitmap_fmt_txt, /*Function pointer to get glyph's bitmap*/ + .line_height = 27, /*The maximum line height required by the font*/ + .base_line = 5, /*Baseline measured from the bottom of the line*/ +#if !(LVGL_VERSION_MAJOR == 6 && LVGL_VERSION_MINOR == 0) + .subpx = LV_FONT_SUBPX_NONE, +#endif +#if LV_VERSION_CHECK(7, 4, 0) || LVGL_VERSION_MAJOR >= 8 + .underline_position = -2, + .underline_thickness = 2, +#endif + .dsc = &font_dsc, /*The custom font data. Will be accessed by `get_glyph_bitmap/dsc` */ + .fallback = NULL, + .user_data = NULL +}; + + + +#endif /*#if MONTS_R_32*/ + diff --git a/fonts/sans_b_36.c b/fonts/sans_b_36.c new file mode 100644 index 0000000..6da9d4c --- /dev/null +++ b/fonts/sans_b_36.c @@ -0,0 +1,498 @@ +/******************************************************************************* + * Size: 36 px + * Bpp: 4 + * Opts: + ******************************************************************************/ + +#ifdef LV_LVGL_H_INCLUDE_SIMPLE +#include "lvgl.h" +#else +#include "lvgl/lvgl.h" +#endif + +#ifndef SANS_B_36 +#define SANS_B_36 1 +#endif + +#if SANS_B_36 + +/*----------------- + * BITMAPS + *----------------*/ + +/*Store the image of the glyphs*/ +static LV_ATTRIBUTE_LARGE_CONST const uint8_t glyph_bitmap[] = { + /* U+002D "-" */ + 0x3d, 0xdd, 0xdd, 0xdd, 0xdd, 0x83, 0xff, 0xff, + 0xff, 0xff, 0xf9, 0x3f, 0xff, 0xff, 0xff, 0xff, + 0x93, 0xff, 0xff, 0xff, 0xff, 0xf9, + + /* U+002E "." */ + 0x0, 0x37, 0x61, 0x0, 0x6, 0xff, 0xfe, 0x30, + 0x1f, 0xff, 0xff, 0xc0, 0x5f, 0xff, 0xff, 0xf0, + 0x5f, 0xff, 0xff, 0xf0, 0x1f, 0xff, 0xff, 0xc0, + 0x6, 0xff, 0xfe, 0x20, 0x0, 0x26, 0x51, 0x0, + + /* U+0030 "0" */ + 0x0, 0x0, 0x0, 0x3, 0x57, 0x64, 0x0, 0x0, + 0x0, 0x0, 0x0, 0x0, 0x5d, 0xff, 0xff, 0xfe, + 0x70, 0x0, 0x0, 0x0, 0x0, 0x9f, 0xff, 0xff, + 0xff, 0xff, 0xc0, 0x0, 0x0, 0x0, 0x8f, 0xff, + 0xff, 0xff, 0xff, 0xff, 0xb0, 0x0, 0x0, 0x3f, + 0xff, 0xff, 0xeb, 0xdf, 0xff, 0xff, 0x60, 0x0, + 0xc, 0xff, 0xff, 0x90, 0x0, 0x6f, 0xff, 0xfe, + 0x0, 0x3, 0xff, 0xff, 0xd0, 0x0, 0x0, 0xaf, + 0xff, 0xf6, 0x0, 0x8f, 0xff, 0xf7, 0x0, 0x0, + 0x3, 0xff, 0xff, 0xb0, 0xc, 0xff, 0xff, 0x20, + 0x0, 0x0, 0xf, 0xff, 0xff, 0x0, 0xff, 0xff, + 0xf0, 0x0, 0x0, 0x0, 0xbf, 0xff, 0xf2, 0x2f, + 0xff, 0xfc, 0x0, 0x0, 0x0, 0x9, 0xff, 0xff, + 0x54, 0xff, 0xff, 0xb0, 0x0, 0x0, 0x0, 0x8f, + 0xff, 0xf7, 0x5f, 0xff, 0xfa, 0x0, 0x0, 0x0, + 0x7, 0xff, 0xff, 0x86, 0xff, 0xff, 0x90, 0x0, + 0x0, 0x0, 0x6f, 0xff, 0xf9, 0x6f, 0xff, 0xf9, + 0x0, 0x0, 0x0, 0x6, 0xff, 0xff, 0x95, 0xff, + 0xff, 0x90, 0x0, 0x0, 0x0, 0x6f, 0xff, 0xf9, + 0x5f, 0xff, 0xfa, 0x0, 0x0, 0x0, 0x7, 0xff, + 0xff, 0x84, 0xff, 0xff, 0xb0, 0x0, 0x0, 0x0, + 0x8f, 0xff, 0xf7, 0x1f, 0xff, 0xfd, 0x0, 0x0, + 0x0, 0xa, 0xff, 0xff, 0x50, 0xff, 0xff, 0xf0, + 0x0, 0x0, 0x0, 0xcf, 0xff, 0xf2, 0xc, 0xff, + 0xff, 0x20, 0x0, 0x0, 0xf, 0xff, 0xff, 0x0, + 0x7f, 0xff, 0xf7, 0x0, 0x0, 0x4, 0xff, 0xff, + 0xa0, 0x2, 0xff, 0xff, 0xe0, 0x0, 0x0, 0xbf, + 0xff, 0xf5, 0x0, 0xb, 0xff, 0xff, 0xa0, 0x0, + 0x7f, 0xff, 0xfe, 0x0, 0x0, 0x2f, 0xff, 0xff, + 0xec, 0xef, 0xff, 0xff, 0x50, 0x0, 0x0, 0x7f, + 0xff, 0xff, 0xff, 0xff, 0xff, 0xa0, 0x0, 0x0, + 0x0, 0x8f, 0xff, 0xff, 0xff, 0xff, 0xb0, 0x0, + 0x0, 0x0, 0x0, 0x4d, 0xff, 0xff, 0xfe, 0x70, + 0x0, 0x0, 0x0, 0x0, 0x0, 0x3, 0x57, 0x64, + 0x0, 0x0, 0x0, 0x0, + + /* U+0031 "1" */ + 0x0, 0x0, 0x0, 0x3b, 0xff, 0xff, 0x0, 0x0, + 0x0, 0x0, 0x16, 0xcf, 0xff, 0xff, 0xf0, 0x0, + 0x0, 0x1, 0xef, 0xff, 0xff, 0xff, 0xff, 0x0, + 0x0, 0x0, 0x2f, 0xff, 0xff, 0xff, 0xff, 0xf0, + 0x0, 0x0, 0x2, 0xff, 0xff, 0xff, 0xff, 0xff, + 0x0, 0x0, 0x0, 0x19, 0x99, 0x9b, 0xff, 0xff, + 0xf0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x5f, 0xff, + 0xff, 0x0, 0x0, 0x0, 0x0, 0x0, 0x5, 0xff, + 0xff, 0xf0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x5f, + 0xff, 0xff, 0x0, 0x0, 0x0, 0x0, 0x0, 0x5, + 0xff, 0xff, 0xf0, 0x0, 0x0, 0x0, 0x0, 0x0, + 0x5f, 0xff, 0xff, 0x0, 0x0, 0x0, 0x0, 0x0, + 0x5, 0xff, 0xff, 0xf0, 0x0, 0x0, 0x0, 0x0, + 0x0, 0x5f, 0xff, 0xff, 0x0, 0x0, 0x0, 0x0, + 0x0, 0x5, 0xff, 0xff, 0xf0, 0x0, 0x0, 0x0, + 0x0, 0x0, 0x5f, 0xff, 0xff, 0x0, 0x0, 0x0, + 0x0, 0x0, 0x5, 0xff, 0xff, 0xf0, 0x0, 0x0, + 0x0, 0x0, 0x0, 0x5f, 0xff, 0xff, 0x0, 0x0, + 0x0, 0x0, 0x0, 0x5, 0xff, 0xff, 0xf0, 0x0, + 0x0, 0x0, 0x0, 0x0, 0x5f, 0xff, 0xff, 0x0, + 0x0, 0x0, 0x0, 0x0, 0x5, 0xff, 0xff, 0xf0, + 0x0, 0x0, 0x0, 0x0, 0x0, 0x5f, 0xff, 0xff, + 0x0, 0x0, 0x0, 0x0, 0x0, 0x5, 0xff, 0xff, + 0xf0, 0x0, 0x0, 0x5, 0x55, 0x55, 0x9f, 0xff, + 0xff, 0x55, 0x55, 0x50, 0xff, 0xff, 0xff, 0xff, + 0xff, 0xff, 0xff, 0xff, 0xf, 0xff, 0xff, 0xff, + 0xff, 0xff, 0xff, 0xff, 0xf0, 0xff, 0xff, 0xff, + 0xff, 0xff, 0xff, 0xff, 0xff, 0xf, 0xff, 0xff, + 0xff, 0xff, 0xff, 0xff, 0xff, 0xf0, + + /* U+0032 "2" */ + 0x0, 0x0, 0x0, 0x35, 0x76, 0x51, 0x0, 0x0, + 0x0, 0x0, 0x0, 0x19, 0xef, 0xff, 0xff, 0xfb, + 0x30, 0x0, 0x0, 0x0, 0x6f, 0xff, 0xff, 0xff, + 0xff, 0xff, 0x70, 0x0, 0x0, 0x8f, 0xff, 0xff, + 0xff, 0xff, 0xff, 0xff, 0x60, 0x0, 0x6f, 0xff, + 0xff, 0xfd, 0xdf, 0xff, 0xff, 0xff, 0x10, 0x0, + 0xcf, 0xff, 0x81, 0x0, 0x8, 0xff, 0xff, 0xf8, + 0x0, 0x0, 0xcf, 0x50, 0x0, 0x0, 0xa, 0xff, + 0xff, 0xd0, 0x0, 0x0, 0x30, 0x0, 0x0, 0x0, + 0x3f, 0xff, 0xff, 0x0, 0x0, 0x0, 0x0, 0x0, + 0x0, 0x0, 0xff, 0xff, 0xf1, 0x0, 0x0, 0x0, + 0x0, 0x0, 0x0, 0xf, 0xff, 0xff, 0x10, 0x0, + 0x0, 0x0, 0x0, 0x0, 0x1, 0xff, 0xff, 0xf0, + 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x6f, 0xff, + 0xfb, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xc, + 0xff, 0xff, 0x60, 0x0, 0x0, 0x0, 0x0, 0x0, + 0x4, 0xff, 0xff, 0xf1, 0x0, 0x0, 0x0, 0x0, + 0x0, 0x0, 0xdf, 0xff, 0xf9, 0x0, 0x0, 0x0, + 0x0, 0x0, 0x0, 0x9f, 0xff, 0xfe, 0x10, 0x0, + 0x0, 0x0, 0x0, 0x0, 0x5f, 0xff, 0xff, 0x60, + 0x0, 0x0, 0x0, 0x0, 0x0, 0x2f, 0xff, 0xff, + 0xa0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x1e, 0xff, + 0xff, 0xd0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x1d, + 0xff, 0xff, 0xf2, 0x0, 0x0, 0x0, 0x0, 0x0, + 0x1c, 0xff, 0xff, 0xf5, 0x0, 0x0, 0x0, 0x0, + 0x0, 0x1c, 0xff, 0xff, 0xf6, 0x0, 0x0, 0x0, + 0x0, 0x0, 0x1c, 0xff, 0xff, 0xf7, 0x0, 0x0, + 0x0, 0x0, 0x0, 0x1d, 0xff, 0xff, 0xfb, 0x56, + 0x78, 0x88, 0x88, 0x83, 0x2e, 0xff, 0xff, 0xff, + 0xff, 0xff, 0xff, 0xff, 0xff, 0x67, 0xff, 0xff, + 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xf6, 0x7f, + 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, + 0x67, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, + 0xff, 0xf6, + + /* U+0033 "3" */ + 0x0, 0x0, 0x0, 0x3, 0x57, 0x64, 0x20, 0x0, + 0x0, 0x0, 0x0, 0x0, 0x29, 0xef, 0xff, 0xff, + 0xfe, 0x60, 0x0, 0x0, 0x0, 0x8, 0xff, 0xff, + 0xff, 0xff, 0xff, 0xfd, 0x30, 0x0, 0x0, 0xcf, + 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xe1, 0x0, + 0x0, 0xbf, 0xff, 0xff, 0xdc, 0xef, 0xff, 0xff, + 0xfa, 0x0, 0x0, 0xd, 0xff, 0x92, 0x0, 0x4, + 0xef, 0xff, 0xff, 0x0, 0x0, 0x2, 0xd3, 0x0, + 0x0, 0x0, 0x5f, 0xff, 0xff, 0x30, 0x0, 0x0, + 0x0, 0x0, 0x0, 0x0, 0x1f, 0xff, 0xff, 0x50, + 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf, 0xff, + 0xff, 0x30, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, + 0x4f, 0xff, 0xff, 0x10, 0x0, 0x0, 0x0, 0x0, + 0x0, 0x1, 0xef, 0xff, 0xfa, 0x0, 0x0, 0x0, + 0x0, 0x0, 0x2, 0x7e, 0xff, 0xff, 0xe2, 0x0, + 0x0, 0x0, 0x0, 0x6e, 0xff, 0xff, 0xff, 0xfd, + 0x20, 0x0, 0x0, 0x0, 0x0, 0x7f, 0xff, 0xff, + 0xff, 0x70, 0x0, 0x0, 0x0, 0x0, 0x0, 0x7f, + 0xff, 0xff, 0xff, 0xc5, 0x0, 0x0, 0x0, 0x0, + 0x0, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xb0, 0x0, + 0x0, 0x0, 0x0, 0x0, 0x13, 0x6b, 0xff, 0xff, + 0xfc, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, + 0x5f, 0xff, 0xff, 0x60, 0x0, 0x0, 0x0, 0x0, + 0x0, 0x0, 0x8, 0xff, 0xff, 0xd0, 0x0, 0x0, + 0x0, 0x0, 0x0, 0x0, 0x4, 0xff, 0xff, 0xf0, + 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x2, 0xff, + 0xff, 0xf2, 0x0, 0x6, 0x0, 0x0, 0x0, 0x0, + 0x5, 0xff, 0xff, 0xf1, 0x0, 0x6f, 0xd2, 0x0, + 0x0, 0x0, 0xd, 0xff, 0xff, 0xf0, 0x3, 0xff, + 0xff, 0x82, 0x0, 0x4, 0xcf, 0xff, 0xff, 0xa0, + 0xd, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, + 0xff, 0x20, 0x4, 0xff, 0xff, 0xff, 0xff, 0xff, + 0xff, 0xff, 0xf6, 0x0, 0x0, 0x3c, 0xff, 0xff, + 0xff, 0xff, 0xff, 0xfe, 0x50, 0x0, 0x0, 0x0, + 0x6b, 0xff, 0xff, 0xff, 0xfe, 0x60, 0x0, 0x0, + 0x0, 0x0, 0x0, 0x14, 0x57, 0x76, 0x30, 0x0, + 0x0, 0x0, + + /* U+0034 "4" */ + 0x0, 0x0, 0x0, 0x0, 0x0, 0x9f, 0xff, 0xff, + 0xf0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x3f, + 0xff, 0xff, 0xff, 0x0, 0x0, 0x0, 0x0, 0x0, + 0x0, 0xd, 0xff, 0xff, 0xff, 0xf0, 0x0, 0x0, + 0x0, 0x0, 0x0, 0x7, 0xff, 0xff, 0xff, 0xff, + 0x0, 0x0, 0x0, 0x0, 0x0, 0x1, 0xff, 0xff, + 0xff, 0xff, 0xf0, 0x0, 0x0, 0x0, 0x0, 0x0, + 0xaf, 0xff, 0xdb, 0xff, 0xff, 0x0, 0x0, 0x0, + 0x0, 0x0, 0x4f, 0xff, 0xf5, 0xcf, 0xff, 0xf0, + 0x0, 0x0, 0x0, 0x0, 0xd, 0xff, 0xfd, 0xd, + 0xff, 0xff, 0x0, 0x0, 0x0, 0x0, 0x7, 0xff, + 0xff, 0x60, 0xdf, 0xff, 0xf0, 0x0, 0x0, 0x0, + 0x2, 0xff, 0xff, 0xd0, 0xe, 0xff, 0xff, 0x0, + 0x0, 0x0, 0x0, 0xbf, 0xff, 0xf3, 0x0, 0xef, + 0xff, 0xf0, 0x0, 0x0, 0x0, 0x4f, 0xff, 0xf9, + 0x0, 0xe, 0xff, 0xff, 0x0, 0x0, 0x0, 0xd, + 0xff, 0xfe, 0x10, 0x0, 0xef, 0xff, 0xf0, 0x0, + 0x0, 0x8, 0xff, 0xff, 0x60, 0x0, 0xe, 0xff, + 0xff, 0x0, 0x0, 0x2, 0xff, 0xff, 0xc0, 0x0, + 0x0, 0xef, 0xff, 0xf0, 0x0, 0x0, 0xbf, 0xff, + 0xf4, 0x11, 0x11, 0x1e, 0xff, 0xff, 0x11, 0x10, + 0x3f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, + 0xff, 0xff, 0x33, 0xff, 0xff, 0xff, 0xff, 0xff, + 0xff, 0xff, 0xff, 0xff, 0xf3, 0x3f, 0xff, 0xff, + 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x33, + 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, + 0xff, 0xf3, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, + 0xef, 0xff, 0xf0, 0x0, 0x0, 0x0, 0x0, 0x0, + 0x0, 0x0, 0xe, 0xff, 0xff, 0x0, 0x0, 0x0, + 0x0, 0x0, 0x0, 0x0, 0x0, 0xef, 0xff, 0xf0, + 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xe, + 0xff, 0xff, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, + 0x0, 0x0, 0xef, 0xff, 0xf0, 0x0, 0x0, 0x0, + 0x0, 0x0, 0x0, 0x0, 0xe, 0xff, 0xff, 0x0, + 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xef, + 0xff, 0xf0, 0x0, 0x0, + + /* U+0035 "5" */ + 0x0, 0x3, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, + 0xff, 0x0, 0x0, 0x4, 0xff, 0xff, 0xff, 0xff, + 0xff, 0xff, 0xff, 0x0, 0x0, 0x5, 0xff, 0xff, + 0xff, 0xff, 0xff, 0xff, 0xff, 0x0, 0x0, 0x6, + 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x0, + 0x0, 0x7, 0xff, 0xff, 0xa7, 0x77, 0x77, 0x77, + 0x77, 0x0, 0x0, 0x8, 0xff, 0xff, 0x40, 0x0, + 0x0, 0x0, 0x0, 0x0, 0x0, 0x9, 0xff, 0xff, + 0x20, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xa, + 0xff, 0xff, 0x10, 0x0, 0x0, 0x0, 0x0, 0x0, + 0x0, 0xb, 0xff, 0xff, 0x0, 0x0, 0x0, 0x0, + 0x0, 0x0, 0x0, 0xc, 0xff, 0xfe, 0x5a, 0xcc, + 0xb7, 0x20, 0x0, 0x0, 0x0, 0xc, 0xff, 0xff, + 0xff, 0xff, 0xff, 0xfa, 0x10, 0x0, 0x0, 0xd, + 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xe1, 0x0, + 0x0, 0xe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, + 0xfc, 0x0, 0x0, 0x2, 0xcf, 0xd5, 0x20, 0x37, + 0xff, 0xff, 0xff, 0x50, 0x0, 0x0, 0x4, 0x0, + 0x0, 0x0, 0x3f, 0xff, 0xff, 0xb0, 0x0, 0x0, + 0x0, 0x0, 0x0, 0x0, 0x9, 0xff, 0xff, 0xf0, + 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x4, 0xff, + 0xff, 0xf2, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, + 0x1, 0xff, 0xff, 0xf3, 0x0, 0x0, 0x0, 0x0, + 0x0, 0x0, 0x1, 0xff, 0xff, 0xf3, 0x0, 0x0, + 0x0, 0x0, 0x0, 0x0, 0x4, 0xff, 0xff, 0xf1, + 0x0, 0x7, 0x0, 0x0, 0x0, 0x0, 0x9, 0xff, + 0xff, 0xe0, 0x0, 0x7f, 0xc2, 0x0, 0x0, 0x0, + 0x3f, 0xff, 0xff, 0xa0, 0x2, 0xff, 0xfe, 0x82, + 0x0, 0x17, 0xff, 0xff, 0xff, 0x30, 0xd, 0xff, + 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfa, 0x0, + 0x4, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, + 0xc0, 0x0, 0x0, 0x2c, 0xff, 0xff, 0xff, 0xff, + 0xff, 0xfb, 0x10, 0x0, 0x0, 0x0, 0x5b, 0xff, + 0xff, 0xff, 0xfd, 0x50, 0x0, 0x0, 0x0, 0x0, + 0x0, 0x4, 0x57, 0x75, 0x20, 0x0, 0x0, 0x0, + + /* U+0036 "6" */ + 0x0, 0x0, 0x0, 0x0, 0x15, 0x67, 0x53, 0x0, + 0x0, 0x0, 0x0, 0x0, 0x3, 0xcf, 0xff, 0xff, + 0xfd, 0x70, 0x0, 0x0, 0x0, 0x9, 0xff, 0xff, + 0xff, 0xff, 0xff, 0xd3, 0x0, 0x0, 0xa, 0xff, + 0xff, 0xff, 0xff, 0xff, 0xff, 0xf1, 0x0, 0x7, + 0xff, 0xff, 0xff, 0xfd, 0xff, 0xff, 0xf8, 0x0, + 0x2, 0xff, 0xff, 0xfc, 0x30, 0x0, 0x5e, 0xfa, + 0x0, 0x0, 0x9f, 0xff, 0xfb, 0x0, 0x0, 0x0, + 0x18, 0x0, 0x0, 0xf, 0xff, 0xff, 0x10, 0x0, + 0x0, 0x0, 0x0, 0x0, 0x5, 0xff, 0xff, 0x90, + 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x9f, 0xff, + 0xf3, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xc, + 0xff, 0xff, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, + 0x0, 0xff, 0xff, 0xd0, 0x4, 0xbe, 0xfe, 0xa5, + 0x0, 0x0, 0xf, 0xff, 0xfb, 0x1b, 0xff, 0xff, + 0xff, 0xfc, 0x10, 0x1, 0xff, 0xff, 0xcd, 0xff, + 0xff, 0xff, 0xff, 0xfd, 0x0, 0x2f, 0xff, 0xff, + 0xff, 0xfe, 0xef, 0xff, 0xff, 0xf9, 0x2, 0xff, + 0xff, 0xff, 0xb2, 0x0, 0x1b, 0xff, 0xff, 0xf1, + 0x1f, 0xff, 0xff, 0xa0, 0x0, 0x0, 0xd, 0xff, + 0xff, 0x50, 0xff, 0xff, 0xd0, 0x0, 0x0, 0x0, + 0x6f, 0xff, 0xf9, 0xe, 0xff, 0xfd, 0x0, 0x0, + 0x0, 0x4, 0xff, 0xff, 0xa0, 0xbf, 0xff, 0xf0, + 0x0, 0x0, 0x0, 0x2f, 0xff, 0xfb, 0x8, 0xff, + 0xff, 0x40, 0x0, 0x0, 0x4, 0xff, 0xff, 0xa0, + 0x3f, 0xff, 0xfa, 0x0, 0x0, 0x0, 0x6f, 0xff, + 0xf8, 0x0, 0xdf, 0xff, 0xf2, 0x0, 0x0, 0xd, + 0xff, 0xff, 0x40, 0x6, 0xff, 0xff, 0xe2, 0x0, + 0x8, 0xff, 0xff, 0xe0, 0x0, 0xc, 0xff, 0xff, + 0xfb, 0xad, 0xff, 0xff, 0xf6, 0x0, 0x0, 0x2e, + 0xff, 0xff, 0xff, 0xff, 0xff, 0xfb, 0x0, 0x0, + 0x0, 0x2e, 0xff, 0xff, 0xff, 0xff, 0xfb, 0x0, + 0x0, 0x0, 0x0, 0x8, 0xff, 0xff, 0xff, 0xe6, + 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x46, 0x76, + 0x30, 0x0, 0x0, 0x0, + + /* U+0037 "7" */ + 0x3f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, + 0xff, 0x83, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, + 0xff, 0xff, 0xf8, 0x3f, 0xff, 0xff, 0xff, 0xff, + 0xff, 0xff, 0xff, 0xff, 0x83, 0xff, 0xff, 0xff, + 0xff, 0xff, 0xff, 0xff, 0xff, 0xf4, 0x17, 0x77, + 0x77, 0x77, 0x77, 0x77, 0xbf, 0xff, 0xf9, 0x0, + 0x0, 0x0, 0x0, 0x0, 0x0, 0xd, 0xff, 0xfc, + 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x8, 0xff, + 0xff, 0x20, 0x0, 0x0, 0x0, 0x0, 0x0, 0x2, + 0xff, 0xff, 0x80, 0x0, 0x0, 0x0, 0x0, 0x0, + 0x0, 0xbf, 0xff, 0xe0, 0x0, 0x0, 0x0, 0x0, + 0x0, 0x0, 0x4f, 0xff, 0xf6, 0x0, 0x0, 0x0, + 0x0, 0x0, 0x0, 0xc, 0xff, 0xfe, 0x0, 0x0, + 0x0, 0x0, 0x0, 0x0, 0x3, 0xff, 0xff, 0x70, + 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xaf, 0xff, + 0xf2, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf, + 0xff, 0xfc, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, + 0x5, 0xff, 0xff, 0x80, 0x0, 0x0, 0x0, 0x0, + 0x0, 0x0, 0x9f, 0xff, 0xf5, 0x0, 0x0, 0x0, + 0x0, 0x0, 0x0, 0xd, 0xff, 0xff, 0x20, 0x0, + 0x0, 0x0, 0x0, 0x0, 0x0, 0xff, 0xff, 0xf0, + 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x4f, 0xff, + 0xfc, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x7, + 0xff, 0xff, 0x90, 0x0, 0x0, 0x0, 0x0, 0x0, + 0x0, 0xbf, 0xff, 0xf7, 0x0, 0x0, 0x0, 0x0, + 0x0, 0x0, 0xd, 0xff, 0xff, 0x60, 0x0, 0x0, + 0x0, 0x0, 0x0, 0x0, 0xff, 0xff, 0xf4, 0x0, + 0x0, 0x0, 0x0, 0x0, 0x0, 0xf, 0xff, 0xff, + 0x30, 0x0, 0x0, 0x0, 0x0, 0x0, 0x2, 0xff, + 0xff, 0xf2, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, + 0x3f, 0xff, 0xff, 0x20, 0x0, 0x0, 0x0, 0x0, + 0x0, 0x4, 0xff, 0xff, 0xf1, 0x0, 0x0, 0x0, + 0x0, + + /* U+0038 "8" */ + 0x0, 0x0, 0x0, 0x2, 0x47, 0x75, 0x10, 0x0, + 0x0, 0x0, 0x0, 0x0, 0x6e, 0xff, 0xff, 0xff, + 0xa1, 0x0, 0x0, 0x0, 0x1, 0xdf, 0xff, 0xff, + 0xff, 0xff, 0xf5, 0x0, 0x0, 0x0, 0xcf, 0xff, + 0xff, 0xff, 0xff, 0xff, 0xf2, 0x0, 0x0, 0x8f, + 0xff, 0xff, 0x85, 0x6c, 0xff, 0xff, 0xc0, 0x0, + 0xe, 0xff, 0xff, 0x20, 0x0, 0xa, 0xff, 0xff, + 0x20, 0x2, 0xff, 0xff, 0xa0, 0x0, 0x0, 0x1f, + 0xff, 0xf6, 0x0, 0x3f, 0xff, 0xf7, 0x0, 0x0, + 0x0, 0xef, 0xff, 0x70, 0x2, 0xff, 0xff, 0x90, + 0x0, 0x0, 0xe, 0xff, 0xf5, 0x0, 0xf, 0xff, + 0xfe, 0x0, 0x0, 0x1, 0xff, 0xff, 0x30, 0x0, + 0xaf, 0xff, 0xfb, 0x0, 0x0, 0x5f, 0xff, 0xc0, + 0x0, 0x2, 0xff, 0xff, 0xfd, 0x30, 0xd, 0xff, + 0xf4, 0x0, 0x0, 0x6, 0xff, 0xff, 0xff, 0xcb, + 0xff, 0xf8, 0x0, 0x0, 0x0, 0x5, 0xff, 0xff, + 0xff, 0xff, 0xf7, 0x0, 0x0, 0x0, 0x0, 0x4e, + 0xff, 0xff, 0xff, 0xff, 0xa1, 0x0, 0x0, 0x0, + 0x8f, 0xff, 0xef, 0xff, 0xff, 0xff, 0xe2, 0x0, + 0x0, 0x8f, 0xff, 0xe2, 0x17, 0xef, 0xff, 0xff, + 0xd1, 0x0, 0x3f, 0xff, 0xf4, 0x0, 0x1, 0x9f, + 0xff, 0xff, 0x90, 0xb, 0xff, 0xfb, 0x0, 0x0, + 0x0, 0x7f, 0xff, 0xff, 0x10, 0xff, 0xff, 0x60, + 0x0, 0x0, 0x0, 0xcf, 0xff, 0xf4, 0x3f, 0xff, + 0xf4, 0x0, 0x0, 0x0, 0x8, 0xff, 0xff, 0x64, + 0xff, 0xff, 0x60, 0x0, 0x0, 0x0, 0x7f, 0xff, + 0xf8, 0x2f, 0xff, 0xfc, 0x0, 0x0, 0x0, 0xb, + 0xff, 0xff, 0x60, 0xef, 0xff, 0xf8, 0x0, 0x0, + 0x5, 0xff, 0xff, 0xf1, 0x6, 0xff, 0xff, 0xfd, + 0x85, 0x6b, 0xff, 0xff, 0xfa, 0x0, 0xb, 0xff, + 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x10, 0x0, + 0x9, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfb, 0x10, + 0x0, 0x0, 0x2, 0xaf, 0xff, 0xff, 0xff, 0xc4, + 0x0, 0x0, 0x0, 0x0, 0x0, 0x14, 0x67, 0x65, + 0x20, 0x0, 0x0, 0x0, + + /* U+0039 "9" */ + 0x0, 0x0, 0x0, 0x25, 0x76, 0x40, 0x0, 0x0, + 0x0, 0x0, 0x0, 0x4, 0xcf, 0xff, 0xff, 0xfa, + 0x10, 0x0, 0x0, 0x0, 0x8, 0xff, 0xff, 0xff, + 0xff, 0xff, 0x50, 0x0, 0x0, 0x8, 0xff, 0xff, + 0xff, 0xff, 0xff, 0xff, 0x50, 0x0, 0x4, 0xff, + 0xff, 0xfe, 0xab, 0xef, 0xff, 0xfe, 0x10, 0x0, + 0xcf, 0xff, 0xfb, 0x0, 0x1, 0xcf, 0xff, 0xfa, + 0x0, 0x1f, 0xff, 0xfe, 0x0, 0x0, 0x0, 0xef, + 0xff, 0xf1, 0x5, 0xff, 0xff, 0x90, 0x0, 0x0, + 0x7, 0xff, 0xff, 0x70, 0x7f, 0xff, 0xf6, 0x0, + 0x0, 0x0, 0xf, 0xff, 0xfc, 0x8, 0xff, 0xff, + 0x50, 0x0, 0x0, 0x0, 0xcf, 0xff, 0xf0, 0x7f, + 0xff, 0xf6, 0x0, 0x0, 0x0, 0xa, 0xff, 0xff, + 0x26, 0xff, 0xff, 0x90, 0x0, 0x0, 0x0, 0xbf, + 0xff, 0xf4, 0x2f, 0xff, 0xff, 0x10, 0x0, 0x0, + 0x8f, 0xff, 0xff, 0x50, 0xdf, 0xff, 0xfd, 0x30, + 0x2, 0xaf, 0xff, 0xff, 0xf6, 0x6, 0xff, 0xff, + 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0x50, 0xb, + 0xff, 0xff, 0xff, 0xff, 0xfe, 0xaf, 0xff, 0xf4, + 0x0, 0xa, 0xff, 0xff, 0xff, 0xfd, 0x29, 0xff, + 0xff, 0x30, 0x0, 0x3, 0x9d, 0xff, 0xc6, 0x0, + 0xaf, 0xff, 0xf2, 0x0, 0x0, 0x0, 0x0, 0x0, + 0x0, 0xd, 0xff, 0xff, 0x0, 0x0, 0x0, 0x0, + 0x0, 0x0, 0x1, 0xff, 0xff, 0xc0, 0x0, 0x0, + 0x0, 0x0, 0x0, 0x0, 0x6f, 0xff, 0xf8, 0x0, + 0x0, 0x0, 0x0, 0x0, 0x0, 0xe, 0xff, 0xff, + 0x20, 0x0, 0x7, 0x30, 0x0, 0x0, 0x9, 0xff, + 0xff, 0xc0, 0x0, 0x7, 0xff, 0x71, 0x0, 0x3b, + 0xff, 0xff, 0xf3, 0x0, 0x5, 0xff, 0xff, 0xfe, + 0xff, 0xff, 0xff, 0xf9, 0x0, 0x0, 0xdf, 0xff, + 0xff, 0xff, 0xff, 0xff, 0xfc, 0x0, 0x0, 0x1, + 0xcf, 0xff, 0xff, 0xff, 0xff, 0xfb, 0x0, 0x0, + 0x0, 0x0, 0x5c, 0xff, 0xff, 0xff, 0xd5, 0x0, + 0x0, 0x0, 0x0, 0x0, 0x2, 0x56, 0x75, 0x20, + 0x0, 0x0, 0x0, 0x0 +}; + + +/*--------------------- + * GLYPH DESCRIPTION + *--------------------*/ + +static const lv_font_fmt_txt_glyph_dsc_t glyph_dsc[] = { + {.bitmap_index = 0, .adv_w = 0, .box_w = 0, .box_h = 0, .ofs_x = 0, .ofs_y = 0} /* id = 0 reserved */, + {.bitmap_index = 0, .adv_w = 213, .box_w = 11, .box_h = 4, .ofs_x = 1, .ofs_y = 9}, + {.bitmap_index = 22, .adv_w = 187, .box_w = 8, .box_h = 8, .ofs_x = 2, .ofs_y = -1}, + {.bitmap_index = 54, .adv_w = 339, .box_w = 19, .box_h = 29, .ofs_x = 1, .ofs_y = -1}, + {.bitmap_index = 330, .adv_w = 339, .box_w = 17, .box_h = 27, .ofs_x = 2, .ofs_y = 0}, + {.bitmap_index = 560, .adv_w = 339, .box_w = 19, .box_h = 28, .ofs_x = 1, .ofs_y = 0}, + {.bitmap_index = 826, .adv_w = 339, .box_w = 20, .box_h = 29, .ofs_x = 0, .ofs_y = -1}, + {.bitmap_index = 1116, .adv_w = 339, .box_w = 21, .box_h = 27, .ofs_x = 0, .ofs_y = 0}, + {.bitmap_index = 1400, .adv_w = 339, .box_w = 20, .box_h = 28, .ofs_x = 0, .ofs_y = -1}, + {.bitmap_index = 1680, .adv_w = 339, .box_w = 19, .box_h = 29, .ofs_x = 1, .ofs_y = -1}, + {.bitmap_index = 1956, .adv_w = 339, .box_w = 19, .box_h = 27, .ofs_x = 1, .ofs_y = 0}, + {.bitmap_index = 2213, .adv_w = 339, .box_w = 19, .box_h = 29, .ofs_x = 1, .ofs_y = -1}, + {.bitmap_index = 2489, .adv_w = 339, .box_w = 19, .box_h = 29, .ofs_x = 1, .ofs_y = -1} +}; + +/*--------------------- + * CHARACTER MAPPING + *--------------------*/ + +static const uint8_t glyph_id_ofs_list_0[] = { + 0, 1, 0, 2, 3, 4, 5, 6, + 7, 8, 9, 10, 11 +}; + +/*Collect the unicode lists and glyph_id offsets*/ +static const lv_font_fmt_txt_cmap_t cmaps[] = +{ + { + .range_start = 45, .range_length = 13, .glyph_id_start = 1, + .unicode_list = NULL, .glyph_id_ofs_list = glyph_id_ofs_list_0, .list_length = 13, .type = LV_FONT_FMT_TXT_CMAP_FORMAT0_FULL + } +}; + + + +/*-------------------- + * ALL CUSTOM DATA + *--------------------*/ + +#if LVGL_VERSION_MAJOR == 8 +/*Store all the custom data of the font*/ +static lv_font_fmt_txt_glyph_cache_t cache; +#endif + +#if LVGL_VERSION_MAJOR >= 8 +static const lv_font_fmt_txt_dsc_t font_dsc = { +#else +static lv_font_fmt_txt_dsc_t font_dsc = { +#endif + .glyph_bitmap = glyph_bitmap, + .glyph_dsc = glyph_dsc, + .cmaps = cmaps, + .kern_dsc = NULL, + .kern_scale = 0, + .cmap_num = 1, + .bpp = 4, + .kern_classes = 0, + .bitmap_format = 0, +#if LVGL_VERSION_MAJOR == 8 + .cache = &cache +#endif +}; + + +/*----------------- + * PUBLIC FONT + *----------------*/ + +/*Initialize a public general font descriptor*/ +#if LVGL_VERSION_MAJOR >= 8 +const lv_font_t sans_b_36 = { +#else +lv_font_t sans_b_36 = { +#endif + .get_glyph_dsc = lv_font_get_glyph_dsc_fmt_txt, /*Function pointer to get glyph's data*/ + .get_glyph_bitmap = lv_font_get_bitmap_fmt_txt, /*Function pointer to get glyph's bitmap*/ + .line_height = 29, /*The maximum line height required by the font*/ + .base_line = 1, /*Baseline measured from the bottom of the line*/ +#if !(LVGL_VERSION_MAJOR == 6 && LVGL_VERSION_MINOR == 0) + .subpx = LV_FONT_SUBPX_NONE, +#endif +#if LV_VERSION_CHECK(7, 4, 0) || LVGL_VERSION_MAJOR >= 8 + .underline_position = -4, + .underline_thickness = 2, +#endif + .dsc = &font_dsc, /*The custom font data. Will be accessed by `get_glyph_bitmap/dsc` */ +}; + + + +#endif /*#if SANS_B_36*/ + diff --git a/fonts/sans_m_24.c b/fonts/sans_m_24.c new file mode 100644 index 0000000..5df718f --- /dev/null +++ b/fonts/sans_m_24.c @@ -0,0 +1,12937 @@ +/******************************************************************************* + * Size: 24 px + * Bpp: 4 + * Opts: --bpp 4 --size 24 --lcd --stride 1 --align 1 --font NotoSansCJK-Medium.otf --range 32-127,176,21407,28857,35774,32622,20351,29992,25945,31243,26080,32447,27169,24335,32852,21160,27169,24335,25377,26495,24403,21069,20301,32622,30446,26631,23610,23544,36755,20837,25171,21360,24320,20851,28165,31354,36864,20986,21518,36864,26377,25928,26368,22823,23567,35774,23450,27169,22359,36873,25321,30830,35748,20462,25913,36820,22238,38500,39029,20840,37096,24207,21495,27178,21387,31446,21387,19968,20108,21152,20943,21333,20010,21024,38500,24320,21551,26080,32447,21516,27493,20248,20808,20999,21106,27979,37327,35797,32456,38271,25353,24038,21491,31227,21152,20943,36895,26102,38388,36816,34892,29228,34892,36895,24230,33033,20914,21521,32456,36215,35745,31639,31532,27573,25968,26032,22686,21152,34917,20607,22810,25454,20445,23384,24613,20572,19981,24180,26376,26085,26399,26102,20998,31186,19968,20108,19977,32423,23494,30721,31995,32479,21442,21378,23478,20449,24687,29983,20135,36141,26426,32500,25252,30005,35805,20889,23458,25143,21644,65306,32463,38144,21830,22235,33258,32452,12289,22987,27490,20540,24320,35831,20379,36135,65292,21578,30693,20197,20415,33719,21462,38381,25163,21943,27833,28040,20801,35768,26448,26009,23485,23548,31616,20307,20013,33521,25991,35821,35328,36234,21335,27979,35797,39033,20869,23481,32467,26524,25171,21360,31471,21475,25104,21151,22833,36133,20013,26410,36755,20837,36755,20986,30005,26426,39537,21160,32477,23545,24037,26041,21453,32763,36716,27491,20282,26381,31649,24452,20992,36724,35282,22806,26694 --font FontAwesome5-Solid+Brands+Regular.woff --range 61523,61524,61559,61560 --format lvgl -o sans_m_24.c + ******************************************************************************/ + +#ifdef __has_include + #if __has_include("lvgl.h") + #ifndef LV_LVGL_H_INCLUDE_SIMPLE + #define LV_LVGL_H_INCLUDE_SIMPLE + #endif + #endif +#endif + +#ifdef LV_LVGL_H_INCLUDE_SIMPLE + #include "lvgl.h" +#else + #include "lvgl/lvgl.h" +#endif + + + +#ifndef SANS_M_24 +#define SANS_M_24 1 +#endif + +#if SANS_M_24 + +/*----------------- + * BITMAPS + *----------------*/ + +/*Store the image of the glyphs*/ +static LV_ATTRIBUTE_LARGE_CONST const uint8_t glyph_bitmap[] = { + /* U+0020 " " */ + + /* U+0021 "!" */ + 0x0, 0xc9, 0x3d, 0xff, 0xda, 0xe4, 0x1, 0xf3, + 0x88, 0x7, 0x84, 0x3, 0xfe, 0x30, 0xf, 0x9, + 0x80, 0x7c, 0x3e, 0x1, 0xe7, 0x0, 0xff, 0x84, + 0x3, 0xc6, 0x20, 0x1f, 0x18, 0x80, 0x78, 0x40, + 0x3f, 0x84, 0x1c, 0x3, 0x8c, 0x40, 0x3f, 0x8c, + 0x3, 0x84, 0x1c, 0x3, 0xf8, 0x44, 0x1, 0xc2, + 0x1, 0xff, 0x18, 0x6, 0x3f, 0x10, 0xf, 0xe7, + 0x1, 0x0, 0x84, 0x3, 0xff, 0x80, 0x26, 0x1, + 0x84, 0xc0, 0x3f, 0x87, 0xd8, 0x8a, 0x63, 0x10, + 0xf, 0xe2, 0x7b, 0xdd, 0xa9, 0x40, 0x3f, 0x89, + 0xab, 0x7f, 0xdd, 0xb2, 0xa2, 0x1, 0xe4, 0xb9, + 0x52, 0x0, 0x9, 0x34, 0x49, 0x80, 0x78, 0xc0, + 0x3f, 0xf8, 0x89, 0x12, 0xa4, 0x20, 0x26, 0xd1, + 0x26, 0x0, + + /* U+0022 "\"" */ + 0x0, 0x14, 0x6f, 0xff, 0xa9, 0x0, 0x39, 0x27, + 0xbf, 0xfb, 0xa5, 0x0, 0x3f, 0xf8, 0x6, 0x1, + 0xe7, 0x10, 0xf, 0x85, 0xc0, 0x37, 0x88, 0x7, + 0x8, 0x7, 0xf1, 0x80, 0x7f, 0xc6, 0x2e, 0x1, + 0xc6, 0x2c, 0x1, 0xc3, 0xe2, 0x1, 0xc5, 0xe2, + 0x1, 0x9, 0x10, 0x3, 0x9b, 0x8c, 0x3, 0x88, + 0x8c, 0x1, 0xce, 0x44, 0x0, 0xcc, 0x24, 0x1, + 0x84, 0x84, 0x3, 0xcc, 0x42, 0x1, 0x9, 0x30, + 0x7, 0x1f, 0x30, 0x4, 0x44, 0x70, 0xf, 0x8b, + 0xc8, 0x2, 0x2e, 0x20, 0xe, 0x15, 0x32, 0x29, + 0xf4, 0x80, 0x3e, 0x13, 0x52, 0x29, 0x48, 0x40, + 0x0, + + /* U+0023 "#" */ + 0x0, 0xff, 0xe0, 0x1c, 0x6f, 0xfb, 0x5c, 0x80, + 0x3e, 0x27, 0xdf, 0xf7, 0x41, 0x80, 0x7f, 0xf1, + 0xd8, 0x88, 0x0, 0x72, 0x20, 0x7, 0xcf, 0xa4, + 0x0, 0x5e, 0x20, 0xf, 0xfe, 0x31, 0x6b, 0x80, + 0x8, 0x8c, 0x1, 0xf1, 0x11, 0x80, 0x2, 0x4a, + 0x20, 0x1f, 0xfc, 0x67, 0x22, 0x0, 0x1b, 0x8c, + 0x3, 0xe6, 0xd3, 0x0, 0x17, 0x10, 0x7, 0xfc, + 0x51, 0xbf, 0xfd, 0x4a, 0x1, 0x24, 0xff, 0xfe, + 0xb5, 0x0, 0x8e, 0x3b, 0xfe, 0xd8, 0x20, 0xf, + 0x78, 0x8f, 0x0, 0x7c, 0x23, 0xf8, 0x3, 0xe1, + 0x1f, 0x78, 0x7, 0x89, 0xf3, 0xbb, 0x52, 0x80, + 0x4b, 0x5d, 0xdf, 0xad, 0x40, 0x24, 0x9f, 0xee, + 0xd8, 0xe4, 0x1, 0xff, 0x9, 0x30, 0x0, 0x4d, + 0x80, 0x3e, 0x12, 0x10, 0x8, 0x48, 0x40, 0x3f, + 0xf8, 0xc5, 0xe4, 0x0, 0x2e, 0x10, 0xf, 0x8b, + 0x98, 0x0, 0x44, 0x70, 0xf, 0xfe, 0x3b, 0x10, + 0x80, 0x1c, 0x88, 0x1, 0xf3, 0x91, 0x0, 0x3, + 0xc4, 0x1, 0xff, 0xc0, 0x5a, 0xee, 0xea, 0x50, + 0x9, 0x2f, 0xbb, 0xf5, 0xa8, 0x4, 0x73, 0xfd, + 0xda, 0x50, 0x3, 0xe1, 0x1f, 0x0, 0x78, 0x47, + 0xf8, 0x3, 0xe1, 0x1e, 0x30, 0xf, 0x96, 0xff, + 0xf5, 0x28, 0x4, 0x93, 0xff, 0xfa, 0xd4, 0x2, + 0x39, 0xef, 0xfe, 0xa4, 0x0, 0xff, 0x84, 0x98, + 0x2, 0x22, 0x0, 0x7c, 0x24, 0x20, 0x13, 0x18, + 0x80, 0x7f, 0xf1, 0x8b, 0xc8, 0x0, 0x5c, 0xc0, + 0x1f, 0x1f, 0x30, 0x0, 0x88, 0xc0, 0x1f, 0xfc, + 0x76, 0x21, 0x0, 0x30, 0x90, 0x7, 0xcc, 0x24, + 0x0, 0x1e, 0x20, 0xf, 0xfe, 0x30, 0x9b, 0x0, + 0x44, 0x40, 0xf, 0x84, 0x88, 0x1, 0x31, 0x88, + 0x7, 0xff, 0x18, 0xb8, 0x40, 0x5, 0xcc, 0x1, + 0xf1, 0xf3, 0x0, 0x4, 0x98, 0x3, 0xff, 0x82, + + /* U+0024 "$" */ + 0x0, 0xff, 0xe2, 0xad, 0xff, 0xdb, 0x6, 0x1, + 0xff, 0xf9, 0x13, 0x70, 0x8, 0xc5, 0xc0, 0x3f, + 0xf9, 0x82, 0x6f, 0x59, 0xdc, 0x93, 0x0, 0x85, + 0xaf, 0xfb, 0x2a, 0x14, 0x80, 0x3f, 0xf8, 0x42, + 0x93, 0x98, 0x85, 0x31, 0x0, 0xff, 0x9, 0xab, + 0xd6, 0x62, 0x10, 0x40, 0x3f, 0x8e, 0x64, 0xc4, + 0x1, 0x89, 0x66, 0xf3, 0x76, 0xba, 0x97, 0x41, + 0x0, 0x8, 0xc0, 0x1f, 0xe2, 0xb5, 0x20, 0xc, + 0x4f, 0xf4, 0xc8, 0x64, 0x52, 0x2b, 0x45, 0xfd, + 0xcd, 0x7c, 0xa0, 0x80, 0x7e, 0x72, 0x20, 0x7, + 0x3e, 0x90, 0x7, 0xff, 0x0, 0x51, 0x94, 0x80, + 0x3f, 0xe6, 0x21, 0x0, 0xe4, 0xc3, 0x0, 0xff, + 0xe8, 0x1e, 0x38, 0x80, 0x61, 0x6d, 0xb7, 0x31, + 0x0, 0xff, 0xe6, 0xa4, 0x5a, 0x88, 0x6, 0x14, + 0x8c, 0xfd, 0xa7, 0x41, 0x0, 0xff, 0xe4, 0x8a, + 0xd7, 0xe4, 0x29, 0x0, 0x61, 0x25, 0x8b, 0xed, + 0xb7, 0x42, 0x0, 0xff, 0xe3, 0x89, 0xbd, 0x6e, + 0xa9, 0x8c, 0x40, 0x38, 0x92, 0x2f, 0x30, 0xe6, + 0x1, 0xff, 0xc9, 0x25, 0x9c, 0xfc, 0x96, 0x31, + 0x0, 0xc2, 0x71, 0xb2, 0x80, 0x1f, 0xfc, 0xb1, + 0x36, 0x9c, 0xc4, 0xa0, 0x80, 0x61, 0x68, 0x61, + 0x0, 0xff, 0xe7, 0x13, 0x4c, 0x88, 0x3, 0x8f, + 0xd4, 0x3, 0xff, 0xa0, 0x44, 0x70, 0xf, 0x18, + 0x80, 0x7c, 0x2b, 0x12, 0xc6, 0x20, 0x1f, 0xfc, + 0x23, 0xd7, 0x0, 0xe2, 0x23, 0x80, 0x70, 0xad, + 0xd9, 0xda, 0x73, 0xf2, 0x5d, 0x94, 0xc8, 0x44, + 0x46, 0x8f, 0x5c, 0xe4, 0x1, 0x8e, 0xa8, 0x40, + 0x1e, 0x6d, 0x52, 0x0, 0x84, 0xda, 0x26, 0xb3, + 0x7b, 0x9b, 0x97, 0xa, 0x40, 0x18, 0xdf, 0xdc, + 0x80, 0x3c, 0x26, 0xf7, 0xba, 0xa7, 0x54, 0x21, + 0x0, 0xff, 0x9, 0x23, 0x4e, 0xe4, 0x18, 0x7, + 0xff, 0x4, 0x96, 0x2a, 0xf7, 0xbf, 0x60, 0xc0, + 0x21, 0x6c, 0xed, 0xb9, 0x62, 0x0, 0xff, 0xe6, + 0x11, 0x1c, 0x2, 0x31, 0x0, 0xff, 0xf5, 0x0, + + /* U+0025 "%" */ + 0x0, 0xf8, 0x51, 0xeb, 0x37, 0xbf, 0xdd, 0xb7, + 0x4e, 0x82, 0x1, 0xff, 0xc8, 0x16, 0xbf, 0xfa, + 0xd4, 0x40, 0x3f, 0xf8, 0xc2, 0xb5, 0xf7, 0xa, + 0x67, 0xf2, 0x2c, 0x5f, 0xd2, 0x88, 0x7, 0xff, + 0x11, 0x22, 0x8, 0x5, 0x12, 0xa2, 0x1, 0xff, + 0xc5, 0x39, 0x85, 0x10, 0x26, 0xbf, 0xdc, 0xc6, + 0xfd, 0xb1, 0x0, 0xac, 0x49, 0x80, 0x7f, 0xf0, + 0x49, 0xe1, 0x84, 0x4d, 0x2e, 0x40, 0x1f, 0xfc, + 0x63, 0xa6, 0x20, 0x1, 0xd4, 0x20, 0x80, 0x61, + 0x48, 0xa3, 0x0, 0x13, 0x51, 0x80, 0x7f, 0x85, + 0x62, 0x4c, 0xe, 0x20, 0x80, 0x1f, 0xfc, 0x86, + 0x21, 0x0, 0x94, 0xc4, 0x3, 0xf0, 0x9b, 0x0, + 0x42, 0x4c, 0x1, 0xfc, 0x73, 0xa, 0x24, 0xfe, + 0xc2, 0x1, 0xff, 0xc8, 0x13, 0x70, 0x8, 0x41, + 0xc0, 0x3f, 0xce, 0x62, 0x1, 0x39, 0x88, 0x7, + 0x85, 0xa1, 0xc8, 0x56, 0x24, 0xc0, 0x3f, 0xf9, + 0x42, 0x6c, 0x1, 0x9, 0xb0, 0x7, 0xf9, 0x8c, + 0x40, 0x26, 0x21, 0x0, 0xe4, 0x88, 0x20, 0x1c, + 0xc2, 0x88, 0x0, 0x4d, 0x5e, 0x26, 0xa6, 0x1d, + 0x8c, 0x40, 0x3f, 0x9c, 0x88, 0x1, 0x26, 0x18, + 0x7, 0xe3, 0xc4, 0x0, 0x8b, 0x58, 0x3, 0x13, + 0xc3, 0x8, 0x9a, 0x1c, 0x80, 0x9a, 0xff, 0x2a, + 0x1d, 0x95, 0x9e, 0x27, 0x3e, 0xdc, 0xc0, 0x3c, + 0x53, 0x68, 0x0, 0x16, 0xf8, 0x42, 0x11, 0x12, + 0x4f, 0xb0, 0x80, 0x12, 0xd8, 0x80, 0x2, 0xb1, + 0x3, 0x4, 0x88, 0x20, 0xb, 0xf4, 0xa0, 0x82, + 0x45, 0xf7, 0x59, 0x28, 0x22, 0x48, 0xe8, 0x20, + 0xe, 0x16, 0x99, 0x29, 0x1, 0xbd, 0xef, 0x73, + 0x6d, 0x8c, 0x9, 0x66, 0x4c, 0x20, 0x3, 0x98, + 0x50, 0x27, 0x96, 0x10, 0x39, 0x91, 0x80, 0xa, + 0x25, 0xd0, 0x46, 0x36, 0xa9, 0x30, 0x1, 0x35, + 0xa0, 0x7, 0x89, 0xab, 0x31, 0x50, 0xec, 0xaa, + 0x67, 0x9a, 0xcc, 0x53, 0x10, 0x0, 0x5b, 0xdc, + 0x85, 0x66, 0x8, 0x0, 0x2a, 0x62, 0x0, 0x15, + 0x42, 0x0, 0xf8, 0x56, 0xc8, 0x0, 0x2a, 0x64, + 0x1, 0xf8, 0x4d, 0x5e, 0x26, 0xa9, 0x30, 0xca, + 0x62, 0x1, 0x92, 0xe0, 0xc0, 0xe2, 0xd0, 0x3, + 0x17, 0x30, 0x4, 0x5e, 0x20, 0x1f, 0xc6, 0x2c, + 0x1, 0x17, 0x30, 0x7, 0xff, 0x30, 0x9e, 0x54, + 0x49, 0xfd, 0x84, 0x3, 0xc2, 0x60, 0x18, 0x4c, + 0x3, 0xf8, 0x40, 0x38, 0x40, 0x3f, 0xf9, 0x82, + 0xb3, 0x4, 0xb, 0x12, 0x60, 0x1f, 0x17, 0x10, + 0x4, 0x3c, 0x40, 0x1f, 0xc4, 0x2e, 0x1, 0x10, + 0xb0, 0x7, 0xff, 0x24, 0xe2, 0x8, 0x5, 0x10, + 0x51, 0x0, 0xfc, 0x26, 0xc0, 0x11, 0x1a, 0x88, + 0x7, 0xe7, 0xd3, 0x0, 0x9f, 0x48, 0x3, 0xff, + 0x8e, 0x4f, 0xec, 0x42, 0xd2, 0xe4, 0x1, 0xff, + 0x24, 0xb0, 0x80, 0x12, 0xe4, 0xc0, 0x38, 0x9e, + 0x54, 0x0, 0x2b, 0xca, 0x1, 0xff, 0xc7, 0x58, + 0x93, 0x4, 0x88, 0x20, 0x7, 0xff, 0x8, 0xe2, + 0xd4, 0x40, 0x9f, 0x3b, 0x2f, 0x37, 0x50, 0x60, + 0x29, 0x10, 0x40, 0xf, 0xfe, 0x31, 0xc4, 0x14, + 0x49, 0xe1, 0x84, 0x3, 0xff, 0x88, 0x2b, 0x5f, + 0x6e, 0xa6, 0x62, 0x42, 0x3, 0x47, 0xac, 0xb6, + 0x20, 0x8, + + /* U+0026 "&" */ + 0x0, 0xff, 0xe1, 0x12, 0xc5, 0x66, 0xf7, 0xfb, + 0xb7, 0x2e, 0x58, 0xc0, 0x3f, 0xfa, 0x87, 0x1b, + 0xaa, 0x75, 0x32, 0x10, 0x0, 0x91, 0xa3, 0x4e, + 0x61, 0x88, 0x3, 0xff, 0x9e, 0x71, 0xce, 0x40, + 0x11, 0xbd, 0xf7, 0xfb, 0xad, 0xc8, 0x2, 0x38, + 0xb3, 0x0, 0xff, 0xe6, 0x8a, 0x20, 0x80, 0x21, + 0x7f, 0x84, 0x10, 0x0, 0xa5, 0x50, 0x80, 0x21, + 0x25, 0x0, 0xff, 0xe6, 0x97, 0x88, 0x6, 0x2f, + 0x20, 0xf, 0x9b, 0x8c, 0x2, 0x12, 0x50, 0xf, + 0xfe, 0x69, 0xf3, 0x0, 0x62, 0xe5, 0x0, 0xc2, + 0x93, 0x26, 0x10, 0x1, 0x35, 0x18, 0x7, 0xff, + 0x39, 0x30, 0xc0, 0x21, 0x7e, 0x65, 0x8c, 0xfb, + 0x62, 0x1, 0x38, 0xe8, 0x30, 0xf, 0xfe, 0x79, + 0x35, 0x20, 0x4, 0x2b, 0x34, 0xe6, 0x20, 0x4d, + 0x59, 0x87, 0x30, 0xf, 0xfe, 0x88, 0x90, 0xb8, + 0x7, 0xe3, 0x7c, 0xd9, 0x52, 0x0, 0xff, 0xe0, + 0x24, 0x66, 0x75, 0x30, 0x80, 0x7c, 0x4b, 0x39, + 0x88, 0x30, 0xf, 0xc6, 0xb4, 0x82, 0x1, 0xff, + 0xc0, 0x16, 0xf7, 0x33, 0xc1, 0xa8, 0x20, 0x18, + 0x52, 0xb2, 0x98, 0x80, 0x23, 0x7b, 0xb3, 0x90, + 0x4, 0x4d, 0x54, 0x72, 0x0, 0xfe, 0x26, 0xa4, + 0x0, 0xc9, 0x4c, 0x40, 0x18, 0xa6, 0x4a, 0x20, + 0x10, 0xb5, 0xe4, 0x22, 0x23, 0xe5, 0x4, 0x0, + 0x29, 0x19, 0x6e, 0x60, 0x18, 0x56, 0x24, 0xc0, + 0x21, 0x5f, 0x61, 0x0, 0xc2, 0x86, 0x40, 0x18, + 0x9a, 0x90, 0x3, 0x89, 0xaf, 0x5c, 0xc0, 0x21, + 0x48, 0xcc, 0x4a, 0xb5, 0xd9, 0x44, 0x0, 0x2b, + 0x76, 0x40, 0xf, 0x85, 0xc0, 0x38, 0xc4, 0x3, + 0xfc, 0x71, 0x98, 0x84, 0x10, 0x8, 0xda, 0xa5, + 0x44, 0x0, 0x29, 0x76, 0x51, 0x0, 0xf8, 0x51, + 0x44, 0x3, 0xb, 0xca, 0x88, 0x7, 0xf8, 0xde, + 0xe9, 0x84, 0x3, 0xf8, 0xc0, 0x94, 0x40, 0x3f, + 0x8e, 0xa4, 0xc0, 0x30, 0xad, 0x7e, 0x4b, 0xaa, + 0x24, 0xac, 0xf3, 0x7b, 0x6c, 0x20, 0x1f, 0xc4, + 0x91, 0x7d, 0xcc, 0xa8, 0x52, 0x0, 0xc6, 0xfd, + 0x2a, 0x20, 0x18, 0x4d, 0xa2, 0xae, 0xea, 0x98, + 0x64, 0x20, 0x8, 0x96, 0x2f, 0x75, 0x4e, 0x82, + 0x1, 0x84, 0xd5, 0xb0, 0x40, 0x3c, 0x4d, 0x5d, + 0xb7, 0xc, 0x86, 0x62, 0x10, 0x8, 0x44, 0x46, + 0xad, 0x17, 0xba, 0xa7, 0x42, 0x22, 0xc5, 0xf6, + 0xdc, 0xba, 0x99, 0x3e, 0x98, 0x0, + + /* U+0027 "'" */ + 0x0, 0x14, 0x6f, 0xff, 0xa9, 0x0, 0x3f, 0xf8, + 0x26, 0x1, 0xef, 0x10, 0xe, 0x10, 0xf, 0x18, + 0xb8, 0x7, 0x18, 0xb0, 0x6, 0x12, 0x20, 0x7, + 0x37, 0x18, 0x7, 0x30, 0x90, 0x6, 0x12, 0x10, + 0xe, 0x3e, 0x60, 0x8, 0x88, 0xe0, 0x1e, 0x15, + 0x32, 0x29, 0xf4, 0x80, 0x20, + + /* U+0028 "(" */ + 0x0, 0xff, 0xe0, 0x92, 0x18, 0x80, 0x7f, 0xf0, + 0xc9, 0xfa, 0xf3, 0xb6, 0xc, 0x3, 0xfc, 0x2b, + 0x10, 0x30, 0x1, 0x2d, 0x18, 0x7, 0xf1, 0x4c, + 0x28, 0x4, 0x91, 0x24, 0x1, 0xfc, 0x74, 0xc4, + 0x0, 0x16, 0xf5, 0x10, 0xf, 0xe3, 0xa6, 0x10, + 0x0, 0xa6, 0xa0, 0x7, 0xf8, 0xe9, 0xc4, 0x2, + 0x4e, 0x40, 0xf, 0xf1, 0x22, 0x4, 0x2, 0x4c, + 0x40, 0xf, 0xf9, 0xf0, 0x80, 0x22, 0x35, 0x0, + 0xff, 0x8f, 0x14, 0x3, 0x3e, 0x98, 0x7, 0xfc, + 0xc6, 0x20, 0x10, 0x93, 0x0, 0x7f, 0xc2, 0x62, + 0x1, 0x8f, 0xc4, 0x3, 0xfe, 0x31, 0x70, 0xc, + 0x22, 0x30, 0xf, 0xfe, 0x7, 0x88, 0x6, 0x70, + 0xf, 0xfe, 0x9, 0xf8, 0x80, 0x67, 0x13, 0x0, + 0xff, 0x84, 0x4e, 0x1, 0x87, 0xc4, 0x3, 0xff, + 0x80, 0x42, 0x1, 0x8c, 0x5c, 0x3, 0xff, 0x80, + 0xda, 0x60, 0x10, 0xa9, 0x88, 0x7, 0xfc, 0x46, + 0xa2, 0x1, 0x1e, 0xa8, 0x7, 0xff, 0x1, 0x31, + 0x40, 0x33, 0x99, 0x0, 0x7f, 0xf0, 0x13, 0x4c, + 0x2, 0x2b, 0x52, 0x0, 0xff, 0x85, 0xe9, 0x0, + 0x23, 0xb5, 0x20, 0xf, 0xf8, 0x5b, 0x90, 0x2, + 0x3a, 0x52, 0x0, 0xff, 0xe0, 0x2f, 0xb0, 0x80, + 0xa, 0x6d, 0x0, 0x3f, 0xf8, 0x9, 0x10, 0x40, + 0x0, 0xb4, 0x31, 0x0, 0x7f, 0xc2, 0xd0, 0xe8, + 0x86, 0xa5, 0x30, + + /* U+0029 ")" */ + 0x0, 0xe1, 0x24, 0x31, 0x0, 0xff, 0xe1, 0x2d, + 0x7e, 0xde, 0xda, 0x88, 0x7, 0xff, 0x1, 0x7d, + 0x4, 0x5, 0x62, 0x4c, 0x3, 0xff, 0x80, 0xb0, + 0xc4, 0x0, 0x27, 0x95, 0x10, 0xf, 0xf8, 0xa6, + 0xcc, 0x2, 0x5e, 0x71, 0x0, 0xff, 0x85, 0xe8, + 0xc0, 0x24, 0xa7, 0x10, 0xf, 0xf8, 0x5e, 0xcc, + 0x2, 0x3a, 0x62, 0x0, 0xff, 0x85, 0x10, 0x40, + 0x11, 0xeb, 0x80, 0x7f, 0xf0, 0xf, 0x5c, 0x3, + 0x26, 0x18, 0x7, 0xff, 0x1, 0xf4, 0x80, 0x21, + 0x54, 0x10, 0xf, 0xf8, 0x88, 0xc0, 0x18, 0xbc, + 0x80, 0x3f, 0xf8, 0x2, 0x20, 0xc, 0x22, 0x70, + 0xf, 0xfe, 0x3, 0x98, 0x80, 0x63, 0x10, 0xf, + 0xfe, 0x38, 0x98, 0x7, 0xff, 0x1, 0xc0, 0x40, + 0x30, 0x98, 0x7, 0xff, 0x0, 0x4c, 0x3, 0x9, + 0xb0, 0x7, 0xfc, 0x26, 0xc0, 0x18, 0xc4, 0x40, + 0x1f, 0xf2, 0xf9, 0x0, 0x67, 0xd2, 0x0, 0xff, + 0x9, 0xa8, 0x80, 0x47, 0xa8, 0x1, 0xff, 0x26, + 0x98, 0x4, 0x2a, 0x82, 0x1, 0xfe, 0x4f, 0x40, + 0x8, 0x5f, 0x4c, 0x3, 0xfc, 0x9a, 0x82, 0x0, + 0x17, 0xa4, 0x0, 0xff, 0x26, 0xb8, 0x80, 0x9, + 0xa8, 0xc0, 0x3f, 0x85, 0xa1, 0x84, 0x0, 0x77, + 0x46, 0x1, 0xfc, 0x91, 0x3, 0x0, 0xb, 0x43, + 0x10, 0x7, 0xf9, 0xb6, 0x54, 0xd6, 0xe1, 0x0, + 0x3f, 0x80, + + /* U+002A "*" */ + 0x0, 0xff, 0x96, 0xff, 0xe9, 0x40, 0xf, 0xfe, + 0x50, 0x93, 0x80, 0x44, 0x20, 0x1f, 0xfc, 0x12, + 0x47, 0x65, 0x42, 0x10, 0x2f, 0x10, 0x9, 0xc8, + 0x80, 0x46, 0x8a, 0xec, 0x82, 0x0, 0x25, 0x88, + 0x4d, 0x5e, 0xf7, 0xe3, 0x90, 0x4, 0x71, 0xbf, + 0xb9, 0x75, 0x13, 0xee, 0x20, 0x4f, 0xd7, 0x2e, + 0x84, 0x1, 0xff, 0xc0, 0x13, 0x57, 0xac, 0xa6, + 0x10, 0x8, 0x91, 0xa2, 0xfe, 0xc, 0x3, 0xf9, + 0x23, 0x6a, 0x14, 0xc4, 0x3, 0xf0, 0xac, 0x49, + 0x80, 0x5, 0x14, 0xc4, 0x0, 0x91, 0x4, 0x0, + 0xff, 0x8e, 0x6d, 0x44, 0x9, 0xf6, 0xeb, 0x69, + 0x88, 0x5, 0xa6, 0x8, 0x3, 0xf8, 0xe6, 0xa1, + 0xeb, 0x20, 0xc0, 0x2, 0x93, 0xf2, 0xf1, 0x32, + 0x20, 0xe, + + /* U+002B "+" */ + 0x0, 0xff, 0xe2, 0x13, 0xde, 0x65, 0x6e, 0x40, + 0x1f, 0xfd, 0x51, 0xf5, 0x33, 0x97, 0xc4, 0x3, + 0xff, 0xfe, 0x1, 0xff, 0xfc, 0x11, 0xff, 0xe0, + 0x38, 0x80, 0x70, 0xb8, 0x8f, 0xff, 0x0, 0x3, + 0xc2, 0xd9, 0xdd, 0xff, 0xc0, 0xb6, 0x10, 0x8, + 0x5a, 0xfb, 0xbf, 0xf8, 0x18, 0xc2, 0x1, 0xff, + 0xe1, 0x16, 0xcf, 0xff, 0xfe, 0x6, 0x38, 0x80, + 0x42, 0xf9, 0xff, 0xff, 0xc0, 0xc6, 0x10, 0xf, + 0xff, 0xf8, 0x7, 0xff, 0xfc, 0x3, 0xff, 0x90, + + /* U+002C "," */ + 0x0, 0xf0, 0x9a, 0xbc, 0xca, 0x18, 0xc4, 0x3, + 0xf8, 0x56, 0xb2, 0xa1, 0x98, 0xf3, 0x94, 0xc2, + 0x1, 0xf1, 0x93, 0x0, 0x7e, 0x4d, 0x70, 0xf, + 0x89, 0xa5, 0xd0, 0x84, 0x3, 0x9c, 0x44, 0x1, + 0xf0, 0xa4, 0x5e, 0xe9, 0xc4, 0x2, 0x62, 0x10, + 0xf, 0xf8, 0xe9, 0x44, 0x0, 0x78, 0x80, 0x1f, + 0xc4, 0xd5, 0xac, 0x40, 0x2d, 0xc, 0x20, 0x1e, + 0x38, 0xdd, 0x4a, 0x88, 0x8e, 0x36, 0x50, 0x3, + 0xf1, 0xe2, 0x1a, 0xc5, 0xe6, 0x1c, 0xc0, 0x3e, + + /* U+002D "-" */ + 0x0, 0xc2, 0x3f, 0xfc, 0x60, 0xc, 0x71, 0x9d, + 0xdf, 0xfc, 0x4d, 0x72, 0x0, 0xff, 0xe6, 0x0, + + /* U+002E "." */ + 0x0, 0xff, 0xe2, 0x8a, 0x4e, 0x77, 0xfb, 0x6d, + 0x88, 0x2, 0x26, 0x96, 0x31, 0x0, 0x12, 0x4c, + 0x28, 0x5, 0xe0, 0x1f, 0xfc, 0x12, 0x99, 0x31, + 0x88, 0x0, 0x96, 0x61, 0x40, + + /* U+002F "/" */ + 0x0, 0xff, 0xe5, 0x14, 0x6f, 0xfd, 0x6c, 0x20, + 0x1f, 0xfc, 0xb2, 0x54, 0x20, 0x1, 0xe2, 0x8, + 0x7, 0xff, 0x28, 0x53, 0xc, 0x0, 0x48, 0x82, + 0x0, 0xff, 0xe5, 0xa6, 0x20, 0x0, 0x52, 0xcc, + 0x3, 0xff, 0x96, 0x98, 0x80, 0x12, 0x61, 0x80, + 0x7f, 0xf2, 0xcf, 0x10, 0x40, 0x9, 0xe8, 0x1, + 0xff, 0xcb, 0x24, 0x52, 0x0, 0x1e, 0xa0, 0x80, + 0x7f, 0xf2, 0x85, 0x2c, 0x80, 0x4, 0x88, 0x10, + 0xf, 0xfe, 0x5a, 0x69, 0x80, 0x5, 0x6c, 0x80, + 0x3f, 0xf9, 0x69, 0xe8, 0x1, 0x3e, 0x18, 0x7, + 0xff, 0x2c, 0xf5, 0x0, 0x25, 0xc4, 0x0, 0xff, + 0xe5, 0x95, 0xa0, 0x80, 0x13, 0x10, 0x3, 0xff, + 0x96, 0x2a, 0x84, 0x0, 0x3c, 0x41, 0x0, 0xff, + 0xe5, 0xb, 0xe1, 0x80, 0x9, 0x10, 0x40, 0x1f, + 0xfc, 0xb4, 0xc4, 0x0, 0xa, 0x61, 0x80, 0x7f, + 0xf2, 0xd3, 0x10, 0x2, 0x4c, 0x40, 0xf, 0xfe, + 0x59, 0xe2, 0x8, 0x1, 0x31, 0x0, 0x3f, 0xf9, + 0x64, 0x8a, 0x40, 0x3, 0xd7, 0x10, 0xf, 0xfe, + 0x50, 0xa5, 0x90, 0x0, 0x91, 0x2, 0x1, 0xff, + 0xcb, 0x4c, 0x30, 0x0, 0xad, 0x90, 0x7, 0xff, + 0x2d, 0x3d, 0x40, 0x27, 0xc3, 0x0, 0xff, 0xe5, + 0x9e, 0xa0, 0x4, 0x98, 0x80, 0x1f, 0xfc, 0xb2, + 0xb4, 0x10, 0x2, 0x6a, 0x0, 0x7f, 0xf2, 0xc5, + 0x50, 0x80, 0x7, 0x88, 0x20, 0x1f, 0xfc, 0xb3, + 0x2b, 0x88, 0xca, 0x40, 0x1f, 0xfc, 0x90, + + /* U+0030 "0" */ + 0x0, 0xff, 0x84, 0xda, 0x6f, 0x3b, 0x9f, 0xf7, + 0x73, 0x2e, 0x58, 0xc4, 0x3, 0xff, 0x8a, 0x4d, + 0x5f, 0x92, 0xc8, 0x62, 0x20, 0x8, 0x44, 0x68, + 0xd3, 0x9f, 0x4a, 0x40, 0x1f, 0xfc, 0x2, 0x7e, + 0x95, 0x10, 0x8, 0x4d, 0xa2, 0xaa, 0x86, 0x31, + 0x0, 0x85, 0x6b, 0x9c, 0x80, 0x3f, 0x92, 0x24, + 0xc0, 0x31, 0x3e, 0xe4, 0xba, 0xac, 0xf3, 0x9a, + 0xe4, 0x1, 0x8e, 0x61, 0x0, 0x3e, 0x5e, 0x51, + 0x0, 0xc9, 0x72, 0x60, 0x1f, 0xc7, 0x36, 0x80, + 0x18, 0x57, 0x90, 0x3, 0x8f, 0x50, 0x3, 0x8f, + 0x5c, 0x40, 0x3f, 0xe1, 0x7d, 0x30, 0xe, 0x4c, + 0x30, 0xc, 0xa6, 0x20, 0x18, 0x55, 0x42, 0x1, + 0xff, 0xc1, 0x15, 0x50, 0x80, 0x61, 0x35, 0x0, + 0x88, 0x5c, 0x3, 0x8f, 0x84, 0x3, 0xff, 0x86, + 0x3c, 0x60, 0x1c, 0xe2, 0x40, 0x17, 0x88, 0x7, + 0x8, 0x18, 0x7, 0xff, 0xc, 0xc0, 0x40, 0x38, + 0x7c, 0x40, 0x3f, 0xfb, 0xde, 0x20, 0x1c, 0x20, + 0x60, 0x1f, 0xfc, 0x33, 0x1, 0x0, 0xe1, 0xf1, + 0x0, 0x11, 0x1c, 0x3, 0x8f, 0x84, 0x3, 0xff, + 0x86, 0xdc, 0x60, 0x1c, 0xe4, 0x40, 0x9, 0x8c, + 0x80, 0x30, 0xaa, 0x8, 0x7, 0xff, 0x4, 0x4d, + 0x44, 0x3, 0x9, 0xb0, 0x6, 0x3c, 0x40, 0xe, + 0x3c, 0x71, 0x0, 0xff, 0x85, 0xf0, 0xc0, 0x30, + 0xbe, 0x18, 0x7, 0x26, 0xb0, 0x80, 0x64, 0xb8, + 0x30, 0xf, 0xe3, 0x9b, 0x40, 0xc, 0x2f, 0xa8, + 0x1, 0xf2, 0x5c, 0x18, 0x6, 0x26, 0xdc, 0x97, + 0x55, 0x9e, 0x73, 0x5c, 0x80, 0x31, 0xc5, 0xa0, + 0x7, 0xf1, 0x36, 0xd2, 0x88, 0x4, 0x26, 0xd1, + 0x55, 0x43, 0x18, 0x80, 0x42, 0xb5, 0xac, 0x40, + 0x1f, 0xfc, 0x1, 0x5a, 0xfc, 0x96, 0x43, 0x11, + 0x0, 0x42, 0x23, 0x46, 0x9c, 0xfa, 0x51, 0x0, + 0xf0, + + /* U+0031 "1" */ + 0x0, 0xff, 0x9, 0x2b, 0xd6, 0x77, 0xff, 0x52, + 0x80, 0x7f, 0xf1, 0x9, 0xab, 0x7b, 0xfb, 0x6a, + 0x14, 0xc4, 0x3, 0xff, 0x96, 0x3c, 0x84, 0x20, + 0x1f, 0xfd, 0x33, 0x9c, 0xdd, 0xf6, 0x41, 0x80, + 0x7f, 0xf3, 0x44, 0x8b, 0xf0, 0xb8, 0x7, 0xff, + 0xfc, 0x3, 0xff, 0xfe, 0x1, 0xff, 0xff, 0x0, + 0xff, 0xff, 0x80, 0x7f, 0xff, 0xc0, 0x3e, 0x13, + 0x55, 0xfe, 0x7f, 0x60, 0xf, 0x36, 0x2a, 0xfe, + 0x42, 0x0, 0xcb, 0x57, 0x55, 0xfa, 0x58, 0x80, + 0x3c, 0x6d, 0x55, 0xfa, 0x14, 0x80, 0x3f, 0xfb, + 0x20, + + /* U+0032 "2" */ + 0x0, 0xfe, 0x25, 0x79, 0xbc, 0xde, 0xff, 0xbb, + 0x72, 0xea, 0x18, 0xc4, 0x3, 0xff, 0x84, 0x26, + 0xf7, 0xdb, 0x50, 0xc8, 0x64, 0x20, 0x10, 0x91, + 0xa2, 0xbc, 0xe7, 0xdb, 0x98, 0x7, 0xf1, 0x3e, + 0xe4, 0x20, 0x80, 0x4, 0xd5, 0xe6, 0xaa, 0x98, + 0x74, 0x20, 0xc, 0x29, 0x1d, 0x4, 0x1, 0xf1, + 0x34, 0x31, 0x1, 0x35, 0x66, 0x2a, 0x19, 0x56, + 0x67, 0x8b, 0xca, 0x51, 0x0, 0xc4, 0xf6, 0x80, + 0x1f, 0xa, 0x4e, 0xfe, 0xca, 0x90, 0x7, 0xfc, + 0x2b, 0x2c, 0x20, 0x1c, 0xa6, 0x40, 0x1f, 0xfd, + 0x2, 0xe2, 0x0, 0xe2, 0xf1, 0x0, 0xff, 0xe8, + 0x1f, 0x8, 0x7, 0x2f, 0x18, 0x7, 0xff, 0x3c, + 0x95, 0x8, 0x3, 0x11, 0xa0, 0x7, 0xff, 0x38, + 0x56, 0x24, 0xc0, 0x31, 0xd5, 0x8, 0x3, 0xff, + 0x9a, 0x91, 0x6a, 0x20, 0x10, 0xb4, 0x39, 0x0, + 0x7f, 0xf2, 0xc5, 0x26, 0x4c, 0x20, 0x19, 0x22, + 0x8, 0x1, 0xff, 0xcb, 0x27, 0xdb, 0x62, 0x0, + 0x85, 0x6e, 0x98, 0x40, 0x3f, 0xf9, 0x22, 0xb5, + 0x90, 0x60, 0x18, 0x9f, 0x69, 0x4, 0x3, 0xff, + 0x90, 0x29, 0x39, 0x4a, 0x20, 0x10, 0xad, 0x7c, + 0x18, 0x7, 0xff, 0x20, 0x96, 0xb2, 0xd8, 0x80, + 0x21, 0x5a, 0xca, 0x52, 0x0, 0xff, 0xe3, 0x93, + 0x5e, 0x52, 0x90, 0x6, 0x25, 0x9f, 0x7, 0x55, + 0x33, 0x7f, 0xf0, 0x50, 0x80, 0x23, 0x8c, 0x94, + 0x10, 0xf, 0x89, 0x62, 0xab, 0xa6, 0x7f, 0xf8, + 0x30, 0xa2, 0x0, 0x71, 0x0, 0xff, 0xeb, 0x80, + + /* U+0033 "3" */ + 0x0, 0xfe, 0x24, 0x79, 0xbc, 0xde, 0xff, 0xdd, + 0xb9, 0x8a, 0x96, 0x42, 0x0, 0xff, 0xe0, 0x89, + 0xb5, 0x6e, 0xae, 0x19, 0xc, 0x84, 0x3, 0x9, + 0x19, 0x95, 0xa6, 0xf7, 0x52, 0x82, 0x1, 0xf8, + 0x9e, 0x20, 0xa4, 0x0, 0x13, 0x56, 0x89, 0xaa, + 0xd2, 0xea, 0x40, 0x1c, 0x4d, 0x76, 0x50, 0xf, + 0x89, 0xaf, 0x66, 0x27, 0x3f, 0x2a, 0x5d, 0x95, + 0x73, 0x45, 0x65, 0x28, 0x80, 0x72, 0x62, 0x0, + 0x7f, 0x1b, 0x3b, 0x18, 0x80, 0x7f, 0xf0, 0x5, + 0x30, 0x80, 0x38, 0x4c, 0x40, 0x3f, 0xf9, 0xe2, + 0xfa, 0x60, 0x1c, 0x7a, 0xe0, 0x1f, 0xfc, 0x61, + 0x11, 0x10, 0xd5, 0xe6, 0xfe, 0x50, 0x3, 0x1c, + 0x7b, 0x90, 0x7, 0xff, 0xd, 0x6b, 0xfb, 0x9b, + 0xac, 0xa8, 0x64, 0x10, 0x25, 0x7a, 0xdc, 0x73, + 0x0, 0xff, 0xe9, 0x9b, 0x11, 0x18, 0x80, 0x3f, + 0xf8, 0xeb, 0x7b, 0x98, 0xbb, 0x54, 0xba, 0x98, + 0x80, 0x9a, 0xc5, 0xe6, 0x1c, 0xc0, 0x3f, 0xf8, + 0xa2, 0x46, 0x64, 0x42, 0xb4, 0x56, 0x76, 0x39, + 0x0, 0x42, 0x71, 0xee, 0x40, 0x1f, 0xfc, 0xf3, + 0x88, 0x28, 0x7, 0x1d, 0x29, 0x0, 0x7f, 0xf4, + 0x1c, 0x88, 0x1, 0xc5, 0xcc, 0x1, 0xe2, 0x20, + 0x80, 0x7f, 0xf1, 0xd8, 0x88, 0x1, 0xc5, 0xcc, + 0x1, 0xa, 0x56, 0x6f, 0xdb, 0x98, 0x80, 0x7f, + 0xf0, 0x4d, 0xe1, 0x40, 0x3c, 0xe6, 0x40, 0x2, + 0x78, 0x51, 0x1, 0x48, 0xcf, 0xca, 0x97, 0x66, + 0xce, 0xe9, 0xbe, 0xc8, 0x30, 0xe, 0x49, 0x84, + 0x0, 0x89, 0xb6, 0xdc, 0xc4, 0x2, 0x13, 0x56, + 0x89, 0x9d, 0x10, 0x64, 0x10, 0xe, 0x26, 0xaa, + 0x31, 0x0, 0x78, 0x52, 0x33, 0xf6, 0xa1, 0x94, + 0xc8, 0x82, 0x1, 0x84, 0x8d, 0x15, 0xe7, 0x3b, + 0x65, 0x44, 0x3, 0x80, + + /* U+0034 "4" */ + 0x0, 0xff, 0xe4, 0x13, 0xe7, 0xff, 0xeb, 0x50, + 0xf, 0xfe, 0x79, 0x37, 0x41, 0x80, 0x7f, 0xf5, + 0xc5, 0xa6, 0x46, 0x1, 0xff, 0xd7, 0x16, 0xa8, + 0x40, 0x8, 0xdd, 0x8c, 0x3, 0xff, 0xa0, 0x2b, + 0x70, 0x82, 0x0, 0x16, 0xfb, 0x11, 0x0, 0x7f, + 0xf3, 0x85, 0x2e, 0xca, 0x20, 0x12, 0x44, 0xc, + 0x3, 0xff, 0xa0, 0x91, 0x4a, 0x20, 0x12, 0x4d, + 0x30, 0x80, 0x46, 0x1, 0xff, 0xcb, 0x39, 0x93, + 0x8, 0x4, 0x93, 0x26, 0x10, 0xf, 0xfe, 0x79, + 0xc7, 0x31, 0x0, 0x47, 0x32, 0x62, 0x0, 0xff, + 0xe7, 0x9c, 0x73, 0x90, 0x4, 0x73, 0xcc, 0x40, + 0x1f, 0xfc, 0xf2, 0x7f, 0x72, 0x0, 0x89, 0xa5, + 0x44, 0xcf, 0xf9, 0x48, 0x3, 0xcf, 0xa6, 0x7c, + 0x40, 0x11, 0x55, 0xc, 0x3, 0x89, 0xab, 0x33, + 0xfe, 0x95, 0x10, 0xe, 0x37, 0xcc, 0xeb, 0x40, + 0xf, 0xff, 0x1, 0x46, 0xff, 0xff, 0xf2, 0x31, + 0xc4, 0x3, 0x92, 0xbf, 0xfa, 0x50, 0x3, 0xff, + 0xfe, 0x1, 0xff, 0xff, 0x0, 0xff, 0xe4, 0x0, + + /* U+0035 "5" */ + 0x0, 0xf0, 0xbe, 0x7f, 0xff, 0xf3, 0x36, 0xc, + 0x3, 0xf8, 0xfc, 0x40, 0x3f, 0xfb, 0x2, 0x23, + 0x0, 0xe3, 0x69, 0x9f, 0xfe, 0x2c, 0x59, 0x0, + 0x7f, 0x39, 0x88, 0x6, 0x14, 0xa6, 0x6f, 0xfe, + 0x2a, 0x98, 0x80, 0x7f, 0x8, 0x80, 0x38, 0xbc, + 0x80, 0x3f, 0xfa, 0x2, 0x4e, 0x1, 0xcc, 0x42, + 0x1, 0xff, 0xd0, 0x3f, 0x10, 0xe, 0x7e, 0xac, + 0xef, 0xff, 0x76, 0xe5, 0x3a, 0x8, 0x7, 0xff, + 0x4, 0x44, 0x60, 0x1c, 0x48, 0xa6, 0x20, 0x1e, + 0x12, 0x35, 0x8b, 0xed, 0x83, 0x0, 0xff, 0x1d, + 0x42, 0x90, 0x9b, 0x4d, 0xe6, 0xf7, 0xfb, 0xb6, + 0xe5, 0x48, 0x3, 0x89, 0xfa, 0x4c, 0x3, 0xf8, + 0xda, 0xb7, 0xb2, 0x59, 0xc, 0x84, 0x0, 0x24, + 0x8d, 0x59, 0x48, 0x1, 0xc4, 0xd0, 0xa0, 0x1f, + 0xfc, 0xf1, 0x5f, 0x61, 0x0, 0xe6, 0xd3, 0x0, + 0xff, 0xe8, 0x37, 0x10, 0x7, 0x11, 0x18, 0x3, + 0xff, 0xa0, 0x3e, 0x20, 0x1c, 0x26, 0xc0, 0x1e, + 0x11, 0x0, 0x7f, 0xf1, 0xc5, 0x50, 0x80, 0x39, + 0x7c, 0xc0, 0x32, 0x4e, 0x76, 0xca, 0x90, 0x7, + 0xff, 0x4, 0x9a, 0xe0, 0xc0, 0x38, 0xf1, 0x0, + 0x22, 0x78, 0x62, 0x2, 0x6a, 0xde, 0xba, 0x87, + 0x66, 0xcf, 0x15, 0xba, 0x95, 0x10, 0xc, 0x71, + 0xce, 0x40, 0x11, 0x3f, 0x53, 0x98, 0x80, 0x42, + 0x8a, 0xf1, 0x33, 0xa1, 0xd4, 0x80, 0x38, 0x9a, + 0xb9, 0xc8, 0x3, 0xe2, 0x58, 0xcf, 0xda, 0x87, + 0x53, 0x22, 0x8, 0x4, 0x24, 0x68, 0xad, 0x17, + 0xdb, 0x2a, 0x40, 0x1e, + + /* U+0036 "6" */ + 0x0, 0xff, 0xe1, 0x12, 0xbc, 0xde, 0x77, 0x3f, + 0xf7, 0x6e, 0x5c, 0xb2, 0x8, 0x7, 0xff, 0xc, + 0x96, 0xb7, 0x55, 0xc, 0x86, 0x22, 0x0, 0xc2, + 0x46, 0x8d, 0x37, 0xf9, 0x8, 0x20, 0x1f, 0xc9, + 0x3f, 0x4a, 0x40, 0x18, 0x91, 0xa2, 0x13, 0x34, + 0x3a, 0x98, 0x80, 0x4d, 0xaa, 0x20, 0x1f, 0x1c, + 0x4b, 0x10, 0x4, 0x2b, 0x5b, 0xab, 0x97, 0x73, + 0x34, 0xf1, 0x59, 0xdb, 0xaf, 0xa5, 0x10, 0xf, + 0x92, 0x58, 0x80, 0x32, 0x5d, 0x94, 0x80, 0x3f, + 0xf8, 0x24, 0x41, 0x0, 0xfe, 0x4d, 0x51, 0x0, + 0x85, 0xe1, 0x44, 0x3, 0xff, 0x9c, 0x46, 0xa0, + 0x1c, 0x9a, 0x60, 0x28, 0xf5, 0x9b, 0xdf, 0xee, + 0xdc, 0xba, 0x84, 0x20, 0xf, 0xf3, 0x71, 0x80, + 0x61, 0x33, 0x3d, 0xfd, 0xc2, 0x99, 0x8, 0x0, + 0x48, 0xd1, 0x5e, 0xf7, 0x50, 0x80, 0x1f, 0x9, + 0x80, 0x70, 0xb4, 0xc2, 0x1a, 0xc5, 0xe6, 0xf6, + 0xe5, 0xc2, 0x90, 0x6, 0x27, 0x98, 0x20, 0xe, + 0x31, 0x0, 0xf8, 0xdf, 0x36, 0x9d, 0xc, 0x84, + 0x8d, 0x1e, 0xbe, 0xc, 0x3, 0x13, 0xda, 0x0, + 0x63, 0x10, 0xf, 0x2c, 0x40, 0xc0, 0x3f, 0xf8, + 0x4, 0xd4, 0x60, 0x1c, 0xa6, 0x20, 0x10, 0x98, + 0x80, 0x73, 0x10, 0x80, 0x7f, 0xf0, 0x84, 0x98, + 0x3, 0x8b, 0x94, 0x2, 0x5f, 0x50, 0xe, 0x2f, + 0x50, 0xf, 0xfe, 0x18, 0x80, 0x78, 0xc5, 0xc0, + 0x21, 0x4c, 0x30, 0xc, 0x2f, 0xa8, 0x1, 0xff, + 0xc1, 0x22, 0x38, 0x7, 0x36, 0x98, 0x6, 0x26, + 0xa4, 0x0, 0xc2, 0xd0, 0xe4, 0x1, 0xfe, 0x4b, + 0x92, 0x0, 0xc7, 0x8e, 0x1, 0xe1, 0x68, 0x72, + 0x0, 0xc7, 0x19, 0x70, 0xca, 0x89, 0x34, 0xe5, + 0xb0, 0x80, 0x44, 0xd0, 0xe4, 0x1, 0xf8, 0xe3, + 0xe9, 0x44, 0x2, 0x14, 0x79, 0xab, 0xba, 0x58, + 0xc0, 0x21, 0x38, 0xe8, 0x40, 0xf, 0xfe, 0x1, + 0x2d, 0x76, 0xd3, 0xa9, 0x90, 0x80, 0x42, 0x46, + 0x8d, 0x17, 0xf8, 0xe6, 0x20, 0x18, + + /* U+0037 "7" */ + 0x0, 0x13, 0xef, 0xff, 0xff, 0x4f, 0x60, 0xc0, + 0x3f, 0xfb, 0xa6, 0x91, 0x33, 0xff, 0xc9, 0x85, + 0x20, 0xe, 0x15, 0x89, 0x30, 0x0, 0x9a, 0xb3, + 0x7f, 0xf2, 0x17, 0xdc, 0x80, 0x21, 0x6a, 0xa2, + 0x88, 0x7, 0xff, 0x30, 0x9f, 0xdc, 0x80, 0x2, + 0xb7, 0x28, 0x1, 0xff, 0xcd, 0x16, 0x98, 0x30, + 0x9, 0x22, 0xd4, 0x3, 0xff, 0x9c, 0x73, 0x68, + 0x1, 0xa, 0xf3, 0x8, 0x7, 0xff, 0x39, 0x29, + 0x88, 0x2, 0x17, 0x95, 0x0, 0xff, 0xe7, 0xaf, + 0x30, 0x80, 0x44, 0xd6, 0x60, 0x1f, 0xfc, 0xe1, + 0x6e, 0x50, 0xc, 0x4b, 0x44, 0x1, 0xff, 0xcf, + 0x5c, 0x40, 0xe, 0x7c, 0x20, 0xf, 0xfe, 0x79, + 0xe3, 0x80, 0x71, 0xea, 0x80, 0x7f, 0xf3, 0xc5, + 0x50, 0x80, 0x30, 0xa9, 0x88, 0x7, 0xff, 0x3d, + 0x70, 0xc0, 0x38, 0xb9, 0x40, 0x3f, 0xfa, 0x4, + 0x20, 0x1e, 0x62, 0x10, 0xf, 0xfe, 0x79, 0xb, + 0x0, 0x70, 0x98, 0x80, 0x7f, 0xf4, 0x7, 0x8c, + 0x3, 0x8c, 0x5c, 0x3, 0xff, 0xa0, 0xc6, 0x20, + 0x1e, 0xf1, 0x0, 0xff, 0xe1, 0x80, + + /* U+0038 "8" */ + 0x0, 0xff, 0x85, 0x1e, 0x6f, 0x37, 0xb9, 0xfe, + 0xed, 0xcb, 0xa8, 0x52, 0x0, 0xff, 0xe2, 0x9c, + 0x6f, 0x5c, 0x32, 0x19, 0x8, 0x80, 0x2, 0x46, + 0x8a, 0xf5, 0xbd, 0x4a, 0x20, 0x1f, 0xf2, 0x4e, + 0xb9, 0x0, 0x42, 0x8f, 0x59, 0xbd, 0xba, 0xb9, + 0x52, 0x0, 0x85, 0x6a, 0x8c, 0x20, 0x1f, 0x8f, + 0x5c, 0x40, 0x21, 0x5b, 0xb4, 0x29, 0x90, 0x91, + 0x11, 0xab, 0xe0, 0xc0, 0x32, 0x6b, 0x80, 0x7c, + 0x2a, 0x42, 0x1, 0x8b, 0x10, 0x3, 0xfe, 0x25, + 0xb2, 0x0, 0xcd, 0xc6, 0x1, 0xe1, 0x21, 0x0, + 0xe1, 0xe2, 0x0, 0xff, 0xe0, 0xf8, 0x7, 0xf, + 0x90, 0x7, 0xc9, 0xcc, 0x20, 0x11, 0x34, 0x28, + 0x80, 0x7f, 0xa, 0x19, 0x0, 0x49, 0x4c, 0x20, + 0x1f, 0x92, 0x76, 0xc, 0x40, 0x52, 0xbe, 0xe1, + 0x8, 0x2, 0x15, 0xb8, 0x40, 0x14, 0x99, 0x30, + 0x80, 0x7f, 0xc6, 0xf9, 0x4a, 0x20, 0x1, 0x47, + 0xbd, 0xec, 0xca, 0xd4, 0x4d, 0xf2, 0xd8, 0x80, + 0x3f, 0xf8, 0x2, 0x93, 0x94, 0xa2, 0x4, 0xac, + 0x84, 0x22, 0x33, 0x10, 0x80, 0xd, 0xa1, 0x88, + 0x3, 0xfe, 0x38, 0xcb, 0x63, 0x12, 0x6b, 0xca, + 0x9b, 0xde, 0xdb, 0x85, 0x20, 0x8, 0x56, 0x77, + 0x20, 0xc0, 0x3c, 0x4f, 0xee, 0x40, 0x1, 0x6e, + 0x94, 0x10, 0xe, 0x24, 0x7a, 0xdc, 0x83, 0x0, + 0xc6, 0xfc, 0xe4, 0x1, 0xa, 0x61, 0x80, 0x67, + 0xd3, 0x0, 0xff, 0xe0, 0x9b, 0xc3, 0x8, 0x6, + 0x2b, 0x41, 0x0, 0x1f, 0x30, 0x7, 0x18, 0x80, + 0x7f, 0xf1, 0x17, 0xc8, 0x3, 0x87, 0x88, 0x0, + 0x58, 0xe0, 0x1c, 0x9c, 0xa2, 0x1, 0xff, 0xc1, + 0x17, 0xd3, 0x0, 0xe7, 0xd3, 0x0, 0x92, 0x5c, + 0x80, 0x21, 0x4a, 0xcb, 0x85, 0x32, 0x20, 0x88, + 0x8d, 0x1e, 0xb2, 0x50, 0x3, 0x13, 0x72, 0x80, + 0x71, 0xc7, 0xca, 0x88, 0x4, 0x48, 0xf5, 0x9b, + 0xae, 0xe6, 0xe5, 0xc2, 0x90, 0x4, 0x29, 0x1f, + 0x28, 0x1, 0xf8, 0x9a, 0xbb, 0x97, 0xc, 0xa8, + 0x64, 0x20, 0x10, 0x91, 0x99, 0x1a, 0x2f, 0x7a, + 0xdc, 0x80, 0x30, + + /* U+0039 "9" */ + 0x0, 0xff, 0x12, 0x3d, 0x5e, 0x6f, 0x7f, 0xdd, + 0xb9, 0x50, 0xa6, 0x20, 0x1f, 0xfc, 0x41, 0x49, + 0xdd, 0x5c, 0x2a, 0x19, 0x8, 0x4, 0x24, 0x6a, + 0xf5, 0x9f, 0x6c, 0x40, 0x1f, 0xf0, 0xad, 0x51, + 0x88, 0x2, 0x13, 0x79, 0xab, 0xb5, 0x4b, 0xa9, + 0x0, 0x42, 0x93, 0xf2, 0x60, 0x1f, 0x8e, 0x6d, + 0x4, 0x2, 0x27, 0xdc, 0x86, 0x54, 0x42, 0xb4, + 0x56, 0x5b, 0x8, 0x4, 0x4d, 0xee, 0x40, 0x1c, + 0x28, 0x81, 0x0, 0xc7, 0x52, 0x60, 0x1f, 0xe1, + 0x48, 0x82, 0x0, 0x63, 0xaa, 0x10, 0x6, 0x5e, + 0x20, 0xe, 0x63, 0x10, 0xf, 0xfe, 0x8, 0xbe, + 0x18, 0x6, 0x24, 0x40, 0x80, 0x4c, 0x26, 0x1, + 0xc2, 0x40, 0x1f, 0xfc, 0x31, 0x35, 0x0, 0xe3, + 0xf5, 0x0, 0x8b, 0x5c, 0x3, 0x93, 0x54, 0x40, + 0x3f, 0xf8, 0x4, 0xde, 0xe0, 0x1e, 0x31, 0x0, + 0xcb, 0xca, 0x20, 0x19, 0x2f, 0x65, 0x4c, 0x84, + 0x62, 0x46, 0x9c, 0xc4, 0xa0, 0x80, 0x78, 0x4c, + 0x3, 0x92, 0xec, 0xa2, 0x1, 0x9, 0xb5, 0x66, + 0xf7, 0x5b, 0x72, 0xc4, 0xb1, 0x2c, 0x40, 0x1c, + 0x26, 0x1, 0xe1, 0x5a, 0xed, 0xa7, 0x53, 0x31, + 0x8, 0x0, 0x48, 0xd6, 0x2f, 0xed, 0xc8, 0x8, + 0x3, 0x8c, 0x40, 0x3f, 0xc4, 0xb1, 0x59, 0x8d, + 0xef, 0xf7, 0x6e, 0x53, 0xa0, 0x80, 0x9a, 0x80, + 0x71, 0xf2, 0x80, 0x7f, 0xf4, 0x1f, 0xc, 0x3, + 0xa, 0xa0, 0x80, 0x7f, 0xf3, 0x89, 0xe9, 0x0, + 0x30, 0xbe, 0x98, 0x7, 0xe1, 0x46, 0x52, 0x0, + 0xff, 0x84, 0xe3, 0xa0, 0xc0, 0x31, 0x4d, 0xa0, + 0x7, 0xc7, 0x1b, 0x73, 0x5b, 0xab, 0x98, 0x76, + 0x63, 0xc4, 0xde, 0x61, 0xcc, 0x3, 0x13, 0xf3, + 0x90, 0x7, 0xc2, 0x1e, 0xe2, 0x1, 0x12, 0x33, + 0xc4, 0xca, 0x1d, 0x90, 0x80, 0x31, 0x2d, 0x64, + 0x18, 0x7, 0xf0, 0x9b, 0xdf, 0xe4, 0xba, 0x99, + 0x8, 0x80, 0x21, 0x11, 0x23, 0x45, 0x6e, 0xa9, + 0x44, 0x3, 0xf0, + + /* U+003A ":" */ + 0x0, 0xa, 0x46, 0x77, 0xf6, 0xd3, 0x10, 0x4, + 0x4d, 0x2e, 0x62, 0x2, 0x4b, 0x30, 0xa0, 0x17, + 0x80, 0x7f, 0xf0, 0x4a, 0x64, 0xc6, 0x20, 0x2, + 0x49, 0x85, 0x0, 0x85, 0x27, 0x3b, 0xfd, 0xb6, + 0xc4, 0x1, 0xff, 0xff, 0x0, 0xc2, 0x93, 0x9d, + 0xfe, 0xdb, 0x62, 0x0, 0x89, 0xa5, 0x8c, 0x40, + 0x4, 0x93, 0xa, 0x1, 0x78, 0x7, 0xff, 0x4, + 0xa6, 0x4c, 0x62, 0x0, 0x25, 0x98, 0x50, + + /* U+003B ";" */ + 0x0, 0xe1, 0x48, 0xce, 0xfe, 0xda, 0x62, 0x0, + 0xfe, 0x26, 0x97, 0x31, 0x1, 0x25, 0x98, 0x50, + 0xf, 0xef, 0x0, 0xff, 0xe3, 0x94, 0xc9, 0x8c, + 0x40, 0x4, 0x93, 0xa, 0x1, 0xfc, 0x29, 0x39, + 0xdf, 0xed, 0xb6, 0x20, 0xf, 0xff, 0xf8, 0x7, + 0xff, 0x74, 0x4d, 0x5e, 0x65, 0xc, 0x62, 0x1, + 0xfc, 0x2b, 0x59, 0x50, 0xcc, 0x79, 0xca, 0x61, + 0x0, 0xf8, 0xc9, 0x80, 0x3f, 0x26, 0xb8, 0x7, + 0xc4, 0xd2, 0xe8, 0x42, 0x1, 0xce, 0x22, 0x0, + 0xf8, 0x52, 0x2f, 0x74, 0xe2, 0x1, 0x31, 0x8, + 0x7, 0xfc, 0x74, 0xa2, 0x0, 0x3c, 0x40, 0xf, + 0xe2, 0x6a, 0xd6, 0x20, 0x16, 0x86, 0x10, 0xf, + 0x1c, 0x6e, 0xa5, 0x44, 0x47, 0x1b, 0x28, 0x1, + 0xf8, 0xf1, 0xd, 0x62, 0xf3, 0xe, 0x60, 0x1f, + 0x0, + + /* U+003C "<" */ + 0x0, 0xff, 0xfe, 0x9, 0xab, 0xcd, 0xed, 0xb0, + 0x80, 0x7f, 0xf3, 0x49, 0x1a, 0x2b, 0x3b, 0x99, + 0x50, 0xc8, 0x4e, 0x1, 0xff, 0xc7, 0x12, 0x57, + 0x9b, 0xdf, 0xdb, 0x97, 0x53, 0x10, 0x8, 0x4d, + 0x5e, 0x50, 0x40, 0x3f, 0xc2, 0x6b, 0x15, 0x9d, + 0xcd, 0xa8, 0x64, 0x20, 0x8, 0x4d, 0x5e, 0x6f, + 0x7f, 0xb2, 0xa1, 0x48, 0x3, 0x89, 0x66, 0xf7, + 0xb9, 0x94, 0xea, 0x62, 0x0, 0x13, 0x57, 0x9b, + 0xdf, 0xec, 0xa8, 0x64, 0x20, 0xf, 0xf8, 0x52, + 0x59, 0x8, 0x40, 0x22, 0x69, 0xbd, 0xfe, 0xca, + 0x86, 0x42, 0x0, 0xff, 0xe4, 0xb8, 0x7, 0xc4, + 0xd1, 0x19, 0x90, 0x84, 0x3, 0xff, 0x94, 0x2d, + 0x7d, 0xb5, 0xc, 0x84, 0x0, 0x13, 0x57, 0x9b, + 0xde, 0xe6, 0x54, 0x32, 0x10, 0x80, 0x7f, 0xf1, + 0x44, 0x95, 0xe6, 0xf7, 0xf6, 0xe5, 0xd4, 0xc4, + 0x0, 0x26, 0xaf, 0x37, 0xbd, 0xcc, 0xa8, 0x64, + 0x21, 0x0, 0xff, 0xe2, 0x92, 0x34, 0x56, 0x77, + 0x32, 0xa1, 0x90, 0x80, 0x21, 0x35, 0x79, 0xbd, + 0xeb, 0x61, 0x0, 0xff, 0xe4, 0x89, 0xab, 0xcd, + 0xef, 0xed, 0xcb, 0xa9, 0x88, 0x4, 0xe0, 0x1f, + 0xfd, 0x32, 0x46, 0x8a, 0xce, 0xe6, 0x54, 0xa8, + 0x80, 0x0, + + /* U+003D "=" */ + 0x1, 0x6c, 0xff, 0xff, 0xea, 0xe3, 0x8, 0x7, + 0xff, 0x84, 0x5b, 0x3b, 0xbf, 0xfa, 0xb8, 0xc2, + 0x1, 0xe1, 0x1f, 0xfe, 0xa8, 0x7, 0xff, 0xfc, + 0x3, 0xff, 0x86, 0x2d, 0x9f, 0xff, 0xfd, 0x5c, + 0x61, 0x0, 0xff, 0xf0, 0x8b, 0x67, 0x77, 0xff, + 0x57, 0x18, 0x40, 0x0, + + /* U+003E ">" */ + 0x0, 0xff, 0xef, 0x8b, 0x5e, 0xdc, 0xba, 0x98, + 0x80, 0x7f, 0xf5, 0x9c, 0x91, 0xa2, 0xb3, 0xb9, + 0x95, 0xc, 0x84, 0x1, 0xff, 0xcd, 0x14, 0x97, + 0x53, 0x10, 0x8, 0x4d, 0x5e, 0x6f, 0x7f, 0x6e, + 0x5d, 0x48, 0x40, 0x3f, 0xf8, 0xc4, 0xb1, 0x59, + 0xdf, 0xb7, 0x2e, 0xa6, 0x40, 0x11, 0x23, 0x45, + 0x6f, 0x73, 0x2a, 0x14, 0xc4, 0x3, 0xff, 0x8c, + 0x48, 0xd1, 0x59, 0xbf, 0xb9, 0x50, 0xa6, 0x40, + 0x1, 0x35, 0x7a, 0xce, 0xe6, 0xdc, 0xa9, 0x0, + 0x7f, 0xf2, 0x8, 0xd5, 0xeb, 0x37, 0xf6, 0xe5, + 0x8c, 0x2, 0x12, 0x46, 0x94, 0x10, 0xf, 0xfe, + 0x50, 0x92, 0x34, 0x46, 0x63, 0x0, 0xf9, 0xc0, + 0x3f, 0xf8, 0x82, 0x48, 0xd1, 0x59, 0xdc, 0xdb, + 0x97, 0x53, 0x10, 0x1, 0x23, 0x45, 0x67, 0x5b, + 0x8, 0x7, 0x84, 0x91, 0xa2, 0xb3, 0xb9, 0xb7, + 0x2e, 0xa6, 0x20, 0x1, 0x35, 0x79, 0xbd, 0xfd, + 0xb9, 0x75, 0x31, 0x0, 0xf0, 0xb5, 0xf6, 0xdc, + 0xba, 0x98, 0x80, 0x44, 0x8d, 0x15, 0x9d, 0xcc, + 0xa8, 0x64, 0x20, 0xf, 0xfe, 0x23, 0x80, 0x42, + 0x6a, 0xf3, 0x7b, 0xfb, 0x72, 0xea, 0x62, 0x1, + 0xff, 0xc9, 0x15, 0x9a, 0xce, 0xe6, 0x54, 0x32, + 0x10, 0x7, 0xff, 0x40, + + /* U+003F "?" */ + 0x0, 0xfc, 0x48, 0xf3, 0x79, 0xbd, 0xff, 0x76, + 0xe5, 0xd3, 0xa1, 0x0, 0x7f, 0x85, 0x23, 0x31, + 0x70, 0xc8, 0x64, 0x20, 0x10, 0x91, 0xa2, 0xc5, + 0xee, 0xa0, 0xc0, 0x3c, 0x91, 0x4e, 0x62, 0x2, + 0x6a, 0xd1, 0x33, 0x43, 0xa1, 0x0, 0x71, 0x3f, + 0x41, 0x80, 0x64, 0x9f, 0xa8, 0x85, 0xfe, 0x54, + 0xbb, 0x34, 0xf1, 0x79, 0x28, 0x1, 0xc4, 0x8a, + 0x20, 0x1c, 0x2a, 0xee, 0x41, 0x0, 0xff, 0xa, + 0x19, 0x0, 0x70, 0xf1, 0x80, 0x7f, 0xf2, 0x45, + 0xc, 0x80, 0x30, 0xa6, 0x10, 0x7, 0xff, 0x1c, + 0x9a, 0xa1, 0x0, 0x21, 0x48, 0x82, 0x0, 0x7f, + 0xf1, 0x8e, 0x7e, 0x50, 0x40, 0x4, 0xd5, 0x46, + 0x10, 0xf, 0xfe, 0x20, 0xa5, 0x6b, 0x10, 0x4, + 0x71, 0xd2, 0x82, 0x1, 0xff, 0xc5, 0x48, 0xa5, + 0x10, 0x9, 0x27, 0x9c, 0xc0, 0x3f, 0xf8, 0xeb, + 0xcc, 0x20, 0x10, 0xb4, 0x31, 0x0, 0x7f, 0xf2, + 0x4, 0xc4, 0x3, 0x97, 0xcc, 0x3, 0xff, 0x94, + 0x2d, 0x7f, 0xfd, 0x6c, 0x1, 0xff, 0xec, 0x15, + 0xad, 0xff, 0xb6, 0x98, 0x80, 0x3f, 0xf9, 0x27, + 0x36, 0xa4, 0x1, 0x12, 0xcd, 0xa0, 0x7, 0xff, + 0x24, 0x40, 0x3f, 0xfa, 0x67, 0x16, 0xc6, 0x20, + 0x24, 0xb5, 0x68, 0x1, 0xfe, + + /* U+0040 "@" */ + 0x0, 0xff, 0xe5, 0x9, 0xab, 0x45, 0x5e, 0x6e, + 0xbb, 0x9f, 0xfb, 0xb9, 0xb9, 0x75, 0xe, 0xa6, + 0x20, 0x1f, 0xfd, 0x51, 0x36, 0x8b, 0xee, 0x65, + 0x4b, 0xaa, 0x19, 0x10, 0x0, 0x44, 0x11, 0xc4, + 0x68, 0xaf, 0x15, 0x9d, 0xb6, 0xe8, 0x20, 0x1f, + 0xfc, 0xd3, 0x6b, 0xfc, 0x97, 0x41, 0x11, 0x2b, + 0xcd, 0xef, 0x7f, 0xbb, 0x9b, 0xae, 0xe7, 0xfd, + 0xd9, 0x72, 0xc6, 0x20, 0x49, 0x17, 0xf6, 0xc4, + 0x1, 0xff, 0xc7, 0x38, 0xdc, 0x94, 0x10, 0x25, + 0x9c, 0xfd, 0xa8, 0x64, 0x21, 0x0, 0xff, 0x84, + 0xd1, 0xa7, 0x3e, 0xdd, 0x4, 0x5, 0x27, 0xe0, + 0xc0, 0x3f, 0xf8, 0x42, 0xb7, 0xae, 0x40, 0x3, + 0x7c, 0xc5, 0x31, 0x88, 0x7, 0xff, 0x30, 0x52, + 0x2f, 0x20, 0xc0, 0x4, 0xfd, 0x4, 0x1, 0xfe, + 0x16, 0xaa, 0x20, 0x80, 0xad, 0x6c, 0x18, 0x80, + 0x7f, 0xf5, 0x9, 0xfd, 0x88, 0x0, 0x4f, 0x8, + 0x1, 0xf9, 0x22, 0x8, 0x0, 0x16, 0xaa, 0x28, + 0x80, 0x7f, 0x84, 0xd5, 0xe2, 0x6a, 0x93, 0xc, + 0x62, 0x4b, 0x35, 0x53, 0x18, 0x7, 0x8e, 0x2d, + 0x0, 0x24, 0xd4, 0x0, 0xe1, 0x6f, 0x61, 0x0, + 0x1c, 0x41, 0x0, 0x3f, 0xc6, 0xf7, 0xf9, 0x50, + 0xec, 0xaa, 0x67, 0x9c, 0xc7, 0xdb, 0x2a, 0x98, + 0x8, 0x3, 0xe1, 0x53, 0x20, 0x0, 0xa1, 0x90, + 0x6, 0x4d, 0x40, 0x9, 0x65, 0x84, 0x3, 0xf1, + 0x3e, 0x62, 0x10, 0x44, 0x8f, 0x79, 0xdd, 0x5c, + 0x19, 0x10, 0x40, 0x2, 0xaa, 0x10, 0xf, 0xc7, + 0xac, 0x1, 0x1f, 0x8, 0x4, 0x9e, 0x80, 0x12, + 0x62, 0x0, 0x7e, 0x15, 0x88, 0x18, 0x0, 0x9f, + 0x6e, 0x10, 0xc4, 0x64, 0x6a, 0x40, 0xc, 0xbe, + 0x60, 0x1f, 0xe1, 0x21, 0x0, 0x9, 0xb8, 0x0, + 0x8d, 0x80, 0x22, 0xc4, 0x10, 0xf, 0x89, 0xa1, + 0x40, 0x24, 0xb9, 0x30, 0xf, 0xc5, 0xca, 0x1, + 0x11, 0xa0, 0x7, 0xfc, 0x24, 0x20, 0x1, 0x27, + 0x0, 0xf, 0x90, 0x4, 0xc2, 0x60, 0x1f, 0x9f, + 0x8, 0x2, 0x3d, 0x71, 0x0, 0xfe, 0x53, 0x10, + 0x9, 0xf4, 0x80, 0x3f, 0xc4, 0x46, 0x0, 0x97, + 0x8c, 0x0, 0xe4, 0x20, 0x10, 0x98, 0x80, 0x7c, + 0x5a, 0xc0, 0x19, 0x88, 0x40, 0x3f, 0x8f, 0xd4, + 0x2, 0x2d, 0x70, 0xf, 0xf1, 0xd5, 0x8, 0x0, + 0x9a, 0xe0, 0x18, 0xc4, 0x2, 0x13, 0x0, 0xfc, + 0x7e, 0x20, 0x18, 0x44, 0x1, 0xfc, 0x76, 0x82, + 0x1, 0x8, 0x8c, 0x3, 0xf0, 0xb4, 0x39, 0x1, + 0x3c, 0x30, 0x80, 0x4c, 0x26, 0x1, 0x30, 0x90, + 0x7, 0xc2, 0x88, 0x10, 0x9, 0x22, 0x50, 0x84, + 0x44, 0x91, 0x9a, 0xe6, 0x20, 0x11, 0xd3, 0x18, + 0x80, 0x92, 0x3d, 0x7c, 0xa0, 0xb, 0x4c, 0x18, + 0x7, 0x16, 0xb8, 0x4, 0x58, 0x82, 0x1, 0xf1, + 0xcd, 0x31, 0x0, 0x9, 0xaf, 0x7b, 0x9b, 0x6e, + 0xd, 0x7f, 0xae, 0x40, 0x3, 0x8c, 0xef, 0xed, + 0xb8, 0x50, 0x37, 0xbf, 0x94, 0x0, 0xfc, 0xbe, + 0x80, 0x12, 0x53, 0x88, 0x7, 0xc2, 0x93, 0xba, + 0xa8, 0x76, 0x69, 0xe6, 0xf7, 0x21, 0x4, 0xe3, + 0x36, 0xea, 0x5d, 0x98, 0xf1, 0x57, 0xbf, 0x90, + 0x82, 0x1, 0xff, 0x2f, 0x28, 0x80, 0xe, 0x20, + 0x80, 0x1f, 0xe2, 0x57, 0x89, 0x9a, 0x19, 0x8, + 0x3, 0xc2, 0x48, 0xad, 0x13, 0x28, 0x75, 0x42, + 0x10, 0xf, 0xfe, 0x22, 0xc4, 0x98, 0x0, 0x5a, + 0xa8, 0xa2, 0x1, 0xff, 0xeb, 0x27, 0xe9, 0x41, + 0x1, 0x5a, 0xfb, 0x73, 0x10, 0xf, 0xfe, 0x58, + 0x88, 0x3, 0xff, 0xa0, 0x4d, 0x5b, 0x8, 0x20, + 0x29, 0x19, 0xdb, 0x72, 0xea, 0x86, 0x42, 0x20, + 0x8, 0x48, 0x86, 0x8a, 0xf3, 0x9d, 0xcc, 0x83, + 0x0, 0xff, 0xe8, 0x9, 0xbd, 0xfd, 0xc2, 0x98, + 0x81, 0x23, 0x45, 0x5e, 0x6f, 0x73, 0xfe, 0xed, + 0xd6, 0x5d, 0x43, 0x18, 0x8e, 0x71, 0x0, 0xff, + 0xe9, 0x8a, 0x3d, 0x67, 0x6e, 0x54, 0xbb, 0x2a, + 0x20, 0xcc, 0x44, 0x33, 0x22, 0xb3, 0x1e, 0x2b, + 0x3b, 0x99, 0x28, 0x20, 0x1f, 0xfc, 0x70, + + /* U+0041 "A" */ + 0x0, 0xff, 0xe3, 0xa5, 0x7f, 0xfe, 0xe9, 0x30, + 0xf, 0xfe, 0xca, 0x72, 0x0, 0x7e, 0x17, 0xa3, + 0x0, 0xff, 0xeb, 0xa7, 0x20, 0x80, 0x4, 0xcc, + 0x40, 0x10, 0xbd, 0x98, 0x7, 0xff, 0x55, 0x35, + 0x4, 0x2, 0x49, 0x85, 0x10, 0x8, 0x5a, 0xcc, + 0x3, 0xff, 0xa6, 0x9a, 0xe2, 0x1, 0x26, 0x22, + 0x31, 0xc4, 0x2, 0x15, 0xb3, 0x0, 0xff, 0xe8, + 0xa6, 0xb8, 0x80, 0x47, 0x88, 0x20, 0x98, 0x80, + 0x18, 0x96, 0xcc, 0x3, 0xff, 0x9e, 0x9a, 0xe2, + 0x1, 0x12, 0x20, 0x80, 0x24, 0xc4, 0x0, 0xc4, + 0xb6, 0x40, 0x1f, 0xfc, 0xd4, 0xd7, 0x10, 0x8, + 0x53, 0xc, 0x3, 0xb, 0xe9, 0x80, 0x62, 0x5a, + 0x20, 0xf, 0xfe, 0x59, 0xeb, 0x88, 0x6, 0x4c, + 0x40, 0xf, 0xa, 0x59, 0x0, 0x62, 0x5a, 0x20, + 0xf, 0xfe, 0x49, 0xd3, 0x88, 0x6, 0x5f, 0x50, + 0xf, 0xc4, 0x8a, 0x40, 0x18, 0x95, 0x44, 0x1, + 0xff, 0xc7, 0x3b, 0x71, 0x0, 0xc4, 0x60, 0x67, + 0xfe, 0x7f, 0x60, 0xe, 0x2a, 0x52, 0x0, 0xff, + 0xe2, 0x9d, 0xb0, 0x80, 0x71, 0x35, 0x66, 0x7f, + 0xae, 0x10, 0x3, 0xc5, 0x6a, 0x40, 0x1f, 0xfc, + 0x33, 0xb6, 0x10, 0xf, 0xfe, 0x89, 0xda, 0x90, + 0x7, 0xff, 0x4, 0xed, 0x44, 0x3, 0x13, 0xe7, + 0xff, 0xff, 0x16, 0x90, 0x3, 0x8e, 0xd4, 0x80, + 0x3f, 0xe3, 0xb5, 0x20, 0xc, 0x2b, 0x66, 0x1, + 0xff, 0xc5, 0x4d, 0x40, 0xe, 0x3b, 0x51, 0x0, + 0xfe, 0x3b, 0x52, 0x0, 0xc2, 0xf8, 0x60, 0x1f, + 0xfc, 0x61, 0x7c, 0x30, 0xe, 0x3b, 0x71, 0x0, + 0xf8, 0xad, 0x48, 0x3, 0xb, 0xea, 0x0, 0x7f, + 0xf2, 0x5, 0x6c, 0xc0, 0x38, 0xe9, 0xc4, 0x3, + 0x8a, 0x94, 0x80, 0x39, 0x35, 0x0, 0x3f, 0xf9, + 0x44, 0xa8, 0x40, 0x1c, 0x74, 0xe2, 0x0, + + /* U+0042 "B" */ + 0x5a, 0xff, 0xff, 0xe2, 0xf7, 0x5b, 0xac, 0xb9, + 0x75, 0x31, 0x0, 0xff, 0xe9, 0x8, 0xc4, 0x43, + 0x46, 0x8a, 0xce, 0xc8, 0x30, 0xf, 0xfe, 0x21, + 0x35, 0x66, 0x7a, 0xee, 0xa9, 0x86, 0x42, 0x0, + 0xe3, 0x7d, 0xa4, 0x0, 0xff, 0xe1, 0xf, 0xa1, + 0x9f, 0x91, 0x25, 0x67, 0x9b, 0xca, 0x40, 0xe, + 0x14, 0xc3, 0x0, 0xff, 0xe9, 0xa, 0x69, 0x80, + 0x70, 0x93, 0x0, 0x7f, 0xf4, 0xd7, 0x8, 0x3, + 0x8f, 0x50, 0x3, 0xff, 0x98, 0x24, 0x68, 0xd3, + 0x94, 0xa2, 0x1, 0x13, 0x43, 0x88, 0x7, 0xff, + 0x4, 0xe7, 0xbf, 0xff, 0x76, 0xe5, 0xcb, 0x18, + 0x81, 0x24, 0x5e, 0x4a, 0x0, 0x7f, 0xf5, 0xc9, + 0x6f, 0xa5, 0x4, 0x3, 0xff, 0x86, 0x4f, 0x7b, + 0xbd, 0x99, 0xae, 0xd5, 0x2e, 0xa6, 0x20, 0x26, + 0xaf, 0x7f, 0x6a, 0x20, 0x1f, 0xfc, 0x1, 0xe5, + 0x22, 0xe3, 0x3c, 0x88, 0x56, 0x8a, 0xcc, 0x52, + 0x88, 0x4, 0x29, 0x70, 0x80, 0x1f, 0xfd, 0x22, + 0x59, 0x71, 0x0, 0xc2, 0x98, 0x40, 0x1f, 0xfd, + 0x32, 0xe2, 0x0, 0xe2, 0x23, 0x0, 0x7f, 0xf4, + 0xd7, 0x4c, 0x3, 0x84, 0x9c, 0x3, 0xff, 0xa2, + 0x91, 0x2a, 0x1, 0xc2, 0xf8, 0x60, 0x1f, 0xe1, + 0xf4, 0x4f, 0xe5, 0x53, 0x3c, 0x56, 0x75, 0xb9, + 0x0, 0x61, 0x5b, 0x84, 0x0, 0xff, 0x89, 0xaa, + 0xef, 0xf5, 0x52, 0x61, 0xd4, 0xc4, 0x3, 0xa, + 0x46, 0xd2, 0x88, 0x7, 0xff, 0x30, 0x44, 0x46, + 0x64, 0x57, 0x9c, 0xee, 0x5b, 0x98, 0x7, 0xc0, + + /* U+0043 "C" */ + 0x0, 0xff, 0xe1, 0x12, 0xbc, 0xd6, 0x6f, 0x73, + 0xff, 0x76, 0xe5, 0xcb, 0xa1, 0x0, 0x7f, 0xf1, + 0xc5, 0x67, 0x3b, 0x6a, 0x19, 0x4c, 0x84, 0x40, + 0x18, 0x48, 0xd1, 0xa2, 0xf7, 0x52, 0xa4, 0x1, + 0xff, 0xc0, 0x25, 0xaf, 0xa6, 0x31, 0x0, 0xe1, + 0x23, 0x45, 0x66, 0x90, 0xc8, 0x40, 0x31, 0x35, + 0x73, 0x8, 0x7, 0xe2, 0x7e, 0xa5, 0x10, 0xe, + 0x36, 0xad, 0xed, 0xcb, 0xa9, 0x9a, 0xf3, 0x7b, + 0x69, 0x8c, 0x96, 0xb5, 0x84, 0x3, 0xe5, 0x89, + 0x30, 0xe, 0x27, 0xcc, 0x4a, 0x90, 0x7, 0xff, + 0x0, 0x96, 0x73, 0x69, 0x44, 0x3, 0xe1, 0x6e, + 0x51, 0x0, 0xc2, 0xb1, 0x26, 0x1, 0xff, 0xd3, + 0x4c, 0x40, 0xe, 0x17, 0xe5, 0x10, 0xf, 0xfe, + 0x99, 0x6b, 0x80, 0x79, 0x7d, 0x40, 0x3f, 0xfa, + 0xac, 0x26, 0x1, 0xe2, 0x20, 0x80, 0x7f, 0xff, + 0xc0, 0x27, 0x13, 0x0, 0xf1, 0x10, 0x40, 0x3f, + 0xfa, 0xa7, 0xac, 0x1, 0xe5, 0xf2, 0x0, 0xff, + 0xeb, 0x26, 0x18, 0x7, 0xb, 0xca, 0x0, 0x7f, + 0xf5, 0x45, 0xa9, 0x0, 0x38, 0x56, 0x1c, 0x80, + 0x3f, 0xf9, 0x2, 0x30, 0x7, 0xf0, 0xb4, 0x39, + 0x0, 0x71, 0xc6, 0x62, 0x10, 0x40, 0x3f, 0xf8, + 0x2, 0x91, 0x9f, 0xd9, 0x28, 0x20, 0x1f, 0x8e, + 0x3a, 0xc, 0x3, 0x84, 0xde, 0xfb, 0x9b, 0x95, + 0x33, 0x55, 0xe6, 0xf7, 0x2d, 0xcc, 0x40, 0x9a, + 0x18, 0x80, 0x3f, 0x8d, 0xf3, 0x65, 0x48, 0x3, + 0xc2, 0x46, 0xac, 0xd2, 0xa1, 0x90, 0x80, 0x61, + 0x47, 0xbd, 0x72, 0x0, 0xff, 0xe0, 0x13, 0x56, + 0xf6, 0x4b, 0xb2, 0x19, 0x8, 0x80, 0x21, 0x11, + 0x1a, 0x34, 0x56, 0xfd, 0xc2, 0x8, 0x7, 0x0, + + /* U+0044 "D" */ + 0x5a, 0xff, 0xff, 0xe1, 0xf7, 0x5b, 0x95, 0x30, + 0xc8, 0x40, 0x1f, 0xfd, 0x31, 0x18, 0x8d, 0x59, + 0xe6, 0xf7, 0xb2, 0x10, 0x40, 0x3f, 0xf8, 0xa4, + 0xb3, 0x55, 0xa6, 0x1d, 0x95, 0x46, 0x20, 0x1c, + 0x26, 0xf7, 0xf6, 0xc4, 0x1, 0xff, 0xc2, 0x1c, + 0x75, 0x5c, 0xcf, 0x13, 0x54, 0xce, 0xda, 0x63, + 0x10, 0xc, 0x29, 0x3c, 0xe4, 0x1, 0xff, 0xcf, + 0x25, 0x9c, 0xb5, 0x10, 0xe, 0x39, 0xb4, 0x0, + 0xff, 0xe9, 0x2c, 0x49, 0x80, 0x70, 0xb7, 0x20, + 0x7, 0xff, 0x48, 0x9a, 0xcc, 0x3, 0xc9, 0x86, + 0x1, 0xff, 0xd2, 0x13, 0x60, 0xf, 0x9, 0x30, + 0x7, 0xff, 0x4d, 0x88, 0x80, 0x1e, 0x13, 0x10, + 0xf, 0xfe, 0x90, 0x80, 0x7f, 0xf7, 0x58, 0x88, + 0x1, 0xe1, 0x31, 0x0, 0xff, 0xe8, 0x89, 0x30, + 0x7, 0x88, 0x8e, 0x1, 0xff, 0xd1, 0x29, 0xa3, + 0x0, 0xe1, 0x4c, 0x20, 0xf, 0xfe, 0x78, 0xb4, + 0xb9, 0x0, 0x70, 0xb5, 0x20, 0x7, 0xff, 0x30, + 0x4d, 0xab, 0x25, 0x0, 0x3c, 0x91, 0x26, 0x1, + 0xff, 0xe, 0x3a, 0xac, 0xcc, 0x78, 0x9a, 0xbd, + 0xfc, 0x95, 0x20, 0xe, 0x15, 0xaa, 0x30, 0x80, + 0x7f, 0xf0, 0x9, 0x66, 0xaa, 0x99, 0x43, 0xb2, + 0xa1, 0x8, 0x7, 0x9, 0xbd, 0xfd, 0x28, 0x80, + 0x7f, 0xf3, 0x4, 0x44, 0x68, 0xcf, 0x37, 0xbd, + 0x90, 0x82, 0x1, 0xfc, + + /* U+0045 "E" */ + 0x5a, 0xff, 0xff, 0xe8, 0xe3, 0x8, 0x7, 0xff, + 0x88, 0x96, 0x26, 0x7f, 0xf9, 0x10, 0x82, 0x1, + 0xfe, 0x1c, 0x66, 0xff, 0xe4, 0xa1, 0x0, 0x7f, + 0xff, 0xc0, 0x3f, 0xfc, 0x7, 0x3d, 0xff, 0xff, + 0xc4, 0xe9, 0x40, 0xf, 0xff, 0x30, 0xac, 0x4c, + 0xff, 0xf1, 0x23, 0x54, 0x3, 0xff, 0x84, 0x58, + 0xcd, 0xff, 0xc6, 0x41, 0x0, 0xff, 0xff, 0x80, + 0x7f, 0xff, 0xc0, 0x3f, 0x16, 0x33, 0x7f, 0xf2, + 0x90, 0x80, 0x3f, 0xc2, 0xb1, 0x33, 0xff, 0xc9, + 0xf7, 0x0, 0xff, 0xed, 0x0, + + /* U+0046 "F" */ + 0x5a, 0xff, 0xff, 0xe8, 0xe3, 0x88, 0x7, 0xff, + 0x88, 0x96, 0x26, 0x7f, 0xf9, 0x28, 0x20, 0x1f, + 0xe1, 0xc6, 0x6f, 0xfe, 0x4a, 0x98, 0x7, 0xff, + 0xfc, 0x3, 0xff, 0xc0, 0x38, 0xcd, 0xff, 0xc6, + 0x42, 0x0, 0xff, 0xe1, 0x12, 0xc4, 0xcf, 0xff, + 0x17, 0x98, 0x3, 0xff, 0xcc, 0x73, 0xdf, 0xff, + 0xfc, 0x5a, 0x40, 0xf, 0xff, 0xf8, 0x7, 0xff, + 0xfc, 0x3, 0xff, 0xfe, 0x1, 0xff, 0xd5, + + /* U+0047 "G" */ + 0x0, 0xff, 0xe1, 0x12, 0x34, 0x4d, 0xe6, 0xf7, + 0x3f, 0xee, 0xe6, 0xe5, 0xcb, 0xa9, 0x88, 0x7, + 0xff, 0x14, 0x52, 0x2f, 0xb6, 0xe5, 0xd9, 0xc, + 0x84, 0x40, 0x10, 0x88, 0x8d, 0x1a, 0x2b, 0x3f, + 0x25, 0x44, 0x3, 0xfc, 0x2b, 0x5f, 0x6e, 0x82, + 0x1, 0xe1, 0x23, 0x46, 0x6c, 0xa8, 0x64, 0x20, + 0x10, 0x9b, 0x5c, 0x20, 0x7, 0xc4, 0xdb, 0x4a, + 0x20, 0x1c, 0x4b, 0x39, 0xfd, 0xb9, 0x73, 0x3a, + 0xaf, 0x37, 0xb6, 0x99, 0x16, 0x72, 0x50, 0x3, + 0xcb, 0x10, 0x30, 0xe, 0x16, 0xbd, 0xa6, 0x30, + 0xf, 0xfe, 0x11, 0x2c, 0xdd, 0x31, 0x0, 0x78, + 0x5b, 0x94, 0x40, 0x39, 0x2e, 0x10, 0x3, 0xff, + 0xa6, 0x98, 0x80, 0x1c, 0x2d, 0xea, 0x20, 0x1f, + 0xfd, 0x32, 0xd7, 0x0, 0xf1, 0x7a, 0x80, 0x7f, + 0xf5, 0x58, 0x4c, 0x3, 0xca, 0x42, 0x1, 0xff, + 0x1c, 0xf7, 0xff, 0xff, 0xf, 0x1c, 0x40, 0x3f, + 0xfc, 0x4e, 0x26, 0x1, 0xe2, 0x20, 0x80, 0x7f, + 0xc5, 0x57, 0x55, 0xf4, 0xb1, 0x0, 0x7f, 0x1e, + 0xb0, 0x7, 0x97, 0xc8, 0x3, 0xfe, 0x13, 0x55, + 0xfc, 0xfe, 0xc0, 0x1f, 0xe4, 0xd3, 0x0, 0xe1, + 0x79, 0x51, 0x0, 0xff, 0xea, 0xb, 0xd2, 0x0, + 0x70, 0xac, 0x49, 0x80, 0x7f, 0xf5, 0x5, 0xa1, + 0xc8, 0x3, 0x89, 0xf3, 0x65, 0x88, 0x3, 0xff, + 0x84, 0x5c, 0xc0, 0x1f, 0xfc, 0x13, 0x8f, 0x94, + 0x10, 0xe, 0x26, 0x9d, 0xfe, 0xdc, 0xba, 0x98, + 0x99, 0x55, 0xef, 0x63, 0x90, 0x7, 0xff, 0xc, + 0x9a, 0xf2, 0x98, 0x84, 0x3, 0xc2, 0x46, 0x8a, + 0xce, 0xcc, 0x54, 0x21, 0x0, 0xe2, 0x6a, 0xe7, + 0x10, 0xf, 0xf1, 0x2c, 0xef, 0xed, 0x43, 0x29, + 0x90, 0x88, 0x3, 0x84, 0x44, 0x6a, 0xd1, 0x59, + 0xdb, 0x2a, 0x40, 0x10, + + /* U+0048 "H" */ + 0x5a, 0xff, 0xf6, 0x30, 0x80, 0x7f, 0xf2, 0x16, + 0xbf, 0xfd, 0x8e, 0x20, 0x1f, 0xff, 0xf0, 0xf, + 0xff, 0xf8, 0x7, 0xff, 0xfc, 0x3, 0xff, 0xae, + 0x73, 0xdf, 0xff, 0xfc, 0x8a, 0x50, 0xf, 0xff, + 0x78, 0xa3, 0x3b, 0xff, 0xf2, 0x14, 0x80, 0x3f, + 0xf8, 0xa5, 0xb1, 0x1f, 0xfc, 0x9f, 0x70, 0xf, + 0xff, 0xf8, 0x7, 0xff, 0xfc, 0x3, 0xff, 0xfe, + 0x1, 0xff, 0xff, 0x0, 0x80, + + /* U+0049 "I" */ + 0x5a, 0xff, 0xf6, 0x30, 0x80, 0x7f, 0xff, 0xc0, + 0x3f, 0xff, 0xe0, 0x1f, 0xfe, 0xb0, + + /* U+004A "J" */ + 0x0, 0xff, 0xe5, 0x93, 0xe7, 0xff, 0xa9, 0x0, + 0x3f, 0xff, 0xe0, 0x1f, 0xff, 0xf0, 0xf, 0xff, + 0xf8, 0x7, 0xff, 0xfc, 0x3, 0xff, 0xfe, 0x1, + 0xff, 0xc0, 0x10, 0xf, 0xfe, 0xa8, 0xf8, 0x7, + 0x84, 0xc0, 0x3f, 0x88, 0xa0, 0xf, 0xfe, 0x13, + 0x11, 0x0, 0x38, 0xb9, 0x80, 0x31, 0x2c, 0xe6, + 0xeb, 0x29, 0x48, 0x3, 0xf8, 0x9f, 0x94, 0x3, + 0xcc, 0x64, 0x1, 0x9b, 0x10, 0xc0, 0x2, 0xb5, + 0xbd, 0x97, 0x33, 0xaf, 0x72, 0x10, 0x3, 0x8a, + 0x20, 0x80, 0x1c, 0x93, 0xd2, 0x82, 0x1, 0x84, + 0xd1, 0x9b, 0x21, 0x8, 0x6, 0x13, 0x8e, 0x72, + 0x0, 0xfc, 0x6d, 0x7f, 0x92, 0xea, 0x64, 0x22, + 0x0, 0x9, 0x1a, 0x2b, 0x45, 0xfe, 0x39, 0x80, + 0x78, + + /* U+004B "K" */ + 0x5a, 0xff, 0xf6, 0x30, 0x80, 0x7f, 0xf1, 0xd, + 0xf3, 0xff, 0xdb, 0x28, 0x20, 0x1f, 0xfd, 0x11, + 0x49, 0xe8, 0x30, 0xc, 0x71, 0xf2, 0x82, 0x1, + 0xff, 0xcf, 0x26, 0xaa, 0x31, 0x0, 0x42, 0x95, + 0xae, 0x40, 0x1f, 0xfd, 0x3, 0x8f, 0x94, 0x10, + 0x8, 0x9a, 0xad, 0x44, 0x3, 0xff, 0x9e, 0x2b, + 0x5a, 0xe4, 0x1, 0x8e, 0x3e, 0x50, 0x3, 0xff, + 0xa0, 0x4d, 0x54, 0x51, 0x0, 0x85, 0x6b, 0x5c, + 0x80, 0x3f, 0xfa, 0x7, 0x1f, 0x28, 0x1, 0x89, + 0xf6, 0x94, 0x40, 0x3f, 0xf9, 0xc2, 0x4b, 0x5a, + 0xe4, 0x1, 0xf8, 0x40, 0x3f, 0xfa, 0x5, 0x5d, + 0x4a, 0x20, 0x1f, 0x89, 0xe5, 0x88, 0x3, 0xff, + 0x9c, 0x24, 0x40, 0xc, 0x4a, 0xc8, 0x20, 0x19, + 0x22, 0xa, 0x20, 0x1f, 0xfd, 0x13, 0x8f, 0xa9, + 0x98, 0xc0, 0x30, 0xac, 0x40, 0xc0, 0x3f, 0xf9, + 0xa2, 0xb7, 0xae, 0x40, 0x2, 0x7f, 0x72, 0x0, + 0xc4, 0xdc, 0xe4, 0x1, 0xff, 0xc9, 0x16, 0xda, + 0x41, 0x0, 0xf1, 0xc4, 0xa8, 0x80, 0x62, 0x89, + 0x61, 0x0, 0xff, 0xe3, 0x97, 0x90, 0x7, 0xfc, + 0x97, 0x8, 0x1, 0xc9, 0x16, 0x82, 0x1, 0xff, + 0xd4, 0x16, 0x97, 0x20, 0xc, 0x2b, 0x32, 0x30, + 0xf, 0xfe, 0xa9, 0x44, 0xb0, 0x80, 0x62, 0x7f, + 0x72, 0x0, 0xff, 0xea, 0xa4, 0x5a, 0x0, 0x71, + 0xc4, 0xa8, 0x80, 0x7f, 0xf5, 0x5, 0x66, 0xc, + 0x3, 0x92, 0xe1, 0x0, 0x20, + + /* U+004C "L" */ + 0x5a, 0xff, 0xf6, 0x30, 0x80, 0x7f, 0xff, 0xc0, + 0x3f, 0xff, 0xe0, 0x1f, 0xff, 0xf0, 0xf, 0xff, + 0xf8, 0x7, 0xff, 0xfc, 0x3, 0xff, 0xfe, 0x1, + 0xff, 0xde, 0x2c, 0x66, 0xff, 0xe4, 0xa0, 0x80, + 0x7e, 0x15, 0x89, 0x9f, 0xfe, 0x3c, 0x69, 0x0, + 0x7f, 0xf5, 0x40, + + /* U+004D "M" */ + 0x5a, 0xff, 0xfd, 0x6a, 0x1, 0xff, 0xcb, 0x17, + 0xcf, 0xff, 0xba, 0x50, 0x3, 0xfc, 0x9c, 0xc2, + 0x1, 0xff, 0xc8, 0x26, 0xb3, 0x0, 0xff, 0xe4, + 0xa6, 0xb8, 0x80, 0x7f, 0xf1, 0x89, 0x6c, 0xc0, + 0x3f, 0xf8, 0xa2, 0x30, 0x4, 0x94, 0xe2, 0x1, + 0xff, 0xc4, 0x25, 0xa3, 0x0, 0x84, 0x40, 0x1f, + 0xfc, 0x24, 0x41, 0x80, 0x47, 0x4c, 0x20, 0x1f, + 0xfc, 0x22, 0xaa, 0x10, 0x0, 0x55, 0x14, 0x3, + 0xff, 0x82, 0x21, 0x94, 0x60, 0x11, 0xdb, 0x10, + 0x7, 0xff, 0x0, 0xe9, 0x48, 0x0, 0x2f, 0x9a, + 0xe0, 0x1f, 0xfc, 0x21, 0x4, 0xa3, 0x0, 0x8e, + 0xa8, 0x40, 0x1f, 0xe3, 0xb6, 0x20, 0x0, 0xbe, + 0xaf, 0x88, 0x7, 0xff, 0x9, 0xc0, 0xde, 0x8c, + 0x2, 0x25, 0xa3, 0x0, 0xfc, 0x76, 0xc2, 0x0, + 0x17, 0xd4, 0x1, 0x30, 0xf, 0xfe, 0x18, 0x98, + 0xbd, 0x20, 0x4, 0x4b, 0x66, 0x1, 0xe4, 0xa6, + 0x10, 0x0, 0xbd, 0x20, 0x38, 0x8, 0x7, 0xff, + 0x8, 0x40, 0x21, 0x7e, 0x40, 0x8, 0x9a, 0xcc, + 0x3, 0x1e, 0xb8, 0x80, 0x5, 0xa8, 0xc0, 0x23, + 0x0, 0xff, 0xe4, 0xa, 0xf2, 0x80, 0x42, 0xd6, + 0x60, 0x3, 0xb7, 0x10, 0x1, 0x35, 0x18, 0x7, + 0xff, 0x3d, 0x7d, 0x40, 0x21, 0x5b, 0x33, 0x5a, + 0x88, 0x0, 0x96, 0x88, 0x3, 0xff, 0xa2, 0xbc, + 0xc2, 0x0, 0x25, 0x88, 0x29, 0x0, 0xa, 0xa8, + 0x40, 0x1f, 0xfd, 0x34, 0xd7, 0x10, 0x1, 0x22, + 0x8, 0x0, 0x74, 0xc4, 0x1, 0xff, 0xd5, 0x4a, + 0x61, 0x0, 0xf1, 0xd3, 0x8, 0x7, 0xff, 0x5c, + 0xed, 0x88, 0x3, 0x25, 0x38, 0x80, 0x7f, 0xf6, + 0x4e, 0x7e, 0xee, 0xc9, 0x61, 0x0, 0xff, 0xed, + 0x89, 0x22, 0x46, 0x40, 0x1f, 0xfc, 0x90, + + /* U+004E "N" */ + 0x5a, 0xff, 0xfb, 0x1c, 0x80, 0x3f, 0xf8, 0xeb, + 0x5f, 0xfe, 0x94, 0x0, 0xff, 0x1c, 0x4a, 0x88, + 0x7, 0xff, 0x6d, 0x22, 0x6, 0x1, 0xff, 0xd6, + 0x11, 0x0, 0x44, 0xde, 0xe4, 0x1, 0xff, 0xd4, + 0x46, 0x72, 0x0, 0x8e, 0x61, 0x44, 0x3, 0xff, + 0xa4, 0x3d, 0x30, 0xa0, 0x10, 0xad, 0xc1, 0x80, + 0x7f, 0xf4, 0x5c, 0x41, 0x61, 0xc8, 0x2, 0x16, + 0xf7, 0x20, 0xf, 0xfe, 0x78, 0xf9, 0x81, 0x4c, + 0x28, 0x6, 0x38, 0x82, 0x88, 0x7, 0xff, 0x34, + 0xc4, 0x40, 0x1, 0x58, 0x81, 0x80, 0x65, 0x88, + 0x18, 0x7, 0xff, 0x30, 0x4d, 0xc0, 0x31, 0x3c, + 0x30, 0x80, 0x44, 0xde, 0xe4, 0x1, 0x84, 0xc0, + 0x3f, 0xf9, 0xa9, 0x16, 0x80, 0x18, 0xe6, 0x14, + 0x40, 0xe, 0x22, 0x0, 0xff, 0xe6, 0x8a, 0xcc, + 0x18, 0x4, 0x2b, 0xc, 0x40, 0x3e, 0x60, 0x1f, + 0xfc, 0xf2, 0x78, 0x61, 0x0, 0x8a, 0x61, 0x0, + 0x44, 0x1, 0xff, 0xd1, 0x48, 0xb4, 0x0, 0x85, + 0x62, 0xb9, 0xc0, 0x3f, 0xfa, 0x42, 0xb3, 0x4, + 0x1, 0x1b, 0x31, 0x40, 0x3f, 0xfa, 0x84, 0xf2, + 0xc2, 0x0, 0x11, 0x80, 0x3f, 0xfa, 0xc9, 0x10, + 0x40, 0xf, 0xfe, 0xd8, 0xb4, 0xb9, 0x0, 0x7f, + 0x80, + + /* U+004F "O" */ + 0x0, 0xff, 0xe0, 0x92, 0x3c, 0x56, 0x6f, 0x73, + 0xff, 0x77, 0x37, 0x2e, 0x5d, 0x4c, 0x40, 0x3f, + 0xf9, 0x62, 0x91, 0x7d, 0xb7, 0xe, 0xa6, 0x42, + 0x20, 0xc, 0x22, 0x23, 0x46, 0x8a, 0xcf, 0xc9, + 0x51, 0x0, 0xff, 0xe2, 0x9c, 0x65, 0xba, 0x8, + 0x7, 0x9, 0x1a, 0x2b, 0x34, 0x86, 0x42, 0x1, + 0xc2, 0x6d, 0x5f, 0x4a, 0x20, 0x1f, 0xfc, 0x4, + 0x9d, 0x72, 0x0, 0xe1, 0x49, 0xce, 0xdc, 0xba, + 0x99, 0xaf, 0x37, 0xb6, 0x98, 0x80, 0x38, 0x56, + 0xa8, 0xa2, 0x1, 0xf8, 0x5a, 0x18, 0x40, 0x39, + 0x27, 0xed, 0x8c, 0x3, 0xff, 0x80, 0x4b, 0x39, + 0x4a, 0x20, 0x1c, 0x91, 0x26, 0x1, 0xe2, 0x6a, + 0x30, 0xe, 0x16, 0x86, 0x10, 0xf, 0xfe, 0x30, + 0xac, 0x49, 0x0, 0x71, 0x35, 0x20, 0x7, 0x26, + 0x18, 0x7, 0x13, 0x51, 0x80, 0x7f, 0xf2, 0x89, + 0xac, 0xc0, 0x38, 0x50, 0xc8, 0x2, 0x3e, 0x60, + 0xf, 0x37, 0x10, 0x7, 0xff, 0x30, 0x49, 0x80, + 0x3c, 0x5a, 0xc0, 0x13, 0x89, 0x80, 0x78, 0x88, + 0x20, 0x1f, 0xfc, 0xd6, 0xd2, 0x0, 0xf0, 0x90, + 0x7, 0xff, 0x77, 0xc0, 0x3f, 0xf8, 0xc, 0x26, + 0x1, 0xe2, 0x20, 0x80, 0x7f, 0xf3, 0x58, 0x88, + 0x1, 0xe1, 0x20, 0x8, 0xb5, 0xc0, 0x3c, 0xbc, + 0x40, 0x1f, 0xfc, 0xc2, 0x36, 0x0, 0xf1, 0xeb, + 0x0, 0x64, 0xc3, 0x0, 0xe1, 0x69, 0x40, 0xf, + 0xfe, 0x51, 0xd5, 0xc, 0x3, 0x85, 0x10, 0x40, + 0x18, 0x5e, 0x90, 0x3, 0x85, 0x61, 0xc8, 0x3, + 0xff, 0x8c, 0x2b, 0xe, 0x40, 0x1c, 0x4d, 0x46, + 0x1, 0xe1, 0x68, 0x72, 0x0, 0xe3, 0x8c, 0xb7, + 0x30, 0xf, 0xfe, 0x1, 0x2d, 0x65, 0x20, 0x7, + 0xa, 0xc4, 0x90, 0x7, 0xf1, 0xc7, 0x39, 0x80, + 0x70, 0xa4, 0x67, 0xee, 0x5d, 0x4c, 0xd7, 0x9b, + 0xdb, 0x4a, 0x40, 0x1c, 0x4d, 0x56, 0xa2, 0x1, + 0xff, 0xc0, 0x38, 0xcc, 0x42, 0x8, 0x7, 0x88, + 0xd1, 0x59, 0xa4, 0x32, 0x10, 0xe, 0x13, 0x7b, + 0xc9, 0x41, 0x0, 0xff, 0xe2, 0x9b, 0xdf, 0x6d, + 0xc3, 0xa9, 0x90, 0x88, 0x3, 0x8, 0x88, 0xd5, + 0xa2, 0xb7, 0xf2, 0x10, 0x40, 0x3f, 0xe0, + + /* U+0050 "P" */ + 0x5a, 0xff, 0xff, 0xe2, 0xf7, 0x37, 0x59, 0x75, + 0xc, 0x84, 0x1, 0xff, 0xd0, 0x11, 0x11, 0xd, + 0x15, 0xe6, 0xf7, 0xad, 0xc8, 0x3, 0xff, 0x82, + 0x4d, 0x37, 0x7a, 0xaa, 0x99, 0xa1, 0x94, 0x84, + 0x3, 0xa, 0x46, 0x52, 0x88, 0x7, 0xf8, 0x7d, + 0xd1, 0x32, 0xac, 0xcd, 0x3c, 0xd6, 0xfd, 0xb1, + 0x0, 0x61, 0x59, 0x62, 0x0, 0xff, 0xe7, 0xa, + 0x5d, 0x18, 0x7, 0x1e, 0xb8, 0x7, 0xff, 0x40, + 0x88, 0xe0, 0x1e, 0x10, 0xf, 0xfe, 0x89, 0xeb, + 0x0, 0x71, 0x1b, 0x0, 0x7f, 0xf3, 0x89, 0xa1, + 0x88, 0x3, 0x9f, 0x4c, 0x3, 0xf8, 0x7d, 0xd1, + 0x32, 0xac, 0xcc, 0x78, 0x9b, 0xed, 0x94, 0x10, + 0xc, 0x93, 0xa, 0x1, 0xfe, 0x26, 0x9b, 0xbd, + 0x55, 0x4c, 0xa1, 0xd9, 0x4, 0x3, 0x9, 0xbd, + 0xd3, 0x10, 0x7, 0xff, 0x28, 0x48, 0x86, 0x8a, + 0xd1, 0x7b, 0xd9, 0x8, 0x20, 0x1f, 0xfc, 0x13, + 0x9e, 0xff, 0xfd, 0xdb, 0xac, 0xba, 0x97, 0x42, + 0x0, 0xff, 0xff, 0x80, 0x7f, 0xff, 0xc0, 0x3f, + 0xff, 0xe0, 0x1f, 0xfc, 0x70, + + /* U+0051 "Q" */ + 0x0, 0xff, 0xe0, 0x92, 0x34, 0x55, 0xef, 0x73, + 0xff, 0x77, 0x37, 0x2a, 0x5d, 0x48, 0x3, 0xff, + 0x9a, 0x6d, 0x5b, 0xab, 0x97, 0x54, 0x21, 0x10, + 0x6, 0x11, 0x11, 0xab, 0x45, 0x6f, 0x5c, 0x20, + 0x80, 0x7f, 0xf1, 0x49, 0xf3, 0x12, 0xa4, 0x1, + 0xe1, 0x34, 0x56, 0x62, 0xa1, 0x90, 0x80, 0x70, + 0xa3, 0xde, 0x42, 0x0, 0x7f, 0xf0, 0x49, 0xfa, + 0xc, 0x3, 0x84, 0xe3, 0x3f, 0xb2, 0xea, 0x65, + 0x57, 0x9b, 0xdb, 0x2a, 0x20, 0x1c, 0x4f, 0x52, + 0x80, 0x1f, 0xe5, 0x88, 0x18, 0x7, 0x1b, 0xee, + 0x39, 0x80, 0x7f, 0xf0, 0x9, 0xab, 0xe5, 0x0, + 0x38, 0x5a, 0x1c, 0x40, 0x3c, 0x2d, 0xca, 0x1, + 0xe5, 0x99, 0x18, 0x7, 0xff, 0x18, 0x5a, 0x18, + 0x40, 0x38, 0xe9, 0x88, 0x3, 0x97, 0x10, 0x3, + 0x85, 0xb9, 0x44, 0x3, 0xff, 0x92, 0x76, 0xc4, + 0x1, 0xc5, 0x88, 0x20, 0x11, 0x1b, 0x80, 0x78, + 0xb9, 0x40, 0x3f, 0xf9, 0x85, 0xae, 0x1, 0xe5, + 0xf5, 0x0, 0x87, 0x8c, 0x3, 0xcc, 0x42, 0x1, + 0xff, 0xcd, 0x62, 0x10, 0xe, 0x13, 0x10, 0x9, + 0xc0, 0x3e, 0x13, 0x60, 0xf, 0xfe, 0x70, 0xf9, + 0x0, 0x78, 0x4c, 0x2, 0x6e, 0x30, 0xe, 0x13, + 0x60, 0xf, 0xfe, 0x70, 0xf1, 0x0, 0x78, 0x88, + 0x1, 0x11, 0x18, 0x3, 0xcc, 0x44, 0x0, 0xff, + 0xe6, 0xb1, 0x88, 0x7, 0x17, 0x30, 0x6, 0x62, + 0x10, 0xe, 0x2d, 0x60, 0xf, 0xfe, 0x61, 0xeb, + 0x80, 0x79, 0x88, 0x80, 0x18, 0xf5, 0xc4, 0x3, + 0xa, 0xfa, 0x88, 0x7, 0xff, 0x25, 0x29, 0x88, + 0x3, 0x93, 0x50, 0x3, 0xc9, 0x72, 0x40, 0x1c, + 0x93, 0x23, 0x0, 0xff, 0xe3, 0xb, 0x7b, 0x8, + 0x6, 0x16, 0xf6, 0x10, 0xf, 0x89, 0xa1, 0x0, + 0x38, 0xdf, 0x6d, 0xcc, 0x3, 0xff, 0x80, 0x4b, + 0x5f, 0x28, 0x1, 0xc5, 0x36, 0x80, 0x1f, 0xe1, + 0x5a, 0xb7, 0x20, 0xc, 0x29, 0x19, 0xd9, 0x75, + 0xe, 0xe8, 0x9b, 0xce, 0xda, 0x51, 0x0, 0xc2, + 0xb5, 0x8e, 0x40, 0x1f, 0xfc, 0x11, 0x48, 0xcc, + 0x39, 0x88, 0x6, 0x13, 0x45, 0x78, 0x83, 0xb2, + 0x18, 0x80, 0x71, 0x35, 0x65, 0x28, 0x80, 0x7f, + 0xf1, 0x84, 0xe3, 0x3f, 0x6a, 0x19, 0x4c, 0x40, + 0x3e, 0x13, 0x69, 0xbd, 0xfd, 0x95, 0x20, 0xf, + 0xfe, 0x68, 0x92, 0xbc, 0xd6, 0x6b, 0x90, 0x7, + 0x8, 0x80, 0x94, 0x80, 0x3f, 0xfb, 0x27, 0x12, + 0xc2, 0x1, 0x89, 0xaf, 0xee, 0x19, 0xc, 0x44, + 0x1, 0x9, 0x14, 0x20, 0x1f, 0xfc, 0xd4, 0x9c, + 0xa5, 0x20, 0xc, 0x28, 0xf3, 0x79, 0xdc, 0xff, + 0xbb, 0x76, 0xb4, 0x0, 0xff, 0xe7, 0x12, 0xd6, + 0x6d, 0x3a, 0x90, 0x7, 0xff, 0x9, 0xf0, 0x80, + 0x3f, 0xfa, 0x2, 0x4b, 0x15, 0xbf, 0xee, 0xdc, + 0xbb, 0x55, 0x2e, 0xec, 0xdd, 0x41, 0x0, + + /* U+0052 "R" */ + 0x5a, 0xff, 0xff, 0xe3, 0x77, 0x37, 0x59, 0x75, + 0xc, 0x62, 0x1, 0xff, 0xd3, 0x11, 0x11, 0xd, + 0x15, 0xe7, 0x3b, 0x94, 0xa2, 0x1, 0xff, 0xc3, + 0x26, 0x9b, 0xbe, 0xaa, 0xd3, 0x28, 0x64, 0x21, + 0x0, 0xc2, 0xb5, 0x90, 0x60, 0x1f, 0xfc, 0x11, + 0xf7, 0x44, 0xe5, 0x5c, 0xcc, 0x79, 0xbd, 0xc8, + 0x40, 0xe, 0x25, 0xb3, 0x0, 0xff, 0xe9, 0x13, + 0xf2, 0x0, 0x71, 0x1a, 0x88, 0x7, 0xff, 0x6d, + 0xc0, 0x3f, 0xfa, 0x62, 0xbc, 0xa0, 0x1e, 0x52, + 0x10, 0xf, 0xfe, 0x50, 0x88, 0x8d, 0x5e, 0xb2, + 0x90, 0x40, 0x31, 0x3d, 0x20, 0x7, 0xff, 0x0, + 0xe7, 0xbf, 0xff, 0x77, 0x37, 0x2a, 0x14, 0x80, + 0x30, 0x9c, 0x74, 0x18, 0x7, 0xff, 0x4c, 0x4d, + 0x62, 0xf3, 0xe, 0x60, 0x1f, 0xfc, 0x32, 0x69, + 0xbb, 0xea, 0x95, 0x10, 0xf, 0x15, 0x43, 0xa1, + 0x0, 0x7f, 0xf1, 0x87, 0xdd, 0x13, 0x95, 0xae, + 0x10, 0x3, 0x8e, 0x20, 0x80, 0x1f, 0xfd, 0x21, + 0x68, 0x62, 0x0, 0xc2, 0xb2, 0xe4, 0x1, 0xff, + 0xd2, 0x38, 0x82, 0x0, 0x71, 0x44, 0xb0, 0x80, + 0x7f, 0xf4, 0x45, 0x65, 0xc8, 0x3, 0x92, 0x20, + 0x60, 0x1f, 0xfd, 0x22, 0x98, 0x50, 0xe, 0x16, + 0xf7, 0x20, 0xf, 0xfe, 0x88, 0xac, 0x40, 0xc0, + 0x38, 0xe6, 0x14, 0x3, 0xff, 0xa4, 0x4f, 0xc, + 0x20, 0x18, 0x56, 0x20, 0x60, 0x0, + + /* U+0053 "S" */ + 0x0, 0xff, 0xe0, 0x9, 0x2c, 0x55, 0xe6, 0x37, + 0xbf, 0xee, 0xdd, 0x5d, 0x43, 0x18, 0x80, 0x7f, + 0xf1, 0x5, 0x23, 0x3f, 0x69, 0xd5, 0xc, 0xc4, + 0x20, 0x10, 0x91, 0x11, 0x5e, 0x73, 0xf2, 0x10, + 0x40, 0x3f, 0xc4, 0xd5, 0x47, 0x31, 0x0, 0xc2, + 0x68, 0xac, 0xec, 0xc5, 0x43, 0x10, 0xc, 0x26, + 0xf7, 0xac, 0x20, 0x1f, 0x15, 0x5a, 0x8, 0x6, + 0x27, 0xce, 0xcb, 0xa9, 0x89, 0x95, 0x5e, 0x77, + 0xed, 0x31, 0x92, 0xd6, 0xb0, 0x80, 0x7c, 0x86, + 0x40, 0x1c, 0x75, 0x26, 0x1, 0xff, 0xc1, 0x25, + 0x9c, 0xda, 0x51, 0x0, 0xfe, 0x21, 0x0, 0xf1, + 0x72, 0x80, 0x7f, 0xf4, 0xd7, 0x10, 0x3, 0x85, + 0xaa, 0xe1, 0x4c, 0x40, 0x3f, 0xf9, 0xc2, 0xd3, + 0x24, 0x10, 0xc, 0x28, 0xf5, 0x9d, 0xb7, 0x2c, + 0x84, 0x1, 0xff, 0xca, 0x26, 0xbc, 0xa6, 0x31, + 0x0, 0xf1, 0x23, 0x4d, 0xef, 0xed, 0xcb, 0x18, + 0x80, 0x7f, 0xf1, 0x89, 0x67, 0x3b, 0x6e, 0x5d, + 0x8, 0x40, 0x3c, 0x48, 0xd3, 0x9d, 0x92, 0x82, + 0x1, 0xff, 0xc7, 0x24, 0x68, 0xbd, 0xee, 0x64, + 0xba, 0x10, 0x7, 0x8d, 0xaf, 0x20, 0x80, 0x3f, + 0xf9, 0x82, 0x6d, 0x17, 0xbd, 0x4a, 0x40, 0x1c, + 0x4f, 0xa, 0x1, 0xff, 0xd1, 0x15, 0xa8, 0x40, + 0xf, 0x39, 0x10, 0x3, 0xc2, 0x6a, 0x62, 0x1, + 0xff, 0xc9, 0x10, 0xf, 0x8, 0x7, 0x8e, 0x37, + 0x2b, 0x3f, 0x21, 0x48, 0x3, 0xff, 0x82, 0x27, + 0x12, 0xa0, 0x1c, 0x2a, 0x84, 0x1, 0x25, 0x31, + 0x80, 0x42, 0x6f, 0x5b, 0xfb, 0x95, 0x32, 0x88, + 0x4c, 0xaa, 0xf7, 0xb1, 0xcc, 0x3, 0xa, 0x44, + 0xc, 0x3, 0x24, 0xfd, 0xc2, 0x10, 0x7, 0x88, + 0xd5, 0x98, 0xee, 0x66, 0x2a, 0x10, 0x7, 0x9, + 0xbd, 0x51, 0x84, 0x3, 0xe1, 0x47, 0xbd, 0xec, + 0xa8, 0x64, 0x32, 0x11, 0x0, 0x42, 0x22, 0x34, + 0x56, 0x8a, 0xde, 0xc8, 0x41, 0x0, 0xc0, + + /* U+0054 "T" */ + 0x3, 0x9e, 0xff, 0xff, 0xec, 0x74, 0x98, 0x7, + 0xff, 0x90, 0xaa, 0xe6, 0x7f, 0xf8, 0x10, 0xa4, + 0x1, 0xe2, 0x59, 0x9f, 0xfe, 0xd, 0xd1, 0x0, + 0x42, 0x6a, 0xcd, 0xff, 0xc1, 0xc6, 0x0, 0xf3, + 0x63, 0x37, 0xff, 0x5, 0x4c, 0x40, 0x3f, 0xff, + 0xe0, 0x1f, 0xff, 0xf0, 0xf, 0xff, 0xf8, 0x7, + 0xff, 0xfc, 0x3, 0xff, 0xfe, 0x1, 0xff, 0xff, + 0x0, 0xff, 0xff, 0x80, 0x7f, 0xff, 0xc0, 0x3f, + 0xfa, 0x80, + + /* U+0055 "U" */ + 0x0, 0xb, 0x67, 0xff, 0xa9, 0x40, 0x3f, 0xf9, + 0x2b, 0x5f, 0xfe, 0xa5, 0x0, 0xff, 0xff, 0x80, + 0x7f, 0xff, 0xc0, 0x3f, 0xff, 0xe0, 0x1f, 0xff, + 0xf0, 0xf, 0xff, 0xf8, 0x7, 0xff, 0x5d, 0xc0, + 0x3c, 0x26, 0x1, 0xff, 0xca, 0x10, 0xf, 0xf8, + 0x4c, 0x40, 0x3c, 0xc2, 0x40, 0x1f, 0xfc, 0x72, + 0x23, 0x80, 0x78, 0xc4, 0x3, 0x31, 0x8, 0x7, + 0x17, 0x30, 0x7, 0xff, 0x1d, 0xb8, 0x80, 0x38, + 0xb9, 0x80, 0x31, 0xea, 0x0, 0x79, 0xb9, 0x40, + 0x3f, 0xf8, 0x82, 0xbc, 0xc2, 0x1, 0x85, 0xc, + 0x80, 0x39, 0x7d, 0x40, 0x3c, 0xb1, 0x4a, 0x40, + 0x1f, 0xf1, 0x2d, 0xc2, 0x80, 0x70, 0xbd, 0x20, + 0x7, 0xcb, 0x10, 0x30, 0xe, 0x25, 0xad, 0xd6, + 0x54, 0xca, 0x26, 0xa9, 0x9d, 0xb4, 0xa4, 0x1, + 0x85, 0x22, 0x6, 0x1, 0xfc, 0x4f, 0xb6, 0xc4, + 0x1, 0xe2, 0x35, 0x66, 0x3b, 0x2a, 0x8c, 0x40, + 0x3c, 0x6f, 0x54, 0x61, 0x0, 0xff, 0xe0, 0xa, + 0x4e, 0xea, 0xe5, 0xd5, 0x10, 0x64, 0x20, 0x10, + 0x91, 0xa2, 0xb3, 0xce, 0x76, 0x42, 0x8, 0x7, + 0x80, + + /* U+0056 "V" */ + 0x0, 0x1c, 0xf7, 0xff, 0xad, 0x40, 0x3f, 0xf9, + 0x6b, 0x5f, 0xfe, 0xc7, 0x20, 0x8, 0xf5, 0xc4, + 0x3, 0x93, 0xd4, 0x3, 0xff, 0x92, 0x98, 0x80, + 0x1c, 0x48, 0xa4, 0x1, 0x93, 0x5c, 0x40, 0x39, + 0x31, 0x0, 0x3f, 0xf8, 0xe7, 0x8e, 0x20, 0x18, + 0x96, 0xc8, 0x3, 0xc9, 0xa8, 0x1, 0xc2, 0xf8, + 0x60, 0x1f, 0xfc, 0x52, 0xb5, 0x10, 0xc, 0x2b, + 0x66, 0x1, 0xf9, 0x3d, 0x40, 0x38, 0x55, 0x8, + 0x3, 0xff, 0x86, 0x2a, 0x84, 0x1, 0x85, 0xec, + 0xc0, 0x3f, 0xcb, 0xea, 0x1, 0xc5, 0x6a, 0x20, + 0x1f, 0xfc, 0x11, 0x7c, 0x30, 0xc, 0x2f, 0xa6, + 0x1, 0xff, 0xc0, 0x4f, 0x40, 0xe, 0x3c, 0x71, + 0x0, 0xff, 0xe0, 0x26, 0x20, 0x7, 0x26, 0xa0, + 0x7, 0xff, 0x4, 0x53, 0x50, 0x3, 0x93, 0x10, + 0x3, 0xfe, 0x4f, 0x50, 0xe, 0x5f, 0x40, 0xf, + 0xfe, 0x18, 0xbe, 0x98, 0x7, 0x2e, 0x20, 0x7, + 0xf1, 0xea, 0x0, 0x72, 0x7a, 0x80, 0x7f, 0xf1, + 0x45, 0xec, 0xc0, 0x39, 0xf0, 0xc0, 0x3e, 0x3b, + 0x41, 0x0, 0xc9, 0xa8, 0x1, 0xff, 0xc7, 0x15, + 0xb2, 0x0, 0xc2, 0xb6, 0x40, 0x1c, 0x48, 0x82, + 0x0, 0xc9, 0xae, 0x20, 0x1f, 0xfc, 0x82, 0x55, + 0x10, 0x6, 0x24, 0x40, 0x80, 0x42, 0x98, 0x60, + 0x18, 0xf1, 0xc4, 0x3, 0xff, 0x94, 0x56, 0xa4, + 0x1, 0x8f, 0x5c, 0x40, 0x9, 0x88, 0x1, 0x8e, + 0xd4, 0x40, 0x3f, 0xf9, 0x87, 0x6a, 0x20, 0x19, + 0x31, 0x1, 0x31, 0x40, 0x31, 0x5a, 0x90, 0x7, + 0xff, 0x38, 0xf1, 0xc4, 0x3, 0x26, 0x3e, 0x38, + 0x6, 0x25, 0x51, 0x0, 0x7f, 0xf4, 0x13, 0x5c, + 0x40, 0x21, 0x68, 0x71, 0x0, 0x89, 0x6c, 0x80, + 0x3f, 0xfa, 0x49, 0xa8, 0x1, 0xfe, 0x14, 0xb3, + 0x0, 0xff, 0xea, 0x27, 0xa8, 0x7, 0xe1, 0x7d, + 0x30, 0xf, 0xfe, 0x20, + + /* U+0057 "W" */ + 0x5, 0xbf, 0xff, 0x6b, 0x90, 0x7, 0xff, 0xc, + 0xe3, 0x7f, 0xfb, 0x5c, 0x80, 0x3f, 0xf8, 0x67, + 0x1b, 0xff, 0xd8, 0xe2, 0x1, 0x3e, 0x10, 0x7, + 0x16, 0xb8, 0x7, 0xff, 0x8, 0x51, 0x4, 0x1, + 0xc5, 0x88, 0x20, 0x1f, 0xfc, 0x25, 0x32, 0x0, + 0xc2, 0xa6, 0x20, 0x11, 0x1b, 0x80, 0x79, 0xf4, + 0x80, 0x3f, 0xf8, 0x29, 0x86, 0x1, 0xf2, 0x62, + 0x0, 0x7f, 0xf0, 0x4f, 0x94, 0x3, 0x97, 0xd4, + 0x3, 0x97, 0xc, 0x3, 0x88, 0xdc, 0x3, 0xff, + 0x80, 0x98, 0xa0, 0x1f, 0xc9, 0xa6, 0x1, 0xff, + 0xa, 0x98, 0x80, 0x62, 0x35, 0x10, 0xe, 0x15, + 0x50, 0x80, 0x73, 0x69, 0x80, 0x7f, 0x8f, 0x10, + 0x40, 0x4, 0xcc, 0x30, 0x8, 0x51, 0x4, 0x1, + 0xfe, 0x5f, 0x50, 0xe, 0x7d, 0x30, 0xf, 0x8f, + 0x14, 0x3, 0x88, 0xd4, 0x3, 0xf8, 0x55, 0x8, + 0x2, 0x7c, 0xd5, 0x10, 0x8, 0xf1, 0x0, 0x3f, + 0x84, 0xd4, 0x40, 0x31, 0xeb, 0x80, 0x7f, 0x3e, + 0x10, 0x7, 0x2f, 0x18, 0x7, 0xe4, 0xc3, 0x0, + 0x8f, 0x5d, 0x31, 0x40, 0x32, 0x7a, 0x0, 0x7e, + 0x5e, 0x30, 0xe, 0x53, 0x20, 0xf, 0xe2, 0x37, + 0x0, 0xe1, 0x35, 0x0, 0xf8, 0xf1, 0x0, 0x32, + 0x99, 0x3, 0x99, 0x0, 0x64, 0xc3, 0x0, 0xf1, + 0x1a, 0x80, 0x71, 0xfa, 0x80, 0x7f, 0xcb, 0x86, + 0x1, 0xcb, 0xe6, 0x1, 0xc4, 0x88, 0x10, 0x9, + 0x3d, 0x0, 0x5, 0x88, 0x1, 0x89, 0x10, 0x20, + 0x1c, 0xda, 0x60, 0x18, 0x51, 0x44, 0x3, 0xfe, + 0x15, 0x41, 0x0, 0xc2, 0xaa, 0x10, 0x8, 0x53, + 0x8, 0x2, 0x2c, 0x40, 0xc, 0x9e, 0x80, 0x18, + 0xf5, 0x0, 0x31, 0x1b, 0x80, 0x72, 0xe9, 0x80, + 0x7f, 0xf0, 0x4f, 0x50, 0x3, 0x8b, 0xc8, 0x2, + 0x5f, 0x50, 0x8, 0x50, 0xc8, 0x3, 0x93, 0x8, + 0x3, 0x26, 0x98, 0x4, 0xfa, 0x40, 0x18, 0x8d, + 0xc0, 0x3f, 0xf8, 0x6f, 0xa4, 0x1, 0x84, 0x94, + 0x40, 0x8d, 0x4, 0x2, 0x5c, 0x40, 0xf, 0x12, + 0x20, 0x40, 0x21, 0x44, 0x8, 0x11, 0x18, 0x3, + 0x9f, 0x48, 0x3, 0xff, 0x86, 0x46, 0x80, 0x1c, + 0xbe, 0x40, 0xfa, 0x40, 0x11, 0xe2, 0x0, 0x7e, + 0x3c, 0x40, 0xc, 0x7a, 0xa0, 0xdc, 0x60, 0x18, + 0xf5, 0xc0, 0x3f, 0xf8, 0xab, 0xe6, 0x1, 0x84, + 0x95, 0x31, 0x0, 0x21, 0x44, 0x8, 0x7, 0xf2, + 0x61, 0x80, 0x67, 0xc4, 0x25, 0x0, 0xe5, 0x32, + 0x0, 0xff, 0xe2, 0x8a, 0xa0, 0x80, 0x65, 0xce, + 0x51, 0x0, 0x93, 0x4c, 0x3, 0xfc, 0x2a, 0x84, + 0x1, 0x11, 0xf6, 0x10, 0x6, 0x4f, 0x50, 0xf, + 0xfe, 0x39, 0xea, 0x0, 0x61, 0x55, 0x18, 0x4, + 0x78, 0x80, 0x1f, 0xfc, 0x3, 0xc7, 0x0, 0xc8, + 0xaa, 0x10, 0x8, 0x4d, 0x44, 0x3, 0xff, 0x90, + 0xfa, 0x40, 0x1f, 0xc4, 0x8a, 0x20, 0x1f, 0xfc, + 0x15, 0xc4, 0x0, 0xff, 0x2e, 0x98, 0x7, 0xff, + 0x24, 0x8d, 0x0, 0x3f, 0x9f, 0xc, 0x3, 0xff, + 0x84, 0x29, 0x84, 0x1, 0xf8, 0x8d, 0xc0, 0x3f, + 0xf8, 0x0, + + /* U+0058 "X" */ + 0x1, 0x5b, 0xff, 0xfa, 0xd4, 0x40, 0x3f, 0xf8, + 0x87, 0x3b, 0xff, 0xea, 0x51, 0x0, 0xc2, 0xb3, + 0x6, 0x1, 0xc9, 0x12, 0x60, 0x1f, 0xfc, 0x11, + 0x68, 0x62, 0x0, 0xc7, 0x10, 0x51, 0x0, 0xf1, + 0x3c, 0x30, 0x80, 0x62, 0x78, 0x61, 0x0, 0xff, + 0x1c, 0xda, 0x0, 0x61, 0x68, 0x72, 0x0, 0xff, + 0x24, 0x41, 0x0, 0x39, 0x2e, 0x4c, 0x3, 0xe1, + 0x68, 0x72, 0x0, 0xc9, 0x10, 0x40, 0xf, 0xfe, + 0x8, 0xb4, 0xb9, 0x0, 0x62, 0x78, 0x61, 0x0, + 0xc7, 0x36, 0x80, 0x18, 0x9e, 0x18, 0x40, 0x3f, + 0xf8, 0x85, 0x12, 0xc2, 0x1, 0x92, 0x20, 0x60, + 0x5, 0x97, 0x20, 0x8, 0x56, 0x20, 0x60, 0x1f, + 0xfc, 0x84, 0x88, 0x20, 0x6, 0x16, 0x88, 0xa5, + 0x40, 0x31, 0xcc, 0x28, 0x7, 0xff, 0x2c, 0x5a, + 0x1c, 0x80, 0x32, 0x3b, 0x8c, 0x2, 0x16, 0x87, + 0x20, 0xf, 0xfe, 0x71, 0xcd, 0xa0, 0x7, 0xf2, + 0x44, 0x10, 0x3, 0xff, 0xa2, 0xb8, 0xa0, 0x1f, + 0xcd, 0xc4, 0x1, 0xff, 0xd0, 0x38, 0x95, 0x10, + 0x8, 0x46, 0x0, 0x89, 0xfd, 0xc8, 0x3, 0xff, + 0x98, 0x2d, 0xe, 0x40, 0x11, 0x3e, 0xe4, 0x90, + 0x6, 0x39, 0x85, 0x10, 0xf, 0xfe, 0x4a, 0x44, + 0x10, 0x3, 0x25, 0xc9, 0x93, 0xc2, 0x88, 0x4, + 0x2b, 0x12, 0x60, 0x1f, 0xfc, 0x62, 0x79, 0x61, + 0x0, 0x85, 0xbd, 0x84, 0x2, 0x58, 0x92, 0x0, + 0xc4, 0xfe, 0xc4, 0x1, 0xff, 0xc2, 0x16, 0x98, + 0x20, 0xc, 0x71, 0x68, 0x1, 0xe2, 0x79, 0x51, + 0x0, 0xc7, 0x10, 0x51, 0x0, 0xff, 0x8e, 0x20, + 0x80, 0x18, 0x5a, 0x18, 0x80, 0x3f, 0x92, 0x24, + 0xc0, 0x30, 0xac, 0x49, 0x80, 0x7e, 0x27, 0xf6, + 0x10, 0xc, 0x71, 0x4, 0x0, 0xff, 0xe0, 0x13, + 0xc3, 0x8, 0x6, 0x27, 0xf6, 0x20, 0xc, 0x2b, + 0x12, 0x60, 0x18, 0x5a, 0x18, 0x40, 0x3f, 0xf8, + 0x69, 0x10, 0x40, 0xe, 0x38, 0x82, 0x88, 0x0, + + /* U+0059 "Y" */ + 0x0, 0x14, 0x6f, 0xff, 0xb1, 0xc8, 0x3, 0xff, + 0x8c, 0x2f, 0x9f, 0xfe, 0xc6, 0x10, 0x8, 0xa6, + 0x10, 0x3, 0x8e, 0xa8, 0x60, 0x1f, 0xfc, 0x43, + 0x9a, 0x30, 0xc, 0x2d, 0xc, 0x20, 0x18, 0x56, + 0x1c, 0x80, 0x31, 0x34, 0xa0, 0x7, 0xff, 0x9, + 0x65, 0x88, 0x3, 0x14, 0xda, 0x0, 0x7e, 0x39, + 0xb4, 0x0, 0xc2, 0xbe, 0xc2, 0x1, 0xfe, 0x16, + 0x95, 0x10, 0xc, 0xb0, 0xe4, 0x1, 0xfe, 0x16, + 0xf6, 0x10, 0xc, 0x96, 0xc4, 0x1, 0xf8, 0xa6, + 0xcc, 0x3, 0x13, 0xca, 0x80, 0x7f, 0xf0, 0x92, + 0xe4, 0xc0, 0x31, 0x4d, 0x98, 0x7, 0x92, 0xd8, + 0x80, 0x32, 0x5c, 0x98, 0x7, 0xff, 0x10, 0x9e, + 0x54, 0x40, 0x21, 0x69, 0x50, 0x8, 0x57, 0x98, + 0x40, 0x21, 0x68, 0x61, 0x0, 0xff, 0xe3, 0xac, + 0x31, 0x0, 0x65, 0xe6, 0x11, 0x34, 0xa8, 0x6, + 0x38, 0x81, 0x80, 0x7f, 0xf2, 0x8a, 0x61, 0x0, + 0x32, 0x5d, 0x54, 0x60, 0x10, 0xb4, 0x30, 0x80, + 0x7f, 0xf3, 0x5, 0x61, 0xc8, 0x2, 0x24, 0x41, + 0x0, 0x47, 0x36, 0x80, 0x1f, 0xfd, 0x3, 0x9b, + 0x30, 0xf, 0xcb, 0x2c, 0x40, 0x1f, 0xfd, 0x21, + 0x7b, 0x30, 0xf, 0x27, 0xa8, 0x80, 0x7f, 0xf5, + 0x44, 0x3, 0xe1, 0x0, 0xff, 0xff, 0x80, 0x7f, + 0xff, 0xc0, 0x3f, 0xff, 0xe0, 0x1f, 0xfc, 0x60, + + /* U+005A "Z" */ + 0x0, 0xe6, 0xbf, 0xff, 0xfe, 0xa5, 0xb0, 0x80, + 0x7f, 0xf8, 0xd3, 0xe6, 0x7f, 0xf9, 0x2e, 0x82, + 0x1, 0xe1, 0x6f, 0x61, 0x0, 0xe2, 0x46, 0x6f, + 0xfe, 0x3b, 0x81, 0xa0, 0x80, 0x61, 0x6a, 0x94, + 0x0, 0xff, 0xe7, 0xa, 0xdc, 0x20, 0x6, 0x15, + 0xb8, 0x40, 0xf, 0xfe, 0x70, 0xad, 0xd9, 0x44, + 0x2, 0x15, 0xbb, 0x28, 0x80, 0x7f, 0xf3, 0x92, + 0xec, 0xa2, 0x1, 0x92, 0xec, 0xa2, 0x1, 0xff, + 0xce, 0x49, 0xa5, 0x10, 0xc, 0x93, 0x4a, 0x20, + 0x1f, 0xfc, 0xe3, 0x99, 0x30, 0x80, 0x63, 0x99, + 0x30, 0x80, 0x7f, 0xf3, 0x8e, 0x39, 0x88, 0x3, + 0x1c, 0x73, 0x10, 0x7, 0xff, 0x38, 0xe3, 0x9c, + 0x80, 0x31, 0xc7, 0x39, 0x0, 0x7f, 0xf3, 0x8a, + 0x3d, 0xc8, 0x3, 0x14, 0x7b, 0x90, 0x7, 0xff, + 0x38, 0x9f, 0x9c, 0xc0, 0x31, 0x3f, 0x39, 0x80, + 0x7f, 0xf3, 0x89, 0xba, 0xc, 0x3, 0x13, 0x74, + 0x18, 0x7, 0xff, 0x38, 0x5a, 0x64, 0x60, 0x18, + 0x5a, 0x64, 0x60, 0x1f, 0xfc, 0xe1, 0x6a, 0x94, + 0x0, 0xe2, 0x4e, 0x26, 0x6f, 0xfe, 0x52, 0x98, + 0x80, 0xa, 0x6d, 0x0, 0x3e, 0x25, 0x89, 0x9f, + 0xfe, 0x5c, 0x59, 0x80, 0x4, 0x3, 0xff, 0xb6, + + /* U+005B "[" */ + 0x27, 0xdf, 0xff, 0xfe, 0x7, 0x41, 0x80, 0x7c, + 0x6a, 0xef, 0xe6, 0xd1, 0x0, 0xf0, 0xa4, 0xc4, + 0x7c, 0xa4, 0x1, 0xff, 0xff, 0x0, 0xff, 0xff, + 0x80, 0x7f, 0xff, 0xc0, 0x3f, 0xff, 0xe0, 0x1f, + 0xfe, 0x41, 0x58, 0x99, 0xf4, 0x29, 0x0, 0x7c, + 0x48, 0xcd, 0xf6, 0x88, + + /* U+005C "\\" */ + 0x16, 0xbf, 0xfb, 0x60, 0xc0, 0x3f, 0xf9, 0x22, + 0xfa, 0x60, 0x2, 0x44, 0x10, 0x7, 0xff, 0x24, + 0x51, 0x4, 0x0, 0x3b, 0x41, 0x0, 0xff, 0xe4, + 0x95, 0xa0, 0x80, 0xf, 0x10, 0x3, 0xff, 0x94, + 0x7a, 0xe0, 0x12, 0xfa, 0x0, 0x7f, 0xf2, 0x93, + 0x10, 0x2, 0x4d, 0x30, 0xf, 0xfe, 0x52, 0x6a, + 0x0, 0x5, 0x2c, 0x80, 0x3f, 0xf9, 0x22, 0x98, + 0x60, 0x2, 0x45, 0x10, 0xf, 0xfe, 0x49, 0x22, + 0x8, 0x0, 0x78, 0xe0, 0x1f, 0xfc, 0xa3, 0xc4, + 0x10, 0x2, 0x62, 0x80, 0x7f, 0xf2, 0x93, 0x10, + 0x2, 0x4c, 0x40, 0xf, 0xfe, 0x52, 0x62, 0x0, + 0x5, 0x30, 0xc0, 0x3f, 0xf9, 0x22, 0xf8, 0x60, + 0x2, 0x44, 0x10, 0x7, 0xff, 0x24, 0x55, 0x8, + 0x0, 0x76, 0x82, 0x1, 0xff, 0xc9, 0x2b, 0x41, + 0x0, 0x1e, 0x20, 0x7, 0xff, 0x28, 0xf5, 0xc0, + 0x25, 0xc4, 0x0, 0xff, 0xe5, 0x26, 0x20, 0x4, + 0xfa, 0x60, 0x1f, 0xfc, 0xa4, 0xd3, 0x0, 0xa, + 0x20, 0x80, 0x3f, 0xf9, 0x22, 0x96, 0x60, 0x2, + 0xb5, 0x10, 0xf, 0xfe, 0x49, 0x22, 0x4, 0x0, + 0x78, 0xe0, 0x1f, 0xfc, 0xa3, 0xc7, 0x10, 0x2, + 0x62, 0x80, 0x7f, 0xf2, 0x93, 0x10, 0x2, 0x4c, + 0x40, 0xf, 0xfe, 0x52, 0x62, 0x0, 0x5, 0x30, + 0xc0, 0x3f, 0xf9, 0x22, 0xf8, 0x60, 0x2, 0x44, + 0x10, 0x7, 0xff, 0x24, 0x5a, 0x23, 0x59, 0x0, + 0x40, + + /* U+005D "]" */ + 0x0, 0x2d, 0xff, 0xff, 0xf0, 0x6d, 0x40, 0x33, + 0x6b, 0xbf, 0x99, 0x4, 0x3, 0xfc, 0x6d, 0x11, + 0xe9, 0xe5, 0x0, 0xff, 0xff, 0x80, 0x7f, 0xff, + 0xc0, 0x3f, 0xff, 0xe0, 0x1f, 0xff, 0xf0, 0xf, + 0xff, 0xf8, 0x7, 0xff, 0x58, 0xda, 0x67, 0xee, + 0x50, 0xf, 0xf3, 0x6b, 0x37, 0xc8, 0x20, 0x1f, + 0x80, + + /* U+005E "^" */ + 0x0, 0xff, 0xe0, 0x1c, 0x6f, 0xff, 0x6c, 0x18, + 0x7, 0xff, 0x30, 0xe9, 0x88, 0x3, 0x89, 0xa8, + 0xc0, 0x3f, 0xf9, 0x49, 0x4e, 0x20, 0x1, 0x18, + 0x0, 0x2f, 0x48, 0x1, 0xff, 0xc8, 0x5e, 0x61, + 0x0, 0x1c, 0xd4, 0x90, 0x0, 0x5b, 0x94, 0x3, + 0xff, 0x8a, 0x2b, 0xca, 0x1, 0x15, 0xaa, 0x2d, + 0x18, 0x4, 0xbc, 0xa2, 0x1, 0xff, 0xc2, 0x17, + 0xe4, 0x0, 0x8e, 0x94, 0x80, 0x96, 0xcc, 0x2, + 0x4e, 0x71, 0x0, 0xff, 0xe0, 0xb, 0x52, 0x0, + 0x47, 0x6a, 0x40, 0x11, 0x35, 0x98, 0x4, 0x94, + 0xc4, 0x1, 0xfe, 0x26, 0xa3, 0x0, 0x8e, 0xd4, + 0x80, 0x38, 0x5a, 0xcc, 0x2, 0x3a, 0x52, 0x0, + 0xfc, 0x75, 0x42, 0x0, 0x8e, 0xd8, 0x80, 0x3e, + 0x16, 0xa3, 0x0, 0x8a, 0xa8, 0x60, 0x1e, 0x3a, + 0x62, 0x0, 0x92, 0x98, 0x40, 0x3f, 0x85, 0xe9, + 0x0, 0x22, 0x6a, 0x30, 0xc, 0x94, 0xe2, 0x1, + 0x26, 0xb8, 0x80, 0x7f, 0xc2, 0xfa, 0x80, 0x10, + 0xbd, 0x20, 0x0, + + /* U+005F "_" */ + 0x0, 0x92, 0x33, 0x3f, 0xfb, 0x14, 0xc4, 0x1, + 0x84, 0x8c, 0xff, 0xfb, 0xe, 0x20, 0x0, + + /* U+0060 "`" */ + 0x0, 0xff, 0xe8, 0x92, 0xd6, 0xea, 0x50, 0x40, + 0x3f, 0xf8, 0x49, 0x39, 0x4a, 0x44, 0x6a, 0xa3, + 0x10, 0x7, 0xff, 0x1, 0x2e, 0x10, 0x40, 0x21, + 0x49, 0xf8, 0x40, 0xf, 0xf8, 0x9a, 0xf2, 0x50, + 0x40, 0x22, 0x7a, 0xb6, 0x20, 0xf, 0xf8, 0x9a, + 0xf2, 0x94, 0x40, 0x2, 0x93, 0x26, 0x10, 0xf, + 0xfe, 0x1, 0x2d, 0x7d, 0x29, 0xa4, 0xc9, 0x84, + 0x3, 0xff, 0x86, 0x2b, 0x59, 0x6c, 0x40, 0x18, + + /* U+0061 "a" */ + 0x0, 0xff, 0x9, 0xb4, 0x4d, 0xe6, 0xf7, 0x3f, + 0xdd, 0xcd, 0xcb, 0x96, 0x31, 0x0, 0xff, 0xe0, + 0x92, 0xc5, 0xf7, 0x32, 0x5d, 0x90, 0xc8, 0x44, + 0x0, 0x11, 0x11, 0xa3, 0x4e, 0x7d, 0x28, 0x80, + 0x7f, 0x8c, 0xc8, 0x81, 0x0, 0x9, 0x22, 0xb3, + 0xcc, 0xe8, 0x63, 0x10, 0xc, 0x2b, 0x70, 0x80, + 0x1f, 0xc2, 0xdf, 0x51, 0x5b, 0xfb, 0x75, 0x30, + 0xcd, 0x9e, 0x73, 0x5c, 0x80, 0x30, 0xb7, 0x28, + 0x7, 0xf8, 0xd5, 0xd4, 0x84, 0x3, 0xff, 0x80, + 0x76, 0xa4, 0x1, 0xce, 0x44, 0x0, 0xff, 0xe3, + 0x9, 0xa2, 0xb3, 0xc4, 0xd5, 0xfa, 0x90, 0x7, + 0x1f, 0x30, 0x7, 0xfc, 0x4a, 0xf5, 0x9d, 0xfd, + 0x97, 0x53, 0xe, 0xca, 0x86, 0x40, 0x1e, 0x13, + 0x0, 0xfc, 0x29, 0x3b, 0xaa, 0x85, 0x31, 0x1, + 0x35, 0x79, 0xab, 0xcd, 0xed, 0x83, 0x0, 0xff, + 0xe1, 0x24, 0x53, 0x10, 0x4, 0x4b, 0x5b, 0xd9, + 0x50, 0xca, 0x86, 0x42, 0x60, 0x1f, 0xfc, 0x33, + 0xc4, 0x10, 0xc, 0x77, 0x65, 0x20, 0xf, 0xfe, + 0x73, 0x89, 0x0, 0x78, 0x40, 0x3f, 0xe1, 0x49, + 0xb3, 0x0, 0xff, 0xe0, 0xaf, 0x98, 0x7, 0x1c, + 0xed, 0x43, 0x2a, 0x99, 0xe2, 0xb3, 0xed, 0xcc, + 0x3, 0xff, 0x84, 0x2d, 0xec, 0x40, 0x18, 0x4d, + 0x5e, 0x6a, 0x93, 0xe, 0xa6, 0x6, 0xf0, 0xc4, + 0x1, 0xff, 0xc2, 0x39, 0xcc, 0x4b, 0x21, 0x8, + 0x80, 0x2, 0x46, 0x8d, 0x39, 0xf9, 0xf, 0x8e, + 0x1, 0xfc, + + /* U+0062 "b" */ + 0x0, 0x1c, 0xf7, 0xff, 0x6b, 0x90, 0x7, 0xff, + 0xfc, 0x3, 0xff, 0xfe, 0x1, 0xff, 0xff, 0x0, + 0xff, 0xe6, 0x8, 0x18, 0x0, 0xda, 0x2f, 0x37, + 0xbf, 0xdd, 0xb7, 0x52, 0xe8, 0x20, 0x1f, 0xfc, + 0x81, 0xd8, 0xbe, 0xc9, 0x74, 0x32, 0x10, 0x0, + 0x92, 0x2b, 0x45, 0xfd, 0xb9, 0x80, 0x7f, 0xf1, + 0x49, 0x59, 0x4, 0x46, 0xad, 0x11, 0x99, 0x48, + 0x40, 0x30, 0xa4, 0x74, 0x18, 0x7, 0xff, 0x10, + 0x52, 0x33, 0xf2, 0xa5, 0xdf, 0x4d, 0x6e, 0x41, + 0x80, 0x71, 0x3c, 0xa8, 0x7, 0xff, 0x8, 0xa6, + 0x4e, 0x62, 0x1, 0xfe, 0x27, 0x85, 0x10, 0xe, + 0x5f, 0x40, 0xf, 0xfe, 0x9a, 0xe2, 0x80, 0x79, + 0x88, 0x40, 0x3f, 0xfa, 0x42, 0x42, 0x1, 0xe2, + 0xe2, 0x0, 0xff, 0xe9, 0x88, 0x80, 0x3c, 0x5e, + 0x20, 0x1f, 0xfd, 0x22, 0x23, 0x0, 0x79, 0x88, + 0x80, 0x1f, 0xfd, 0x12, 0x5b, 0x20, 0xe, 0x2d, + 0x70, 0xf, 0xfe, 0x9, 0xe2, 0x10, 0x7, 0xfc, + 0x4d, 0x32, 0x30, 0xe, 0x3b, 0x62, 0x0, 0xff, + 0xe0, 0x8a, 0x4e, 0xf5, 0xcc, 0x3b, 0x31, 0xe2, + 0xb3, 0x12, 0x82, 0x1, 0x89, 0xfd, 0x84, 0x3, + 0xff, 0x82, 0x48, 0xa6, 0x22, 0x46, 0x78, 0x99, + 0x43, 0xa9, 0x88, 0x6, 0x25, 0x9f, 0x83, 0x0, + 0xff, 0xe1, 0xbf, 0x56, 0x7e, 0x4b, 0x29, 0x90, + 0x80, 0x91, 0xa2, 0xbc, 0xe6, 0xd3, 0x10, 0x7, + 0xe0, + + /* U+0063 "c" */ + 0x0, 0xff, 0xe0, 0x8a, 0x3c, 0xd5, 0xe6, 0xf7, + 0xfb, 0xb7, 0x2e, 0x61, 0x48, 0x3, 0xff, 0x88, + 0x6d, 0x5b, 0xd7, 0xc, 0xa8, 0x64, 0x20, 0x1, + 0x23, 0x46, 0x7a, 0xdd, 0x4a, 0x0, 0x7f, 0x85, + 0x6b, 0x65, 0x48, 0x3, 0x9, 0xab, 0x3c, 0xca, + 0x1d, 0x90, 0x40, 0x6, 0xb4, 0x80, 0x1f, 0xc9, + 0x76, 0x51, 0x0, 0xc4, 0xd5, 0x98, 0xa9, 0x86, + 0x63, 0xc4, 0xdf, 0x6e, 0xd0, 0x60, 0x1f, 0x85, + 0xe1, 0x44, 0x3, 0xb, 0x4c, 0x94, 0x80, 0x3f, + 0xe2, 0x20, 0x80, 0x7f, 0x93, 0xc, 0x3, 0x85, + 0xe9, 0x0, 0x3f, 0xf9, 0xc4, 0x47, 0x0, 0xf1, + 0x79, 0x0, 0x7f, 0xf3, 0xcc, 0x3, 0xff, 0xb4, + 0x26, 0xa2, 0x1, 0xc5, 0xc4, 0x1, 0xff, 0xd0, + 0x5e, 0x20, 0xe, 0x16, 0xa4, 0x0, 0xff, 0xe7, + 0x8b, 0x52, 0x0, 0x70, 0xb4, 0xc2, 0x8, 0x7, + 0xfc, 0x28, 0x83, 0x0, 0xff, 0xb, 0x4c, 0x18, + 0x7, 0x13, 0xdf, 0xe4, 0xc3, 0xb3, 0x1e, 0x26, + 0xf7, 0xae, 0xdb, 0x26, 0x1, 0xfe, 0x27, 0xdb, + 0x73, 0x10, 0xc, 0x26, 0xcf, 0x13, 0x28, 0x76, + 0x42, 0x0, 0x8c, 0xcc, 0x40, 0x1f, 0xf0, 0xa4, + 0x67, 0xe4, 0xba, 0xa1, 0x90, 0x80, 0x4, 0x8d, + 0x15, 0xa2, 0xfb, 0x69, 0x48, 0x2, + + /* U+0064 "d" */ + 0x0, 0xff, 0xe9, 0x2d, 0xff, 0xfa, 0xd8, 0x3, + 0xff, 0xfe, 0x1, 0xff, 0xff, 0x0, 0xff, 0xff, + 0x12, 0xbc, 0xd6, 0x6f, 0x7f, 0x6e, 0x5d, 0x42, + 0x90, 0x8, 0x80, 0x3f, 0xf8, 0xc2, 0x91, 0x9b, + 0x50, 0xca, 0x64, 0x20, 0x24, 0x68, 0xaf, 0x5b, + 0xa8, 0x70, 0xf, 0xfe, 0x21, 0x36, 0xdb, 0x98, + 0x7, 0x12, 0x33, 0xc4, 0xc3, 0xb2, 0x10, 0x11, + 0x90, 0x7, 0xff, 0x8, 0x56, 0x20, 0x60, 0x1c, + 0x6f, 0x98, 0xb9, 0x87, 0x67, 0x89, 0xbd, 0xeb, + 0x62, 0x0, 0xff, 0xe0, 0x8b, 0xf2, 0x88, 0x6, + 0x16, 0x88, 0x18, 0x80, 0x7f, 0x85, 0x31, 0x80, + 0x3f, 0xf8, 0x25, 0xca, 0x1, 0xc2, 0xfa, 0x80, + 0x1f, 0xfd, 0x25, 0x31, 0x0, 0xe2, 0xe6, 0x0, + 0xff, 0xe9, 0x8, 0x7, 0xf8, 0xc0, 0x3f, 0xfa, + 0x42, 0x44, 0x10, 0xe, 0x2f, 0x20, 0xf, 0xfe, + 0x9b, 0x71, 0x0, 0x70, 0xaa, 0x10, 0x7, 0xff, + 0x48, 0x96, 0xc8, 0x3, 0x8a, 0x64, 0xa4, 0x1, + 0xfe, 0x14, 0x98, 0x40, 0xf, 0xfe, 0x11, 0x3c, + 0x28, 0x80, 0x61, 0x4a, 0xcc, 0x54, 0x3b, 0x31, + 0xe6, 0xb3, 0xed, 0x88, 0x3, 0xff, 0x8a, 0xb7, + 0x4c, 0x60, 0x1c, 0x26, 0xaf, 0x13, 0x28, 0x65, + 0x31, 0x12, 0x3b, 0x18, 0x7, 0xff, 0x10, 0x52, + 0x73, 0x69, 0xd9, 0xc, 0x84, 0x0, 0x22, 0x34, + 0x69, 0xcf, 0xb8, 0xd5, 0x0, 0xfe, + + /* U+0065 "e" */ + 0x0, 0xff, 0xe0, 0x9, 0xb4, 0x55, 0xe6, 0xf7, + 0xf6, 0xe5, 0xd4, 0xba, 0x8, 0x7, 0xff, 0x10, + 0x4d, 0xef, 0xf2, 0x5d, 0x50, 0xc8, 0x40, 0x48, + 0xd1, 0x5a, 0x2f, 0xed, 0xcc, 0x3, 0xfe, 0x15, + 0xac, 0x84, 0x10, 0x8, 0x96, 0x26, 0xae, 0xd5, + 0x2c, 0x62, 0x0, 0x14, 0x8e, 0x83, 0x0, 0xf8, + 0x52, 0xec, 0x80, 0x18, 0xdf, 0x75, 0x4e, 0xca, + 0x88, 0x56, 0x9c, 0xc4, 0x18, 0x4, 0x4f, 0xa, + 0x20, 0x18, 0x5a, 0x14, 0x40, 0x21, 0x6f, 0x82, + 0x0, 0xff, 0x89, 0xe5, 0x0, 0x32, 0x62, 0x80, + 0x64, 0xc3, 0x0, 0xe4, 0xd3, 0x0, 0xff, 0xe1, + 0xb1, 0x88, 0x6, 0x22, 0x8, 0x0, 0x88, 0xe0, + 0x1e, 0x5b, 0xff, 0xff, 0xe2, 0x63, 0x88, 0x6, + 0x6e, 0x20, 0x1, 0x88, 0x7, 0xff, 0x50, 0x7c, + 0x40, 0x2, 0x4a, 0x20, 0x1c, 0xb5, 0xff, 0xff, + 0xcb, 0xc7, 0x20, 0x9, 0x7c, 0x80, 0x39, 0x31, + 0x0, 0x3f, 0xfa, 0x2, 0xf2, 0xa2, 0x1, 0xb, + 0x55, 0x10, 0x40, 0x3f, 0xf9, 0xc2, 0xb7, 0x8, + 0x1, 0x85, 0x6f, 0xf2, 0x9d, 0x95, 0x12, 0x55, + 0x33, 0xcd, 0xef, 0xe3, 0x90, 0x7, 0xf0, 0xb5, + 0x5c, 0x20, 0x80, 0x42, 0x6b, 0x13, 0x57, 0x75, + 0x52, 0x61, 0x90, 0x80, 0xed, 0x48, 0x3, 0xfc, + 0x28, 0xf7, 0xdb, 0x4e, 0xca, 0x86, 0x42, 0x0, + 0x12, 0x34, 0x56, 0x8a, 0xde, 0xc7, 0x20, 0x0, + + /* U+0066 "f" */ + 0x0, 0xff, 0x84, 0xde, 0x6f, 0x37, 0xbf, 0xee, + 0xe6, 0x5b, 0x10, 0x7, 0xfc, 0x93, 0xf9, 0xc, + 0x86, 0x42, 0x1, 0x8, 0x8d, 0xc4, 0xc0, 0x3f, + 0x89, 0xe1, 0x84, 0x3, 0xa, 0x3d, 0x5d, 0xaa, + 0x65, 0xa, 0x20, 0x1f, 0xcf, 0xa6, 0x1, 0xc7, + 0x35, 0xa, 0x88, 0x56, 0x62, 0x10, 0x7, 0xf0, + 0x93, 0x0, 0x79, 0x8c, 0x40, 0x3f, 0xf9, 0xe6, + 0x1, 0xff, 0xc3, 0x38, 0xde, 0xea, 0xc, 0x3, + 0xcd, 0x7f, 0xfe, 0xa4, 0x0, 0xf8, 0x4c, 0x44, + 0x1, 0xff, 0xcd, 0x2b, 0xab, 0xb5, 0x31, 0x0, + 0x79, 0x22, 0xef, 0xd0, 0xa0, 0x1e, 0x12, 0x44, + 0xdc, 0x20, 0x1e, 0x23, 0x44, 0xf1, 0x8, 0x7, + 0xff, 0xfc, 0x3, 0xff, 0xfe, 0x1, 0xff, 0xff, + 0x0, 0xff, 0xff, 0x80, 0x70, + + /* U+0067 "g" */ + 0x0, 0xff, 0x89, 0x62, 0xaf, 0x37, 0xbf, 0xff, + 0xf9, 0x12, 0x80, 0x1f, 0x85, 0x6b, 0x75, 0x4e, + 0xa8, 0x64, 0x20, 0x1f, 0xfd, 0x1, 0x6a, 0xa2, + 0x90, 0x4, 0x4d, 0x39, 0xdf, 0xee, 0xca, 0x63, + 0x0, 0xf2, 0x4e, 0x6e, 0xe8, 0x40, 0xe, 0x26, + 0xa4, 0x0, 0xc4, 0xfd, 0x2c, 0x62, 0x0, 0x13, + 0x59, 0xe8, 0x20, 0xc, 0x9a, 0xa6, 0x45, 0x8, + 0x7, 0x9f, 0x4c, 0x3, 0x93, 0xc, 0x3, 0xfc, + 0x48, 0xa2, 0x1, 0x97, 0xd4, 0x3, 0xfe, 0x10, + 0xf, 0xfe, 0x48, 0x80, 0x71, 0x8b, 0x0, 0x7f, + 0x9f, 0x8, 0x3, 0x93, 0xc, 0x3, 0xfc, 0x48, + 0x81, 0x0, 0xcf, 0xa4, 0x1, 0xfe, 0x26, 0x85, + 0x10, 0x8, 0x9f, 0xa9, 0x8c, 0x40, 0x2, 0x6b, + 0x3f, 0x4, 0x1, 0x13, 0xca, 0x80, 0x7f, 0xf0, + 0x5, 0x6b, 0x58, 0x80, 0x22, 0x59, 0xce, 0xff, + 0x76, 0x53, 0x10, 0x0, 0x52, 0x3a, 0xc, 0x3, + 0xff, 0x84, 0x4d, 0xe, 0x40, 0x28, 0xce, 0xe5, + 0x43, 0x32, 0x21, 0x5a, 0x2b, 0x7a, 0xdc, 0xc0, + 0x3f, 0xf8, 0x69, 0x10, 0x41, 0x2, 0x68, 0x98, + 0x85, 0x5e, 0x62, 0xed, 0x52, 0xea, 0x40, 0x1f, + 0xfc, 0x71, 0x18, 0x2, 0x26, 0x88, 0x32, 0xac, + 0x89, 0xfc, 0x66, 0x21, 0x10, 0x7, 0xff, 0x9, + 0x3d, 0x88, 0x2, 0x14, 0x79, 0xaa, 0xae, 0xff, + 0xb3, 0x1b, 0xdd, 0x6d, 0x3a, 0x8, 0x7, 0xe1, + 0x5d, 0x42, 0x0, 0x84, 0x88, 0x22, 0x0, 0xff, + 0xe1, 0x89, 0x2c, 0x5e, 0xb1, 0x0, 0x71, 0xc6, + 0x5b, 0x10, 0xad, 0x7e, 0xeb, 0xb9, 0xff, 0xfd, + 0xdc, 0xc9, 0x52, 0x0, 0xe3, 0xd4, 0x10, 0x0, + 0xb4, 0x39, 0x0, 0x5, 0xf9, 0x44, 0x3, 0xff, + 0x82, 0x22, 0x36, 0x95, 0x10, 0xf, 0xf1, 0x8b, + 0x80, 0x61, 0x31, 0x0, 0xff, 0xe3, 0x15, 0xa0, + 0x80, 0x62, 0xc4, 0x10, 0x1, 0x22, 0x88, 0x6, + 0x5b, 0xb4, 0x29, 0x8, 0x7, 0xe1, 0x36, 0x8b, + 0xc7, 0x30, 0x8, 0x9a, 0x58, 0x80, 0x31, 0xc5, + 0x39, 0x0, 0x42, 0x8f, 0x5b, 0xdf, 0xf7, 0x73, + 0xfe, 0xec, 0x97, 0x41, 0x1, 0x36, 0xaf, 0x94, + 0x10, 0xf, 0xa, 0x46, 0xea, 0xe5, 0xd4, 0xc8, + 0x82, 0x20, 0x0, 0x80, 0x91, 0xa2, 0x15, 0xe2, + 0xf7, 0xb2, 0x54, 0x80, 0x38, + + /* U+0068 "h" */ + 0x0, 0x1c, 0xf7, 0xff, 0x6b, 0x90, 0x7, 0xff, + 0xfc, 0x3, 0xff, 0xfe, 0x1, 0xff, 0xff, 0x0, + 0xf0, 0x81, 0x80, 0x4, 0xda, 0x6f, 0x3b, 0x9f, + 0xee, 0xdc, 0xb8, 0x52, 0x0, 0xff, 0xe3, 0xab, + 0xdf, 0xe4, 0xb2, 0x18, 0x88, 0x0, 0x24, 0x68, + 0xf5, 0x96, 0xc4, 0x1, 0xff, 0xc2, 0x38, 0xb8, + 0x41, 0x11, 0x23, 0x3b, 0xcc, 0x62, 0x1, 0xc2, + 0x91, 0x46, 0x1, 0xff, 0xc3, 0x14, 0x8c, 0xed, + 0xb9, 0x88, 0xa7, 0x31, 0x6, 0x1, 0xc2, 0xb6, + 0x60, 0x1f, 0xfc, 0x2, 0x7d, 0xb7, 0x30, 0xf, + 0xe2, 0x5b, 0x20, 0xe, 0x22, 0x38, 0x7, 0xff, + 0x7, 0xc4, 0x3, 0xff, 0x82, 0x42, 0xc0, 0x1e, + 0x12, 0x0, 0xff, 0xe8, 0x98, 0x7, 0xff, 0xfc, + 0x3, 0xff, 0xfe, 0x1, 0xff, 0xff, 0x0, 0xff, + 0xf7, 0x80, + + /* U+0069 "i" */ + 0x0, 0x12, 0xce, 0x77, 0x36, 0xe5, 0x48, 0x2, + 0x2a, 0x86, 0x31, 0x11, 0x23, 0x45, 0x10, 0x0, + 0xb1, 0xc4, 0x3, 0x85, 0xf0, 0x80, 0x24, 0xae, + 0xdb, 0xb6, 0x77, 0x29, 0x0, 0x3e, 0x24, 0x41, + 0x88, 0x7, 0xff, 0x28, 0xe7, 0xbf, 0xfb, 0x5c, + 0x80, 0x3f, 0xff, 0xe0, 0x1f, 0xff, 0xf0, 0xf, + 0xff, 0x18, + + /* U+006A "j" */ + 0x0, 0xff, 0x85, 0x67, 0x37, 0xb6, 0xe5, 0x48, + 0x3, 0xff, 0x80, 0x4d, 0xc, 0x64, 0x24, 0x8d, + 0x14, 0x60, 0x1f, 0xf1, 0x1a, 0x8, 0x7, 0xb, + 0xe9, 0x0, 0x7f, 0xf0, 0x12, 0x7b, 0x72, 0xf3, + 0x7a, 0x94, 0x40, 0x3f, 0xf8, 0x64, 0x68, 0x64, + 0x1, 0xff, 0xdc, 0x38, 0xef, 0xfe, 0xd8, 0x30, + 0xf, 0xff, 0xf8, 0x7, 0xff, 0xfc, 0x3, 0xff, + 0xfe, 0x1, 0xff, 0xff, 0x0, 0xff, 0xf3, 0x8, + 0x7, 0xde, 0x20, 0x1f, 0xfc, 0x1, 0x52, 0x10, + 0xe, 0x61, 0x20, 0xe, 0x35, 0x65, 0x59, 0xea, + 0x10, 0x3, 0x8f, 0x10, 0x3, 0x8e, 0xed, 0x35, + 0x54, 0x20, 0x80, 0x61, 0x58, 0x62, 0x0, 0xe7, + 0x13, 0x11, 0x0, 0x42, 0x48, 0xaf, 0x7f, 0x48, + 0x20, 0x18, + + /* U+006B "k" */ + 0x0, 0x1c, 0xf7, 0xff, 0x63, 0x88, 0x7, 0xff, + 0xfc, 0x3, 0xff, 0xfe, 0x1, 0xff, 0xff, 0x0, + 0xff, 0xe4, 0xa, 0xd7, 0x7f, 0xf7, 0x52, 0x88, + 0x7, 0xff, 0x30, 0x9f, 0x69, 0x44, 0x2, 0x27, + 0xda, 0x51, 0x0, 0xff, 0xe5, 0x1c, 0x7c, 0x18, + 0x6, 0x39, 0xf8, 0x30, 0xf, 0xfe, 0x50, 0xad, + 0x6b, 0x90, 0x4, 0x2b, 0x5a, 0xc4, 0x1, 0xff, + 0xca, 0x26, 0xaa, 0x28, 0x80, 0x46, 0xfb, 0x4a, + 0x20, 0x1f, 0xfc, 0x93, 0x33, 0xf4, 0xa0, 0x6, + 0x38, 0xe8, 0x30, 0xf, 0xfe, 0x50, 0xe4, 0xf4, + 0x18, 0x7, 0x8e, 0xd0, 0x80, 0x3f, 0xf9, 0x64, + 0x88, 0x20, 0x8, 0x44, 0x1, 0x8e, 0x20, 0xa2, + 0x1, 0xff, 0xcd, 0x15, 0xaf, 0xd7, 0x20, 0x8, + 0x56, 0xe1, 0x0, 0x3f, 0xf9, 0x46, 0xfb, 0x4a, + 0x27, 0x12, 0xc2, 0x1, 0xb, 0x4c, 0x18, 0x7, + 0xff, 0x18, 0x9f, 0xa0, 0xc0, 0x39, 0x22, 0x8, + 0x1, 0x89, 0xfd, 0xc8, 0x3, 0xff, 0x88, 0x3e, + 0x60, 0x1f, 0x85, 0xa6, 0x8, 0x3, 0x1c, 0x73, + 0x8, 0x7, 0xff, 0x3c, 0x9e, 0x58, 0x40, 0x31, + 0xc5, 0xa8, 0x80, 0x7f, 0xf3, 0xd2, 0x2d, 0x0, + 0x30, 0xad, 0xc2, 0x0, + + /* U+006C "l" */ + 0x0, 0x1c, 0xf7, 0xff, 0x6b, 0x90, 0x7, 0xff, + 0xfc, 0x3, 0xff, 0xfe, 0x1, 0xff, 0xff, 0x0, + 0xff, 0xf8, 0xf8, 0x7, 0xe1, 0xe2, 0x0, 0xe2, + 0x5b, 0x63, 0x10, 0xc, 0x48, 0x82, 0x0, 0xe2, + 0x69, 0xf7, 0x10, 0xc, 0x71, 0xd0, 0xa6, 0x22, + 0x0, 0x84, 0x44, 0x0, + + /* U+006D "m" */ + 0x0, 0x1c, 0xf7, 0xfe, 0xb6, 0x0, 0xc4, 0x8f, + 0x59, 0xbd, 0xff, 0x76, 0xdc, 0xb1, 0x88, 0x7, + 0xc4, 0xb1, 0x59, 0xbd, 0xfe, 0xed, 0xca, 0x85, + 0x20, 0xf, 0xfe, 0x2b, 0x9, 0xa4, 0x66, 0x2e, + 0x14, 0xc8, 0x40, 0x21, 0x24, 0x69, 0xcd, 0x72, + 0x1, 0x48, 0xcd, 0xa7, 0x53, 0x21, 0x0, 0x9, + 0x1a, 0xbd, 0x65, 0xb0, 0x80, 0x7f, 0xf0, 0x8a, + 0x32, 0xdc, 0xc4, 0x46, 0xac, 0xee, 0x64, 0x10, + 0xf, 0x1c, 0x7e, 0x62, 0xdc, 0xc0, 0x8d, 0x5d, + 0xe6, 0x31, 0x0, 0xe1, 0x4b, 0x93, 0x0, 0xff, + 0xe2, 0xa, 0x4e, 0xf6, 0x54, 0xc4, 0x26, 0xfe, + 0x4c, 0x3, 0xc4, 0x64, 0x45, 0xad, 0xd6, 0x54, + 0x45, 0x39, 0x87, 0x20, 0xe, 0x25, 0xb2, 0x0, + 0xff, 0xe0, 0x93, 0xed, 0xb1, 0x0, 0x7e, 0x17, + 0xa3, 0x0, 0xf1, 0x47, 0xd2, 0x90, 0x7, 0xe2, + 0xaa, 0x10, 0x7, 0x10, 0xb0, 0x7, 0xff, 0xb, + 0xc4, 0x3, 0xff, 0x80, 0x26, 0xc0, 0x1e, 0x11, + 0x18, 0x7, 0xff, 0x0, 0xc5, 0x80, 0x3c, 0x44, + 0x0, 0xff, 0xe8, 0x88, 0x7, 0xff, 0x28, 0x4c, + 0x3, 0xff, 0xfe, 0x1, 0xff, 0xff, 0x0, 0xff, + 0xff, 0x80, 0x7f, 0xff, 0xc0, 0x3f, 0xff, 0xe0, + 0x1f, 0xff, 0xf0, 0x8, + + /* U+006E "n" */ + 0x0, 0x1c, 0xf7, 0xfe, 0xb6, 0x0, 0xc2, 0x8d, + 0x37, 0xbd, 0xcf, 0xf7, 0x6e, 0x5c, 0x29, 0x0, + 0x7f, 0xf1, 0x18, 0x4d, 0x1e, 0xfe, 0xe5, 0x90, + 0x84, 0x40, 0x1, 0x23, 0x47, 0xac, 0xb6, 0x20, + 0xf, 0xfe, 0x9, 0x46, 0x5c, 0x20, 0x88, 0x91, + 0x9d, 0xe6, 0x31, 0x0, 0xe1, 0x48, 0xa3, 0x0, + 0xff, 0xe1, 0x8a, 0x46, 0x76, 0xdc, 0xc4, 0x53, + 0x98, 0x83, 0x0, 0xe1, 0x5b, 0x30, 0xf, 0xfe, + 0x1, 0x3e, 0xdb, 0x98, 0x7, 0xf1, 0x2d, 0x90, + 0x7, 0x11, 0x1c, 0x3, 0xff, 0x83, 0xe2, 0x1, + 0xff, 0xc1, 0x21, 0x60, 0xf, 0x9, 0x0, 0x7f, + 0xf4, 0x4c, 0x3, 0xff, 0xfe, 0x1, 0xff, 0xff, + 0x0, 0xff, 0xff, 0x80, 0x7f, 0xfb, 0xc0, + + /* U+006F "o" */ + 0x0, 0xff, 0xe0, 0x9a, 0xc4, 0xd6, 0x6f, 0x7f, + 0xbb, 0x72, 0xea, 0x18, 0xc4, 0x3, 0xff, 0x8c, + 0x26, 0xf7, 0xd9, 0x4e, 0xca, 0x64, 0x20, 0x1, + 0x23, 0x45, 0x79, 0xcf, 0xb8, 0x41, 0x0, 0xff, + 0xe0, 0xa, 0xd6, 0x42, 0x8, 0x6, 0x25, 0x68, + 0x99, 0x43, 0xa9, 0x88, 0x4, 0x28, 0xf7, 0xac, + 0x40, 0x1f, 0x85, 0x6e, 0xc8, 0x1, 0xc9, 0x1b, + 0xaa, 0x97, 0x66, 0x3c, 0x56, 0x62, 0x94, 0x40, + 0x31, 0xcc, 0x98, 0x40, 0x38, 0x9a, 0x54, 0x40, + 0x31, 0x3c, 0x39, 0x0, 0x7f, 0x89, 0x6e, 0x4c, + 0x3, 0x92, 0xe4, 0x80, 0x33, 0xe1, 0x80, 0x71, + 0x2d, 0x98, 0x7, 0xff, 0x8, 0x5a, 0xcc, 0x3, + 0x89, 0x10, 0x20, 0x2, 0x23, 0x80, 0x79, 0xb8, + 0x80, 0x3f, 0xf8, 0x82, 0x4c, 0x1, 0xe1, 0xe2, + 0x0, 0xff, 0xe9, 0x88, 0x7, 0xff, 0x0, 0x85, + 0xc0, 0x3c, 0xdc, 0x40, 0x1f, 0xfc, 0x41, 0x26, + 0x0, 0xf0, 0xf1, 0x0, 0x49, 0x86, 0x1, 0xc4, + 0xb6, 0x40, 0x1f, 0xfc, 0x21, 0x7a, 0x30, 0xe, + 0x24, 0x51, 0x0, 0x89, 0xa5, 0x44, 0x3, 0x13, + 0x4b, 0x10, 0x7, 0xf8, 0x56, 0xe0, 0xc0, 0x39, + 0x2e, 0x4c, 0x3, 0x85, 0x6e, 0x10, 0x3, 0xa, + 0x4e, 0x62, 0xa1, 0xd9, 0x8f, 0x13, 0x9f, 0x4a, + 0x20, 0x18, 0xe2, 0x58, 0x40, 0x3f, 0xb, 0x55, + 0xc2, 0x8, 0x4, 0x26, 0xaf, 0x13, 0x28, 0x76, + 0x31, 0x0, 0x84, 0xde, 0xf5, 0xc8, 0x3, 0xff, + 0x80, 0x28, 0xf7, 0xf9, 0x2e, 0xa8, 0x64, 0x20, + 0x1, 0x23, 0x45, 0x79, 0xcf, 0xc8, 0x41, 0x0, + 0xf0, + + /* U+0070 "p" */ + 0x0, 0x1c, 0xf7, 0xfe, 0xb6, 0x10, 0x0, 0xa3, + 0x4d, 0xe7, 0x73, 0xfd, 0xdb, 0x75, 0x2e, 0x82, + 0x1, 0xff, 0xc7, 0x5d, 0x99, 0x67, 0xdc, 0xb2, + 0x18, 0x88, 0x0, 0x24, 0x8a, 0xd1, 0x7f, 0x6e, + 0x60, 0x1f, 0xfc, 0x41, 0x47, 0x63, 0x11, 0x1a, + 0xb4, 0x46, 0x65, 0x21, 0x0, 0xc2, 0x91, 0xd0, + 0x60, 0x1f, 0xfc, 0x41, 0x48, 0xcf, 0xca, 0x97, + 0x7d, 0x35, 0xb9, 0x6, 0x1, 0xc4, 0xf2, 0xa0, + 0x1f, 0xfc, 0x22, 0x99, 0x39, 0x88, 0x7, 0xf8, + 0x9e, 0x14, 0x40, 0x39, 0x7d, 0x0, 0x3f, 0xfa, + 0x6b, 0x8a, 0x1, 0xe6, 0x21, 0x0, 0xff, 0xe9, + 0x9, 0x8, 0x7, 0x8b, 0x88, 0x3, 0xff, 0xa6, + 0x22, 0x0, 0xf1, 0x78, 0x80, 0x7f, 0xf4, 0x88, + 0x8c, 0x1, 0xe6, 0x22, 0x0, 0x7f, 0xf4, 0x49, + 0x6c, 0x80, 0x38, 0xb5, 0xc0, 0x3f, 0xf8, 0x27, + 0x88, 0x40, 0x1f, 0xf1, 0x34, 0xc8, 0xc0, 0x38, + 0xed, 0x88, 0x3, 0xff, 0x82, 0x29, 0x3b, 0xd9, + 0x30, 0xec, 0xc7, 0x8a, 0xcc, 0x4a, 0x8, 0x6, + 0x27, 0xf6, 0x10, 0xf, 0xfe, 0x10, 0x99, 0x84, + 0x46, 0xcf, 0x13, 0x28, 0x75, 0x31, 0x0, 0xc4, + 0xb3, 0xf0, 0x60, 0x1f, 0xfc, 0x42, 0xbd, 0xfc, + 0x97, 0x53, 0x21, 0x1, 0x23, 0x45, 0x79, 0xcd, + 0xa6, 0x20, 0xf, 0xfe, 0x41, 0x89, 0xb4, 0x56, + 0x6f, 0x7f, 0x6e, 0x5d, 0x43, 0x18, 0x7, 0xff, + 0x28, 0x40, 0x3f, 0xff, 0xe0, 0x1f, 0xff, 0xf0, + 0xf, 0xff, 0x28, + + /* U+0071 "q" */ + 0x0, 0xff, 0xe0, 0x12, 0xbc, 0xd6, 0x6f, 0x7f, + 0x6e, 0x5d, 0x43, 0x18, 0x0, 0xe3, 0xbf, 0xf5, + 0xb0, 0x7, 0xf8, 0x52, 0x33, 0x6a, 0x19, 0x4c, + 0x84, 0x4, 0x8d, 0x15, 0xe7, 0x3a, 0xe1, 0x44, + 0x3, 0xff, 0x84, 0x4d, 0xb6, 0xe6, 0x1, 0xc4, + 0x8c, 0xf1, 0x30, 0xec, 0x84, 0x2, 0x88, 0x20, + 0xf, 0xfe, 0x8, 0xac, 0x40, 0xc0, 0x38, 0xdf, + 0x31, 0x73, 0xe, 0xcf, 0x13, 0x7b, 0xd6, 0xc4, + 0x1, 0xff, 0xc1, 0x17, 0xe5, 0x10, 0xc, 0x2d, + 0x10, 0x31, 0x0, 0xff, 0xa, 0x63, 0x0, 0x7f, + 0xf0, 0x4b, 0x94, 0x3, 0x85, 0xf5, 0x0, 0x3f, + 0xfa, 0x4a, 0x62, 0x1, 0xc5, 0xcc, 0x1, 0xff, + 0xd2, 0x10, 0xf, 0xf1, 0x80, 0x7f, 0xf4, 0x84, + 0x88, 0x20, 0x1c, 0x5e, 0x40, 0x1f, 0xfd, 0x36, + 0xe2, 0x0, 0xe1, 0x54, 0x20, 0xf, 0xfe, 0x91, + 0x2d, 0x90, 0x7, 0x14, 0xc9, 0x48, 0x3, 0xfc, + 0x29, 0x30, 0x80, 0x1f, 0xfc, 0x22, 0x78, 0x51, + 0x0, 0xc2, 0x95, 0x98, 0xa8, 0x76, 0x63, 0xcd, + 0x67, 0xdb, 0x10, 0x7, 0xff, 0x15, 0x6e, 0x98, + 0xc0, 0x38, 0x4d, 0x5e, 0x26, 0x50, 0xca, 0x62, + 0x4a, 0xa3, 0x0, 0xff, 0xe2, 0x8a, 0x4e, 0x6d, + 0x3b, 0x21, 0x90, 0x80, 0x4, 0x46, 0xaf, 0x5b, + 0xaa, 0xe6, 0x0, 0xff, 0xe4, 0x92, 0xc4, 0xde, + 0x6f, 0x7f, 0xbb, 0x99, 0x50, 0xa4, 0x0, 0x10, + 0xf, 0xfe, 0xf0, 0x80, 0x7f, 0xff, 0xc0, 0x3f, + 0xff, 0xe0, 0x1f, 0xfd, 0x0, + + /* U+0072 "r" */ + 0x0, 0x1c, 0xf7, 0xfe, 0xb6, 0x0, 0xc4, 0xb1, + 0x7b, 0xdf, 0xfb, 0x18, 0x40, 0x3f, 0xe7, 0x12, + 0x23, 0xe6, 0x29, 0xd0, 0x84, 0x2, 0x15, 0x21, + 0x0, 0xff, 0x8b, 0x27, 0xe0, 0xc4, 0x4, 0xd5, + 0x9a, 0x56, 0xc5, 0x0, 0xff, 0xe0, 0xa, 0x20, + 0x85, 0x27, 0x7b, 0x2a, 0x66, 0xa8, 0x51, 0x0, + 0xff, 0xe1, 0xa, 0xdd, 0x31, 0x0, 0x7f, 0xf2, + 0xc5, 0xa5, 0x44, 0x3, 0xff, 0x9a, 0x7e, 0x20, + 0x1f, 0xff, 0xf0, 0xf, 0xff, 0xf8, 0x7, 0xff, + 0xfc, 0x0, + + /* U+0073 "s" */ + 0x0, 0xfc, 0x26, 0xb1, 0x59, 0xba, 0xef, 0xf7, + 0x6e, 0x5d, 0x4b, 0xa1, 0x0, 0x7f, 0xf0, 0x45, + 0x6b, 0xf2, 0x9d, 0x4c, 0x88, 0x20, 0x1, 0x23, + 0x45, 0x68, 0xbd, 0xd5, 0x28, 0x80, 0x7e, 0x4b, + 0xa5, 0x10, 0x8, 0x51, 0xea, 0xf3, 0x17, 0x52, + 0xea, 0x62, 0x2, 0xfe, 0x82, 0x1, 0xf1, 0xe3, + 0x80, 0x72, 0x45, 0x42, 0xa1, 0x99, 0x15, 0xa2, + 0xb3, 0xf7, 0x29, 0x44, 0x3, 0xf0, 0xf8, 0x80, + 0x72, 0xfa, 0x88, 0x7, 0xf8, 0x48, 0x80, 0x1f, + 0xf1, 0x2d, 0x98, 0x6, 0x16, 0xbf, 0xc9, 0x75, + 0x31, 0x0, 0xff, 0xe3, 0x93, 0xed, 0xc2, 0x10, + 0x4, 0x26, 0xd1, 0x59, 0xdb, 0x70, 0xa6, 0x20, + 0x1f, 0xfc, 0x31, 0x47, 0xbd, 0xec, 0x96, 0x31, + 0x0, 0xc4, 0x8f, 0x59, 0xdb, 0x28, 0x20, 0x1f, + 0xfc, 0x41, 0x36, 0x9c, 0xee, 0x65, 0x3a, 0x8, + 0x6, 0x26, 0xbb, 0x28, 0x7, 0xff, 0x24, 0x4d, + 0x62, 0xf2, 0xc, 0x3, 0x93, 0x10, 0x3, 0xe2, + 0x57, 0x52, 0x0, 0xff, 0xe0, 0x90, 0xb8, 0x7, + 0xce, 0x1, 0xc7, 0x1f, 0x51, 0x5b, 0xd9, 0x2e, + 0xca, 0x86, 0x72, 0x2c, 0x5c, 0x20, 0x6, 0x14, + 0xd3, 0x0, 0xe1, 0xe4, 0x31, 0x0, 0x9, 0xb4, + 0x4d, 0x5e, 0x65, 0x74, 0xe8, 0x20, 0x11, 0x35, + 0x5a, 0x0, 0x78, 0x9a, 0x73, 0xf2, 0x9d, 0x90, + 0xc8, 0x40, 0x21, 0x22, 0x1a, 0x2c, 0x5e, 0xea, + 0x50, 0x40, 0x38, + + /* U+0074 "t" */ + 0x0, 0xf8, 0x5b, 0x3f, 0xfa, 0x50, 0x3, 0xff, + 0x90, 0x62, 0x20, 0xf, 0xfe, 0x78, 0xf1, 0x80, + 0x7f, 0xf3, 0xd8, 0xc4, 0x3, 0xff, 0x90, 0x2d, + 0x7f, 0xfa, 0x94, 0x3, 0xcd, 0x7f, 0xff, 0xad, + 0x80, 0x3f, 0xfa, 0xa2, 0xf1, 0x77, 0x4a, 0x90, + 0x7, 0x92, 0x2e, 0xff, 0x43, 0x80, 0x61, 0x34, + 0x4d, 0xa2, 0x1, 0xe2, 0x34, 0x4f, 0xc6, 0x20, + 0x1f, 0xff, 0xf0, 0xf, 0xff, 0xf8, 0x7, 0xf1, + 0x80, 0x7e, 0x30, 0xf, 0xfe, 0x40, 0x93, 0x0, + 0x79, 0xcc, 0x80, 0x3f, 0xf8, 0xef, 0xa6, 0x1, + 0xc5, 0x1d, 0x2e, 0xab, 0x3c, 0x31, 0x80, 0x7f, + 0x89, 0xe5, 0x44, 0x3, 0x8d, 0xa2, 0xaa, 0x87, + 0x8b, 0x30, 0xf, 0xf9, 0x6b, 0xed, 0xd4, 0xc8, + 0x82, 0x2, 0x22, 0x35, 0x7e, 0x0, 0x80, + + /* U+0075 "u" */ + 0x1, 0x6b, 0xff, 0xf5, 0x28, 0x7, 0xff, 0x9, + 0x27, 0xbf, 0xfb, 0x1c, 0x80, 0x3f, 0xff, 0xe0, + 0x1f, 0xff, 0xf0, 0xf, 0xff, 0xf8, 0x7, 0xff, + 0xc0, 0x4c, 0x3, 0xff, 0xa0, 0x26, 0x20, 0x1e, + 0x71, 0x10, 0x7, 0xff, 0x0, 0x44, 0x42, 0x1, + 0xff, 0xc0, 0x62, 0x10, 0xe, 0x3b, 0x71, 0x0, + 0xfc, 0x27, 0x1b, 0x48, 0x1, 0xff, 0xc1, 0x3c, + 0x71, 0x0, 0xe3, 0x9f, 0xb9, 0x88, 0xd5, 0x9f, + 0x8e, 0x62, 0x30, 0x7, 0xff, 0x5, 0x2e, 0xc, + 0x3, 0xc2, 0x8c, 0xef, 0x94, 0xc4, 0x9a, 0xbe, + 0x9c, 0x40, 0x3f, 0xf8, 0x24, 0xd9, 0xb2, 0xc8, + 0x64, 0x20, 0x1, 0x11, 0xa3, 0x4e, 0x62, 0x54, + 0x5b, 0x88, 0x3, 0xf8, + + /* U+0076 "v" */ + 0x0, 0x8e, 0x37, 0xff, 0xd2, 0x80, 0x1f, 0xfc, + 0x51, 0x6c, 0xff, 0xee, 0x94, 0x0, 0xf1, 0xda, + 0x90, 0x7, 0x3e, 0xa0, 0x7, 0xff, 0xc, 0x5f, + 0x4c, 0x3, 0xb, 0xea, 0x0, 0x7c, 0x74, 0xa4, + 0x1, 0x85, 0xf4, 0xc0, 0x3f, 0xf8, 0x49, 0xa8, + 0x1, 0x85, 0xf5, 0x0, 0x3f, 0x8a, 0xd4, 0x80, + 0x30, 0xa5, 0x98, 0x7, 0xff, 0x1, 0x7d, 0x0, + 0x30, 0xbe, 0xa0, 0x7, 0xfc, 0x74, 0xa4, 0x1, + 0x89, 0x50, 0x80, 0x3f, 0xc9, 0x8a, 0x1, 0x85, + 0xf5, 0x0, 0x3f, 0xf8, 0x25, 0x4a, 0x40, 0x18, + 0xad, 0x44, 0x3, 0xf2, 0x6b, 0x80, 0x61, 0x4d, + 0x40, 0xf, 0xfe, 0x19, 0x5a, 0x90, 0x6, 0x3b, + 0x71, 0x0, 0xf1, 0xeb, 0x88, 0x4, 0x29, 0xc8, + 0x1, 0xff, 0xc5, 0x3a, 0x52, 0x0, 0xc7, 0xae, + 0x20, 0x18, 0xed, 0x4, 0x3, 0x27, 0x20, 0x7, + 0xff, 0x1c, 0xa9, 0x48, 0x3, 0x26, 0x20, 0x4, + 0x48, 0x82, 0x0, 0xcb, 0xc8, 0x1, 0xff, 0xc9, + 0x2b, 0x52, 0x0, 0xc9, 0x88, 0x2, 0x96, 0x60, + 0x19, 0x7d, 0x0, 0x3f, 0xf9, 0x67, 0x4a, 0x40, + 0x10, 0xbe, 0x22, 0x34, 0xc0, 0x32, 0xfa, 0x80, + 0x7f, 0xf3, 0x4a, 0x94, 0x80, 0x21, 0x58, 0x94, + 0x0, 0xcb, 0xea, 0x1, 0xff, 0xcf, 0x2b, 0x52, + 0x0, 0x88, 0xcc, 0x1, 0x97, 0xd4, 0x3, 0xff, + 0xa2, 0x74, 0xa4, 0x1, 0xf9, 0x7d, 0x40, 0x3f, + 0xf8, 0x60, + + /* U+0077 "w" */ + 0x3, 0x8e, 0xff, 0xee, 0x83, 0x0, 0xff, 0xe0, + 0xb, 0x5f, 0xff, 0xad, 0x84, 0x3, 0xff, 0x80, + 0x4f, 0xbf, 0xfd, 0x8c, 0x20, 0x3, 0xc4, 0x0, + 0xe1, 0x44, 0x8, 0x7, 0xfc, 0x98, 0x80, 0x1e, + 0x4c, 0x40, 0xf, 0xfe, 0x2, 0x61, 0x0, 0x62, + 0x44, 0x8, 0x4, 0x98, 0x80, 0x1c, 0x7a, 0x80, + 0x1f, 0xe3, 0xc4, 0x0, 0xfc, 0x98, 0x60, 0x1f, + 0xe4, 0xf5, 0x0, 0xc2, 0x98, 0x40, 0x1c, 0x98, + 0x60, 0x1c, 0x98, 0x60, 0x1f, 0x89, 0x14, 0x40, + 0x6, 0xaa, 0x10, 0x0, 0xa2, 0x8, 0x3, 0xf1, + 0x1a, 0x8, 0x6, 0x5c, 0x40, 0xf, 0x12, 0x20, + 0x40, 0x30, 0xaa, 0x10, 0x7, 0x85, 0x30, 0xc0, + 0x2, 0x9d, 0x8a, 0x1, 0x16, 0x20, 0x80, 0x78, + 0x53, 0x8, 0x3, 0x1e, 0x20, 0x7, 0xe3, 0xc4, + 0x0, 0xe3, 0xc7, 0x0, 0xf2, 0xe2, 0x0, 0x49, + 0xa8, 0x83, 0x20, 0x9, 0x31, 0x0, 0x3c, 0xbe, + 0xa0, 0x18, 0x51, 0x2, 0x1, 0xfc, 0x9e, 0x80, + 0x1c, 0xb8, 0x80, 0x18, 0xf1, 0xc0, 0x22, 0xd7, + 0x2, 0xc4, 0x0, 0xc9, 0x86, 0x1, 0x8b, 0x10, + 0x40, 0x32, 0x61, 0x80, 0x7f, 0xc9, 0x86, 0x1, + 0x85, 0xc, 0x80, 0x2, 0x88, 0x20, 0x0, 0xa1, + 0x90, 0x1, 0x7d, 0x0, 0x21, 0x44, 0x10, 0x4, + 0x86, 0x40, 0x19, 0x31, 0x40, 0x3f, 0xf8, 0x2, + 0x88, 0x20, 0xc, 0x5a, 0xe0, 0x4, 0xd3, 0x0, + 0x97, 0x10, 0x2, 0x14, 0x32, 0x0, 0x8b, 0x1c, + 0x0, 0x9e, 0xa0, 0x18, 0xb1, 0x4, 0x3, 0xff, + 0x82, 0x78, 0x82, 0x1, 0x9f, 0x4c, 0xda, 0x80, + 0x11, 0xe3, 0x80, 0x71, 0x62, 0x8, 0x4, 0xb8, + 0x82, 0x6a, 0x20, 0x10, 0xa2, 0x8, 0x3, 0xff, + 0x86, 0x98, 0x80, 0x18, 0x8d, 0x12, 0x10, 0x0, + 0xa2, 0x8, 0x3, 0xc9, 0x88, 0x1, 0xa, 0x63, + 0x69, 0x80, 0x64, 0xc3, 0x0, 0xff, 0xe2, 0xa6, + 0x20, 0x6, 0x59, 0x91, 0x80, 0x49, 0xa6, 0x1, + 0xf9, 0x30, 0xc0, 0x22, 0x69, 0x40, 0xc, 0x98, + 0x80, 0x1f, 0xfc, 0x61, 0x4c, 0x20, 0x8, 0x46, + 0x0, 0x8f, 0x50, 0x3, 0xf8, 0x55, 0x8, 0x2, + 0x11, 0x80, 0x22, 0x34, 0x10, 0xf, 0xfe, 0x39, + 0x22, 0x4, 0x3, 0xe2, 0x44, 0x8, 0x7, 0xf8, + 0xf1, 0x0, 0x3f, 0xa, 0x61, 0x0, 0x7f, 0x80, + + /* U+0078 "x" */ + 0x1, 0x5b, 0xff, 0xf7, 0x4a, 0x0, 0x7f, 0xf0, + 0x9, 0xf7, 0xff, 0xba, 0x94, 0x40, 0x21, 0x59, + 0x83, 0x0, 0xc2, 0xd0, 0xe4, 0x1, 0xfc, 0xb1, + 0x24, 0x1, 0x8e, 0x20, 0xa2, 0x1, 0xc4, 0xfe, + 0xe4, 0x1, 0x8e, 0x25, 0x84, 0x3, 0x89, 0xe1, + 0x44, 0x2, 0x27, 0xf6, 0x20, 0xf, 0xe3, 0x89, + 0x61, 0x0, 0xc9, 0x10, 0x40, 0x9, 0x22, 0x48, + 0x2, 0x15, 0x98, 0x30, 0xf, 0xfe, 0xa, 0x45, + 0xa8, 0x80, 0x42, 0xd0, 0xe8, 0xf0, 0xa2, 0x1, + 0x24, 0x5a, 0x0, 0x7f, 0xf1, 0x5, 0x6e, 0x10, + 0x3, 0x1c, 0x5c, 0x18, 0x4, 0x4f, 0x2c, 0x20, + 0x1f, 0xfc, 0x71, 0x68, 0x72, 0x0, 0xfc, 0x2d, + 0x30, 0x40, 0x1f, 0xfc, 0xa3, 0xb5, 0x20, 0xf, + 0xfe, 0xa9, 0x37, 0xb9, 0x0, 0x44, 0x41, 0x0, + 0x85, 0xa6, 0xc, 0x3, 0xff, 0x8c, 0x2b, 0x30, + 0x60, 0x11, 0x3f, 0x65, 0xa8, 0x80, 0x44, 0xfe, + 0xe4, 0x1, 0xff, 0xc3, 0x48, 0xb4, 0x10, 0x9, + 0x2e, 0x4c, 0x56, 0x24, 0xc0, 0x31, 0xc7, 0x31, + 0x0, 0x7f, 0xc7, 0x12, 0xc2, 0x1, 0x13, 0xc3, + 0x8, 0x4, 0x4f, 0xee, 0x40, 0x18, 0xe6, 0x4c, + 0x20, 0x1f, 0x13, 0xfb, 0x90, 0x6, 0x48, 0x93, + 0x0, 0xf8, 0xe2, 0x54, 0x40, 0x32, 0x45, 0xa8, + 0x80, 0x42, 0xb1, 0x26, 0x1, 0x89, 0xe1, 0x44, + 0x3, 0xfc, 0x97, 0x8, 0x1, 0x85, 0x6e, 0x10, + 0x0, + + /* U+0079 "y" */ + 0x0, 0x8a, 0x37, 0xff, 0xd4, 0x80, 0x1f, 0xfc, + 0x51, 0x6c, 0xff, 0xee, 0x94, 0x0, 0xf1, 0x55, + 0xc, 0x3, 0x97, 0x94, 0x3, 0xff, 0x86, 0x2f, + 0xa6, 0x1, 0x85, 0xf5, 0x0, 0x3e, 0x26, 0xa3, + 0x0, 0xe5, 0xf4, 0x0, 0xff, 0xe1, 0x26, 0x20, + 0x6, 0x17, 0xd4, 0x0, 0xfe, 0x17, 0xa4, 0x0, + 0xe5, 0xe5, 0x0, 0xff, 0xe0, 0x27, 0xa8, 0x6, + 0x17, 0xd4, 0x0, 0xff, 0x85, 0xb9, 0x40, 0x39, + 0x7d, 0x40, 0x3f, 0xc7, 0xa8, 0x1, 0x85, 0xf5, + 0x0, 0x3f, 0xf8, 0x4b, 0xea, 0x20, 0x19, 0x7d, + 0x40, 0x3f, 0x1d, 0xa0, 0x80, 0x42, 0x9a, 0x80, + 0x1f, 0xfc, 0x45, 0xe7, 0x10, 0xc, 0xbe, 0xa0, + 0x1e, 0x2b, 0x52, 0x0, 0xc9, 0xc8, 0x1, 0xff, + 0xc6, 0x4a, 0x71, 0x0, 0xcb, 0xea, 0x1, 0x85, + 0x50, 0x80, 0x32, 0xf2, 0x0, 0x7f, 0xf2, 0xe, + 0x98, 0x80, 0x32, 0x7a, 0x0, 0x49, 0x86, 0x1, + 0x97, 0x90, 0x3, 0xff, 0x94, 0x75, 0x42, 0x0, + 0x85, 0x35, 0x1, 0x3d, 0x0, 0x32, 0xfa, 0x0, + 0x7f, 0xf3, 0x9, 0xa8, 0xc0, 0x21, 0x7c, 0x7d, + 0x40, 0xc, 0xbe, 0xa0, 0x1f, 0xfc, 0xe1, 0x6a, + 0x40, 0x8, 0x5e, 0x18, 0x40, 0x25, 0xf5, 0x0, + 0xff, 0xe8, 0xb, 0xf2, 0x0, 0x7f, 0x2f, 0xa8, + 0x7, 0xff, 0x48, 0x57, 0x94, 0x3, 0xe5, 0xf5, + 0x0, 0xff, 0xea, 0xb1, 0x88, 0x7, 0x27, 0xa8, + 0x7, 0xff, 0x55, 0x25, 0xc4, 0x3, 0x2f, 0x28, + 0x7, 0xff, 0x50, 0xe2, 0x54, 0x40, 0x21, 0x69, + 0x50, 0xf, 0xfe, 0x60, 0x9a, 0xb2, 0xb3, 0xce, + 0x6b, 0x90, 0x4, 0x29, 0x70, 0x60, 0x1f, 0xfc, + 0xd4, 0x9a, 0x9a, 0x98, 0x63, 0x10, 0x8, 0x96, + 0xe9, 0x44, 0x3, 0xff, 0x9a, 0x46, 0x24, 0x20, + 0x1, 0x23, 0x46, 0x9c, 0xda, 0x51, 0x0, 0xff, + 0xe5, 0x0, + + /* U+007A "z" */ + 0x0, 0xcd, 0x7f, 0xff, 0xfc, 0xdd, 0x83, 0x0, + 0xff, 0xea, 0x8f, 0x88, 0x7, 0x9e, 0x2e, 0xff, + 0xf8, 0x52, 0xa2, 0x1, 0xe2, 0x68, 0x72, 0x0, + 0xf0, 0x9a, 0x27, 0xff, 0x1, 0x4b, 0x54, 0x40, + 0x30, 0xb4, 0xc9, 0x0, 0x3f, 0xf9, 0x2, 0xb5, + 0x8, 0x1, 0x85, 0x6a, 0x10, 0x3, 0xff, 0x90, + 0x2b, 0x76, 0x41, 0x0, 0x85, 0x6e, 0xc8, 0x20, + 0x1f, 0xfc, 0x71, 0x4b, 0xb2, 0x88, 0x4, 0x29, + 0x76, 0x51, 0x0, 0xff, 0xe4, 0x24, 0x52, 0x88, + 0x6, 0x48, 0xa5, 0x10, 0xf, 0xfe, 0x42, 0x4c, + 0x98, 0x40, 0x32, 0x4c, 0x98, 0x40, 0x3f, 0xf9, + 0x7, 0x12, 0xc4, 0x1, 0x8e, 0x25, 0x88, 0x3, + 0xff, 0x90, 0x71, 0xce, 0x40, 0x18, 0xe3, 0x9c, + 0x80, 0x3f, 0xf9, 0x4, 0xfe, 0xe4, 0x1, 0x85, + 0x2c, 0xd9, 0x13, 0xff, 0x86, 0x62, 0x1, 0xa, + 0xcc, 0x18, 0x7, 0x85, 0x22, 0xef, 0xff, 0x8b, + 0xee, 0x20, 0x11, 0xb8, 0x7, 0xff, 0x50, + + /* U+007B "{" */ + 0x0, 0xff, 0x9, 0xbd, 0x66, 0xf7, 0xfe, 0xe8, + 0x30, 0xf, 0xe4, 0x8d, 0x85, 0x32, 0x12, 0x45, + 0x66, 0x68, 0x80, 0x7e, 0x3d, 0x71, 0x0, 0x92, + 0x72, 0xea, 0x61, 0x48, 0x3, 0xf3, 0x18, 0x80, + 0x42, 0x6a, 0x20, 0x1f, 0xfd, 0xa1, 0x0, 0xf0, + 0x80, 0x7f, 0xf1, 0x1c, 0xc4, 0x2, 0x10, 0x70, + 0xf, 0xfe, 0x20, 0x98, 0x6, 0x30, 0xf, 0xfe, + 0x20, 0xf8, 0x80, 0x70, 0x80, 0x7f, 0xf1, 0x3c, + 0x40, 0x38, 0x40, 0x3f, 0xf8, 0x22, 0xb6, 0xa4, + 0x1, 0x16, 0xb0, 0x7, 0xe1, 0x5a, 0xde, 0xe5, + 0x31, 0x0, 0x9b, 0xcb, 0x10, 0x7, 0xf1, 0xb1, + 0x8, 0x6, 0x12, 0x4d, 0x61, 0x0, 0xfe, 0x16, + 0xce, 0xda, 0x73, 0x1, 0x37, 0xa9, 0x61, 0x0, + 0xff, 0x84, 0x96, 0x3d, 0xc4, 0x2, 0x4f, 0x50, + 0xf, 0xfe, 0x18, 0xf9, 0x0, 0x63, 0x10, 0xf, + 0xfe, 0x27, 0x88, 0x7, 0xff, 0x24, 0x44, 0x60, + 0x18, 0xc4, 0x3, 0xff, 0x86, 0xe0, 0x20, 0x10, + 0x80, 0x7f, 0xf1, 0x44, 0xc0, 0x38, 0x5c, 0x3, + 0xff, 0xb6, 0xc6, 0x20, 0x10, 0x9a, 0x88, 0x7, + 0xff, 0x8, 0xf5, 0xc4, 0x2, 0x49, 0xcc, 0x54, + 0xc2, 0x90, 0x7, 0xf2, 0x46, 0xc2, 0x99, 0x9, + 0x1a, 0xb3, 0x34, 0x40, + + /* U+007C "|" */ + 0x38, 0xdf, 0xfa, 0x50, 0x3, 0xff, 0xfe, 0x1, + 0xff, 0xff, 0x0, 0xff, 0xff, 0x80, 0x7f, 0xf1, + 0xc0, + + /* U+007D "}" */ + 0x0, 0x2d, 0xff, 0xee, 0xe6, 0xdc, 0x29, 0x0, + 0x7f, 0xcd, 0xac, 0xc5, 0x30, 0x12, 0x47, 0xae, + 0x62, 0x0, 0xfe, 0x36, 0x99, 0x56, 0x6b, 0x8, + 0x4, 0x7a, 0x82, 0x1, 0xff, 0xc2, 0x3f, 0x50, + 0xc, 0xdc, 0x40, 0x1f, 0xfc, 0x33, 0x0, 0xff, + 0xe5, 0x98, 0x7, 0xbc, 0x40, 0x3f, 0xf8, 0x42, + 0xe, 0x1, 0x84, 0xc, 0x3, 0xff, 0x86, 0x20, + 0x1c, 0xe2, 0x1, 0xff, 0xc3, 0x30, 0xf, 0x9, + 0x88, 0x7, 0xff, 0x8, 0xc0, 0x3c, 0x26, 0x1, + 0xff, 0xc3, 0x13, 0x51, 0x0, 0x92, 0xa0, 0xc4, + 0x3, 0xff, 0x82, 0x97, 0xa, 0x40, 0x3, 0x7c, + 0xee, 0x64, 0x18, 0x7, 0xf8, 0x97, 0x1c, 0x80, + 0x38, 0x4c, 0x5c, 0x3, 0xf8, 0xe3, 0xa5, 0x48, + 0x5, 0x26, 0xf7, 0xa5, 0x0, 0x3f, 0xa, 0xa1, + 0x0, 0x47, 0x14, 0xc8, 0x42, 0x1, 0xfe, 0x31, + 0x0, 0xe6, 0x31, 0x0, 0xff, 0xe1, 0x18, 0x7, + 0x84, 0xc0, 0x3f, 0xf8, 0x82, 0x1, 0xce, 0x22, + 0x0, 0xff, 0xe1, 0x8, 0x38, 0x7, 0x8c, 0x3, + 0xff, 0x92, 0x3e, 0x20, 0x1f, 0xfd, 0xa3, 0xf5, + 0x0, 0xcd, 0xc4, 0x1, 0xf8, 0xda, 0x6a, 0xf3, + 0x58, 0x40, 0x23, 0xc4, 0x10, 0xf, 0xcd, 0xac, + 0xa8, 0x60, 0x24, 0x8d, 0x5c, 0xe4, 0x1, 0xf0, + + /* U+007E "~" */ + 0x0, 0xff, 0xf2, 0x1b, 0x4e, 0x77, 0xfe, 0xed, + 0xc9, 0x63, 0x10, 0xf, 0xf1, 0x19, 0x88, 0x3, + 0xf8, 0xdf, 0x31, 0x2c, 0x62, 0x1, 0x84, 0x8d, + 0xa7, 0x3f, 0x25, 0x90, 0xc8, 0x88, 0xd5, 0xf9, + 0x8d, 0xc7, 0x20, 0xe, 0x25, 0xc2, 0x0, 0x1b, + 0xdf, 0x7f, 0xdb, 0x70, 0x84, 0x2, 0x6d, 0x37, + 0x9b, 0xab, 0x95, 0x20, 0x14, 0xa5, 0x20, 0xe, + 0x26, 0xbf, 0xdd, 0xa1, 0x4, 0x2, 0x24, 0x7b, + 0xdd, 0x53, 0xa9, 0x90, 0x80, 0x4, 0xd5, 0xef, + 0xed, 0x88, 0x3, 0x0, + + /* U+00B0 "°" */ + 0x0, 0xff, 0xe0, 0x88, 0x80, 0x3f, 0xf8, 0xc4, + 0xb3, 0x9d, 0xfe, 0xee, 0x7f, 0xb6, 0xe1, 0x4, + 0x3, 0xf9, 0x27, 0x29, 0x89, 0x5e, 0x66, 0x86, + 0x14, 0x7b, 0xd7, 0x30, 0xf, 0x37, 0xb0, 0x89, + 0xb6, 0xe1, 0x9a, 0x79, 0xda, 0x40, 0x38, 0xa4, + 0x0, 0xc7, 0xcc, 0x0, 0x5c, 0x30, 0xf, 0x85, + 0xf0, 0xc0, 0xa, 0x42, 0x1, 0x17, 0x8, 0x1, + 0xb4, 0x80, 0x3f, 0x37, 0x10, 0x1, 0x88, 0x40, + 0x21, 0x7a, 0x40, 0x27, 0xe9, 0x64, 0x33, 0x23, + 0x54, 0xb0, 0x89, 0xb9, 0x0, 0x38, 0x5a, 0xad, + 0xcc, 0x9a, 0x6f, 0x31, 0x72, 0xa6, 0x91, 0xb0, + 0x80, 0x1f, 0x85, 0x23, 0x3b, 0x9b, 0x97, 0x6c, + 0xde, 0xe5, 0xb9, 0x88, 0x6, + + /* U+3001 "、" */ + 0x0, 0xf8, 0x91, 0x4c, 0x40, 0x3f, 0xf8, 0xe6, + 0xf7, 0x97, 0x59, 0x89, 0x41, 0x0, 0xff, 0xe1, + 0x9a, 0x5a, 0x8, 0x4, 0x4d, 0x79, 0x4a, 0x40, + 0x1f, 0xfc, 0x3, 0x7c, 0xc4, 0xa0, 0x80, 0x62, + 0x5a, 0xca, 0x51, 0x0, 0xff, 0xe0, 0x1b, 0x5e, + 0x52, 0x88, 0x6, 0x15, 0xac, 0x94, 0x10, 0xf, + 0xfe, 0x1, 0x2d, 0x64, 0xa0, 0x80, 0x62, 0x6b, + 0xd7, 0x20, 0xf, 0xfe, 0x9, 0x35, 0xeb, 0x98, + 0x0, 0x4d, 0xfd, 0x88, 0x3, 0xff, 0x88, 0x71, + 0xb9, 0x9a, 0xc, 0x40, 0x0, + + /* U+4E00 "一" */ + 0x0, 0xa, 0x33, 0xbf, 0xff, 0xcd, 0x4, 0x3, + 0x16, 0x44, 0x7f, 0xfc, 0xe7, 0x54, 0x3, 0xc6, + 0x1, 0xff, 0xf7, + + /* U+4E09 "三" */ + 0x0, 0xc2, 0xd9, 0xff, 0xff, 0xe7, 0xd8, 0x30, + 0xf, 0xf0, 0x80, 0x7f, 0xfd, 0x5, 0x7e, 0xef, + 0xff, 0xcf, 0x34, 0x60, 0x1f, 0xe2, 0x34, 0x4f, + 0xff, 0x41, 0x0, 0x7f, 0xff, 0xc0, 0x3f, 0xff, + 0xe0, 0x1f, 0xff, 0x41, 0x22, 0xff, 0xef, 0x8, + 0x7, 0xff, 0x24, 0xe7, 0x37, 0x7f, 0xfb, 0xb0, + 0x80, 0x1f, 0xff, 0xf0, 0xf, 0xf8, 0xe7, 0xfb, + 0xbf, 0xfb, 0xb0, 0x80, 0x1f, 0xfc, 0x91, 0x1f, + 0xff, 0x0, 0x7, 0xff, 0xfc, 0x3, 0xff, 0xfe, + 0x1, 0xff, 0xff, 0x0, 0xff, 0xf3, 0x93, 0xe7, + 0xff, 0xff, 0xbe, 0xd8, 0x40, 0x3f, 0xfe, 0xe4, + 0xdf, 0x77, 0xff, 0xef, 0x87, 0x10, + + /* U+4E0D "不" */ + 0x0, 0xe2, 0x35, 0x5f, 0xff, 0x7a, 0x10, 0x7, + 0xe1, 0x48, 0xaa, 0xff, 0xf7, 0xc2, 0x88, 0x7, + 0xff, 0xe5, 0xc4, 0x3, 0xf0, 0xb5, 0xff, 0xff, + 0xf3, 0xba, 0x94, 0x40, 0x38, 0x5a, 0xff, 0xff, + 0xf9, 0x36, 0xc2, 0x1, 0xff, 0xd6, 0x15, 0xab, + 0x51, 0x0, 0x85, 0x6a, 0x10, 0x3, 0xff, 0xd8, + 0x4d, 0x54, 0x41, 0x0, 0xc7, 0x36, 0x82, 0x1, + 0xff, 0xea, 0x14, 0x9f, 0x94, 0x0, 0xf9, 0xc4, + 0x40, 0x2, 0x32, 0x0, 0xff, 0xf2, 0x9c, 0x6d, + 0xb1, 0x0, 0x7f, 0x85, 0x63, 0x37, 0x37, 0x54, + 0xe6, 0x20, 0x1f, 0xfd, 0xc1, 0x37, 0xcc, 0x39, + 0x80, 0x62, 0x28, 0x3, 0xde, 0x1, 0x8, 0x0, + 0x96, 0x33, 0xed, 0xd0, 0x40, 0x3f, 0xfa, 0xa4, + 0xd5, 0x98, 0x83, 0x0, 0xc6, 0xf9, 0x88, 0x60, + 0xf, 0x72, 0xc6, 0x7d, 0x31, 0x80, 0x42, 0x91, + 0x7f, 0x90, 0x82, 0x1, 0xff, 0xcd, 0x14, 0x9c, + 0xd9, 0x52, 0x0, 0x85, 0x23, 0x31, 0x6, 0x20, + 0x1f, 0xfc, 0x1, 0x59, 0xcd, 0xa6, 0x20, 0x8, + 0x4d, 0xef, 0xed, 0xcc, 0x40, 0x3f, 0xf8, 0x82, + 0x6d, 0x3b, 0xd6, 0xc6, 0x1, 0x85, 0x27, 0x2d, + 0xcc, 0x3, 0xff, 0x90, 0x4b, 0x3b, 0xaa, 0x52, + 0x0, 0x85, 0x23, 0x31, 0x4c, 0x40, 0x1f, 0x84, + 0xda, 0xb7, 0xb2, 0x58, 0x80, 0x31, 0x2c, 0x5f, + 0xdb, 0x10, 0x7, 0xff, 0x3c, 0x96, 0xb3, 0xe, + 0x62, 0x1, 0x12, 0xce, 0x5b, 0x98, 0x7, 0x9f, + 0xdc, 0x80, 0x30, 0x9b, 0xd6, 0xea, 0x9d, 0x4, + 0x3, 0xff, 0xaa, 0x27, 0x19, 0x88, 0x41, 0x0, + 0x8c, 0x8a, 0x0, 0xe1, 0x49, 0xe8, 0x56, 0x9c, + 0xfc, 0x85, 0x20, 0xf, 0xfe, 0xf1, 0x3d, 0xe5, + 0x4d, 0xe4, 0xa8, 0x80, 0x7e, 0x37, 0xa9, 0x63, + 0x10, 0xf, 0xff, 0x29, 0x2b, 0x20, 0x80, 0x7f, + 0xff, 0xc0, 0x3f, 0xff, 0xe0, 0x1f, 0xff, 0xf0, + 0xf, 0xff, 0xf8, 0x7, 0xff, 0xd4, + + /* U+4E2A "个" */ + 0x0, 0xff, 0xe8, 0x8b, 0x5f, 0x7f, 0xf7, 0x52, + 0x88, 0x7, 0xff, 0xb4, 0x9a, 0xa5, 0x4, 0x3, + 0x85, 0x6b, 0x5c, 0x80, 0x3f, 0xfd, 0x26, 0xfd, + 0x28, 0x1, 0x8d, 0x10, 0x20, 0x11, 0xc7, 0xca, + 0x8, 0x7, 0xff, 0x8c, 0x9a, 0xf6, 0xc, 0x2, + 0x14, 0xad, 0xbb, 0x6c, 0x18, 0x4, 0x4d, 0x7b, + 0x8, 0x20, 0x1f, 0xfd, 0xd1, 0x5a, 0xc9, 0x41, + 0x0, 0x89, 0xaa, 0xd4, 0x40, 0x6, 0xfb, 0x4a, + 0x20, 0x11, 0xbd, 0xe4, 0xa0, 0x80, 0x7f, 0xf5, + 0xc9, 0xab, 0x29, 0x44, 0x2, 0x26, 0xac, 0x94, + 0x0, 0xf8, 0x56, 0xb2, 0x94, 0x80, 0x22, 0x6b, + 0xca, 0x62, 0x0, 0xff, 0xe8, 0xa, 0x46, 0x6c, + 0xa9, 0x0, 0x44, 0xd5, 0x92, 0xa2, 0x1, 0xff, + 0xc0, 0x25, 0xac, 0xa6, 0x20, 0x8, 0x96, 0x77, + 0x52, 0xa4, 0x1, 0xff, 0xc8, 0x14, 0x7b, 0xfb, + 0x73, 0x0, 0x84, 0xde, 0xf2, 0x54, 0x40, 0x3c, + 0x23, 0xc0, 0x1f, 0xa, 0xce, 0x62, 0x10, 0x40, + 0x22, 0x6a, 0xdd, 0x53, 0x18, 0x80, 0x7f, 0x84, + 0xda, 0x73, 0xee, 0x10, 0x40, 0x22, 0x6a, 0xcc, + 0x42, 0x8, 0x7, 0xc7, 0x3f, 0xdd, 0xb1, 0x84, + 0x3, 0xe1, 0x37, 0xbf, 0xb7, 0x31, 0x0, 0x89, + 0x67, 0x3b, 0x69, 0xd0, 0x80, 0x23, 0x8c, 0xc4, + 0xb1, 0x88, 0x0, 0x4d, 0xa7, 0x75, 0x2a, 0x40, + 0x1f, 0xfd, 0x41, 0x48, 0xcc, 0x5b, 0xa0, 0x80, + 0x62, 0x58, 0xab, 0x41, 0x3, 0x8e, 0x72, 0x2, + 0x58, 0xbf, 0xc9, 0x62, 0x0, 0xff, 0xee, 0x12, + 0x45, 0xfe, 0x4b, 0x18, 0x93, 0xec, 0xa0, 0x80, + 0x47, 0x1b, 0xfb, 0x4e, 0x82, 0x1, 0xff, 0xe4, + 0x13, 0x69, 0xce, 0xd8, 0x30, 0xf, 0xff, 0xf8, + 0x7, 0xff, 0xfc, 0x3, 0xff, 0xfe, 0x1, 0xff, + 0xff, 0x0, 0xff, 0xff, 0x80, 0x7f, 0xff, 0xc0, + 0x3f, 0xff, 0xe0, 0x1f, 0xff, 0xf0, 0xf, 0xff, + 0xf8, 0x7, 0xff, 0x90, + + /* U+4E2D "中" */ + 0x0, 0xff, 0xe7, 0x8b, 0x5f, 0xfe, 0xe9, 0x30, + 0xf, 0xff, 0xf8, 0x7, 0xff, 0xfc, 0x3, 0xff, + 0xee, 0x71, 0xbf, 0xff, 0xfc, 0xae, 0x94, 0x0, + 0xc2, 0xd9, 0xff, 0xff, 0xcb, 0xb6, 0x10, 0xc, + 0x60, 0x1f, 0xff, 0x74, 0x8c, 0xcf, 0xfe, 0x25, + 0xb9, 0x80, 0x72, 0x4e, 0x67, 0xff, 0x12, 0x50, + 0x3, 0xff, 0x8a, 0x24, 0x67, 0xff, 0xc4, 0x5e, + 0x70, 0xc, 0x24, 0xa6, 0x7f, 0xfc, 0x45, 0x21, + 0x0, 0xff, 0xff, 0x80, 0x7f, 0xff, 0xc0, 0x3f, + 0xff, 0xe0, 0x1f, 0xfd, 0xf5, 0xaf, 0xff, 0xfe, + 0x27, 0x4a, 0x0, 0x61, 0x6c, 0xff, 0xff, 0xe2, + 0x63, 0x8, 0x7, 0xff, 0xfc, 0x3, 0x24, 0x66, + 0x7f, 0xf1, 0x2d, 0xcc, 0x3, 0x96, 0x73, 0x3f, + 0xf8, 0x92, 0xa0, 0x1f, 0xe1, 0xd7, 0x55, 0xda, + 0x86, 0x7f, 0xfc, 0x45, 0xe7, 0x0, 0xc2, 0x6a, + 0x67, 0xff, 0xc4, 0x4e, 0x87, 0x7d, 0xaa, 0x20, + 0x2, 0x59, 0xaa, 0xcc, 0x60, 0x1f, 0xfd, 0xe2, + 0x47, 0x88, 0xcc, 0x60, 0x1f, 0xff, 0xf0, 0xf, + 0xff, 0xf8, 0x7, 0xff, 0xfc, 0x3, 0xff, 0xfe, + 0x1, 0xff, 0xc4, + + /* U+4E8C "二" */ + 0x0, 0xf9, 0x6b, 0xff, 0xff, 0xcb, 0x8e, 0x40, + 0x1f, 0xff, 0xf0, 0xf, 0xe7, 0xe8, 0x8f, 0xff, + 0x2d, 0x21, 0x80, 0x7f, 0xf0, 0xc9, 0x1d, 0xff, + 0xfc, 0xac, 0x62, 0x1, 0xff, 0xff, 0x0, 0xff, + 0xff, 0x80, 0x7f, 0xff, 0xc0, 0x3f, 0xff, 0xe0, + 0x1f, 0xff, 0xf0, 0xf, 0xff, 0xf8, 0x7, 0xff, + 0xfc, 0x3, 0xff, 0xfe, 0x1, 0xff, 0xff, 0x0, + 0xff, 0xe6, 0x24, 0xff, 0xff, 0xfc, 0x71, 0xc4, + 0x3, 0x18, 0x7, 0xff, 0xdd, 0xb1, 0x9b, 0xff, + 0xe3, 0x66, 0x1, 0x0, + + /* U+4EA7 "产" */ + 0x0, 0xff, 0xe9, 0x12, 0xc5, 0x5e, 0x6e, 0x39, + 0x0, 0x7f, 0xfb, 0xc8, 0x44, 0x88, 0x32, 0x38, + 0xe7, 0x20, 0xf, 0xfe, 0xb8, 0x91, 0x9f, 0xff, + 0x25, 0xf5, 0x8c, 0x3, 0x1c, 0x4b, 0xa1, 0x9f, + 0xff, 0x24, 0x80, 0x3f, 0xc2, 0xdd, 0x99, 0xff, + 0xca, 0xb7, 0x30, 0xf, 0x24, 0x5e, 0x67, 0xff, + 0x23, 0x68, 0xc0, 0x3f, 0xc2, 0xe2, 0x3f, 0xfe, + 0xa2, 0x0, 0xff, 0x85, 0xaf, 0xbb, 0xfb, 0x61, + 0xd4, 0xc1, 0x67, 0x3b, 0xbf, 0xf9, 0x14, 0xe4, + 0xae, 0xd1, 0x59, 0xfd, 0xde, 0xc8, 0x30, 0xf, + 0xfe, 0x49, 0x19, 0x29, 0xa, 0x47, 0x41, 0x80, + 0x7f, 0xf1, 0x5, 0xa1, 0x8d, 0x19, 0xef, 0x4, + 0x40, 0x1f, 0xfd, 0x21, 0x5a, 0x84, 0x0, 0x8d, + 0xfd, 0x88, 0x3, 0xff, 0x82, 0x91, 0x3, 0x0, + 0x89, 0xfa, 0xc, 0x3, 0xff, 0x92, 0x24, 0x5f, + 0xf1, 0xae, 0xa8, 0x88, 0xd5, 0xd, 0x8c, 0x8b, + 0xfc, 0x91, 0x6, 0x10, 0x0, 0xad, 0xd8, 0x48, + 0xbf, 0xe1, 0x0, 0xff, 0x24, 0x6e, 0xff, 0xf0, + 0x32, 0x54, 0x44, 0x6a, 0xf5, 0x79, 0xbb, 0xfe, + 0xb7, 0x30, 0xc, 0x2b, 0x39, 0xbb, 0xff, 0x64, + 0x20, 0x7, 0xff, 0xfc, 0x3, 0xfc, 0x71, 0xbf, + 0xff, 0xfe, 0x3e, 0x94, 0x0, 0xff, 0x18, 0x7, + 0xff, 0xfc, 0x4c, 0x3, 0xff, 0xde, 0x22, 0x0, + 0xe7, 0x31, 0x0, 0xff, 0xf7, 0x9, 0x38, 0x6, + 0x12, 0x60, 0xf, 0xff, 0x7a, 0xf1, 0x0, 0x62, + 0xf2, 0x0, 0xff, 0xf7, 0x1e, 0x20, 0x80, 0x42, + 0xaa, 0x10, 0xf, 0xff, 0x69, 0x22, 0x90, 0x4, + 0x2f, 0xa6, 0x1, 0xff, 0xec, 0x15, 0x89, 0x20, + 0xc, 0xfa, 0x80, 0x1f, 0xfe, 0xc1, 0x7e, 0x51, + 0x0, 0x8a, 0x2d, 0x0, 0x3f, 0xfd, 0xa2, 0xd7, + 0xb2, 0x86, 0xd2, 0xe4, 0x1, 0xff, 0xf1, 0x26, + 0xbc, 0x94, 0x0, 0xff, 0xf7, 0x0, + + /* U+4EE5 "以" */ + 0x0, 0xff, 0xa, 0xce, 0x66, 0xa6, 0x20, 0xf, + 0xfe, 0xa8, 0xb5, 0x65, 0xda, 0xa5, 0x8c, 0x3, + 0xff, 0x90, 0x6a, 0x67, 0x9c, 0x40, 0x3f, 0xf8, + 0x2, 0x20, 0xf, 0xfe, 0x42, 0xfa, 0x1a, 0x21, + 0x53, 0x80, 0x3f, 0xfa, 0xe2, 0x8f, 0x59, 0xdc, + 0xc8, 0x30, 0xf, 0xfe, 0x31, 0x10, 0x40, 0x33, + 0x71, 0x0, 0x7f, 0xf5, 0x85, 0xfd, 0xcc, 0x40, + 0x9f, 0x69, 0x4, 0x3, 0xff, 0x84, 0x5c, 0xc0, + 0x1c, 0x44, 0x10, 0xf, 0xfe, 0xb9, 0xc7, 0xc1, + 0x80, 0x42, 0xb5, 0x46, 0x10, 0xf, 0xfe, 0x3, + 0x99, 0x0, 0x63, 0xf5, 0x0, 0xff, 0xed, 0x13, + 0xf4, 0xa0, 0x4, 0x29, 0x34, 0xa2, 0x1, 0xfc, + 0x78, 0xa0, 0x18, 0x55, 0x42, 0x1, 0xff, 0xdc, + 0x26, 0x98, 0x30, 0xc, 0x97, 0x8, 0x1, 0xf0, + 0xaa, 0x84, 0x3, 0x2f, 0x98, 0x7, 0xff, 0x7c, + 0x9e, 0x18, 0x40, 0x21, 0x4c, 0x30, 0xf, 0x26, + 0x98, 0x6, 0x3c, 0x40, 0xf, 0xff, 0x12, 0x5d, + 0x9e, 0x73, 0xb6, 0xc, 0x3, 0x97, 0xd0, 0x3, + 0x12, 0x29, 0x0, 0x7f, 0xf8, 0xc9, 0x61, 0x8c, + 0x40, 0x3e, 0x5f, 0x50, 0xc, 0x2b, 0x64, 0x1, + 0xff, 0xef, 0x16, 0xe5, 0x0, 0xc4, 0xd6, 0x60, + 0x1f, 0xfe, 0xf3, 0x9b, 0x40, 0xc, 0x77, 0x26, + 0x1, 0xff, 0xdb, 0x13, 0x58, 0xac, 0xec, 0x71, + 0x0, 0xfe, 0x16, 0x87, 0x20, 0xc, 0x74, 0xe2, + 0x1, 0xff, 0xd5, 0x3c, 0xa8, 0xbd, 0xee, 0x65, + 0x3a, 0x98, 0x9e, 0x38, 0x80, 0x78, 0x5a, 0xa5, + 0x0, 0x3c, 0x71, 0x4c, 0x40, 0x1f, 0xfc, 0xc1, + 0x5f, 0x10, 0xc, 0x28, 0xee, 0x42, 0x10, 0xc, + 0x48, 0xf3, 0xee, 0x20, 0x18, 0xdf, 0x65, 0x0, + 0x3f, 0x85, 0x27, 0x29, 0x44, 0x3, 0xff, 0x84, + 0x26, 0xaf, 0x39, 0xdc, 0xb6, 0x20, 0xf, 0xc4, + 0x8d, 0x37, 0xbf, 0xb7, 0xc, 0x82, 0x0, 0x37, + 0xcc, 0x41, 0x80, 0x63, 0x8d, 0xeb, 0x62, 0x0, + 0x85, 0x6b, 0x25, 0x4, 0x3, 0xfe, 0x2a, 0xb8, + 0x63, 0x10, 0xe, 0x13, 0x68, 0xad, 0xed, 0xb9, + 0x64, 0x20, 0xe, 0x25, 0x9c, 0xc4, 0x18, 0x6, + 0x15, 0xad, 0x72, 0x14, 0x9f, 0x94, 0x10, 0x8, + 0x9a, 0xf6, 0xc, 0x3, 0xf8, 0xe9, 0x88, 0x4, + 0xd6, 0x2b, 0x3b, 0x99, 0x2e, 0xa4, 0x20, 0x1e, + 0x24, 0x7b, 0xed, 0xa6, 0x30, 0xc, 0x4d, 0x7f, + 0x4a, 0x20, 0x1c, 0x4d, 0x7a, 0xe4, 0x1, 0x8d, + 0xf6, 0xd8, 0x80, 0x3e, 0x39, 0xce, 0xe6, 0x53, + 0xa9, 0x88, 0x7, 0x84, 0xd6, 0x2b, 0x3b, 0x6e, + 0x10, 0x40, 0x31, 0x2c, 0x66, 0x25, 0x4, 0x3, + 0xfe, 0x38, 0xca, 0x41, 0x0, 0x85, 0x27, 0xa0, + 0xc0, 0x3c, 0x23, 0x0, 0x7f, 0xf0, 0x9b, 0x15, + 0x46, 0x20, 0x18, 0x4d, 0xab, 0x75, 0x4e, 0x62, + 0x1, 0xff, 0xc4, 0x15, 0xba, 0x62, 0x0, 0xc2, + 0x4c, 0x20, 0x1f, 0xfc, 0x91, 0x59, 0xca, 0x64, + 0x68, 0xbd, 0xec, 0x95, 0x20, 0xf, 0xfe, 0x62, + 0x4f, 0x43, 0x3d, 0xe5, 0x28, 0x80, + + /* U+4F18 "优" */ + 0x0, 0xff, 0xe3, 0x88, 0x80, 0x3f, 0xff, 0x7, + 0x19, 0xdf, 0xb9, 0x8, 0x1, 0xff, 0xc1, 0x16, + 0xbf, 0xfd, 0x8e, 0x20, 0x18, 0x96, 0x25, 0x88, + 0x3, 0xff, 0xa2, 0x94, 0xc4, 0x0, 0x27, 0xd5, + 0x0, 0xff, 0xe6, 0x93, 0xf5, 0x3b, 0x4e, 0xea, + 0x54, 0x80, 0x3f, 0xf9, 0x8b, 0xce, 0x20, 0x2, + 0x78, 0x51, 0x0, 0xff, 0xe6, 0x93, 0xee, 0x39, + 0x88, 0x13, 0x56, 0x52, 0x88, 0x7, 0xff, 0x1c, + 0x9a, 0x54, 0x40, 0x9, 0x12, 0x60, 0x1f, 0xfd, + 0x11, 0x38, 0xcd, 0x83, 0x0, 0xa, 0xdd, 0x90, + 0x3, 0xff, 0x8a, 0x97, 0x6, 0x0, 0x27, 0x85, + 0x10, 0xf, 0xfe, 0xb1, 0xbe, 0xdc, 0x42, 0xfe, + 0x90, 0x3, 0xff, 0x86, 0x2d, 0xc, 0x20, 0x1, + 0x4b, 0x30, 0x16, 0xac, 0xcf, 0xfe, 0x16, 0xda, + 0x0, 0x63, 0x9d, 0xcc, 0xff, 0x6c, 0x5d, 0xa3, + 0x73, 0x14, 0xc4, 0x1, 0xfe, 0x15, 0xa8, 0x30, + 0xe, 0x10, 0x8, 0xc5, 0xcc, 0xff, 0xf8, 0x64, + 0x1, 0xe1, 0x33, 0xff, 0xe3, 0xbf, 0x0, 0x7f, + 0xa, 0x5d, 0x90, 0x40, 0x3f, 0xc4, 0xb3, 0x55, + 0xff, 0xc1, 0x96, 0x20, 0xe, 0x47, 0xaa, 0xff, + 0xe3, 0xcd, 0x10, 0x7, 0x85, 0x6e, 0x94, 0x40, + 0x3f, 0xf8, 0x24, 0x8a, 0xbf, 0xfc, 0x14, 0xe0, + 0xe, 0x12, 0xb5, 0x5f, 0xfe, 0x3a, 0x10, 0x7, + 0x13, 0x55, 0x14, 0x40, 0x21, 0x10, 0x7, 0xff, + 0x34, 0x7c, 0xc0, 0x31, 0x83, 0x88, 0x7, 0xff, + 0x30, 0x53, 0x50, 0x2, 0x14, 0x98, 0x71, 0x0, + 0xff, 0xe6, 0x39, 0x8, 0x6, 0x26, 0xbe, 0xa5, + 0x0, 0xff, 0xe5, 0xb, 0x4c, 0x10, 0xad, 0xd3, + 0x28, 0x7, 0xff, 0x38, 0x84, 0x3, 0xff, 0xae, + 0x4f, 0x9f, 0x4a, 0x20, 0x1f, 0xfc, 0xf4, 0xf4, + 0x0, 0xff, 0xec, 0x88, 0x80, 0x3f, 0xfa, 0x27, + 0xae, 0x1, 0xff, 0xf8, 0x2b, 0x41, 0x0, 0xff, + 0xfb, 0x95, 0x29, 0x0, 0x42, 0x44, 0x10, 0xf, + 0xff, 0x78, 0xac, 0x39, 0x0, 0x44, 0xd6, 0x80, + 0x1f, 0xfc, 0x61, 0x46, 0x61, 0x88, 0x7, 0xff, + 0x58, 0x56, 0xec, 0xa0, 0x10, 0xac, 0x4a, 0x88, + 0x7, 0xff, 0x1c, 0xea, 0x73, 0xb1, 0x84, 0x3, + 0xff, 0xa2, 0x4f, 0x56, 0xa2, 0x0, 0x15, 0xbb, + 0x28, 0x80, 0x7f, 0xf2, 0xf, 0xc4, 0x3, 0xff, + 0xa6, 0x26, 0xf7, 0x90, 0x82, 0x0, 0x37, 0xdb, + 0x51, 0x0, 0xc6, 0x1, 0x9b, 0x4c, 0x44, 0x1, + 0xc2, 0x22, 0x54, 0x20, 0x9, 0x8c, 0x40, 0x3f, + 0xf9, 0x22, 0x6f, 0x7f, 0x90, 0x82, 0x2, 0x6f, + 0x7b, 0x6, 0x20, 0x18, 0xb5, 0x80, 0x31, 0xbe, + 0x77, 0x3f, 0xfb, 0xb9, 0xb0, 0x60, 0x12, 0x62, + 0x0, 0x7f, 0xf2, 0x84, 0x97, 0x5c, 0x88, 0x8f, + 0x7f, 0x90, 0x82, 0x1, 0xf0, 0xac, 0xc9, 0x4c, + 0x84, 0x3, 0xff, 0x82, 0x24, 0xb3, 0x26, 0x10, + 0xf, 0xfe, 0x9, 0xcf, 0x7f, 0xdd, 0x6, 0x2, + 0x4d, 0x3b, 0xab, 0x84, 0x10, 0xf, 0xfe, 0x9, + 0x35, 0x66, 0xf7, 0xff, 0xff, 0x7, 0xb6, 0x98, + 0x80, 0x30, + + /* U+4F3A "伺" */ + 0x0, 0xff, 0xff, 0x80, 0x7f, 0x85, 0xb3, 0xfb, + 0x2d, 0xcc, 0x3, 0xff, 0xde, 0x53, 0x66, 0x2, + 0x60, 0x2f, 0x1b, 0xff, 0xff, 0xda, 0xe9, 0x40, + 0xf, 0xfe, 0x1a, 0x5b, 0x10, 0x0, 0x5b, 0xd9, + 0xc0, 0x3f, 0xfb, 0x82, 0x1, 0xff, 0xc3, 0x27, + 0x86, 0x10, 0x1, 0x35, 0xa0, 0x1c, 0x6f, 0xff, + 0xff, 0x52, 0xd4, 0x3, 0xff, 0x8e, 0xb1, 0x26, + 0x1, 0x25, 0xc9, 0x0, 0x7f, 0xf6, 0x8c, 0x40, + 0x3f, 0xf8, 0x89, 0x30, 0xa2, 0x1, 0x2f, 0x30, + 0x80, 0xe, 0x37, 0xbb, 0xff, 0xa1, 0x4a, 0x1, + 0xff, 0xc8, 0x49, 0xa6, 0x20, 0xc, 0x26, 0xc0, + 0x1c, 0x26, 0x23, 0xff, 0xd1, 0x30, 0xf, 0xfe, + 0x28, 0xad, 0x51, 0x84, 0x3, 0xff, 0x82, 0x73, + 0xdf, 0xff, 0xfd, 0xb, 0x60, 0xf, 0xfe, 0x19, + 0xc6, 0xd2, 0x88, 0x7, 0xff, 0xc8, 0x91, 0x4c, + 0x2, 0x15, 0x75, 0x10, 0xf, 0xfe, 0xa, 0xd6, + 0xef, 0xff, 0x2a, 0xd8, 0x80, 0x3f, 0xf8, 0xa4, + 0xf2, 0xc2, 0x4f, 0xb5, 0x64, 0x60, 0x1f, 0xfc, + 0x13, 0x12, 0x2f, 0xfe, 0x53, 0x8, 0x7, 0xff, + 0x21, 0x23, 0xf2, 0xc, 0x3, 0xff, 0x96, 0xb5, + 0xff, 0xfe, 0xb6, 0x10, 0xf, 0xfe, 0x70, 0x8c, + 0x1, 0xff, 0xce, 0x10, 0xf, 0xf3, 0x88, 0x7, + 0xff, 0xfc, 0x3, 0xff, 0xfe, 0x1, 0xff, 0xdf, + 0x5a, 0xdd, 0xff, 0x98, 0x40, 0x3f, 0xfd, 0x62, + 0x45, 0xfe, 0x11, 0x0, 0x7f, 0xfa, 0xd6, 0xbf, + 0xff, 0xf8, 0x9a, 0xe4, 0x1, 0xff, 0xde, 0x2c, + 0x55, 0xda, 0xc0, 0x1f, 0xff, 0x14, 0x7a, 0xac, + 0xe6, 0x1, 0xff, 0xc1, 0x13, 0x3f, 0x11, 0x46, + 0x72, 0x88, 0x4, 0x20, 0xe0, 0x1f, 0xfe, 0x42, + 0xad, 0xcc, 0xdb, 0xb6, 0x62, 0xc, 0x3, 0x2f, + 0x90, 0x7, 0xff, 0x90, 0xe9, 0xc4, 0x3, 0xe1, + 0x23, 0x45, 0x8b, 0xa6, 0x10, 0xf, 0xf8, 0xe3, + 0x7f, 0xee, 0x93, 0x0, 0xff, 0xe8, 0x9c, 0xf7, + 0xff, 0xdd, 0xb9, 0x74, 0xe8, 0x20, 0x10, + + /* U+4F4D "位" */ + 0x0, 0xff, 0xe3, 0x9, 0x10, 0x40, 0x3f, 0xfe, + 0xe7, 0x19, 0xbd, 0xfb, 0x28, 0x1, 0xff, 0xc3, + 0x5a, 0xff, 0xdd, 0x6, 0x1, 0xff, 0xd9, 0x15, + 0x96, 0x10, 0x0, 0xbe, 0x20, 0x7, 0xff, 0xc0, + 0x9a, 0x54, 0x2, 0x29, 0x85, 0x0, 0xff, 0xf7, + 0x8b, 0x4c, 0x18, 0x4, 0xb0, 0xc4, 0x1, 0xff, + 0xef, 0x4b, 0x84, 0x0, 0x89, 0xe5, 0x44, 0xe3, + 0x37, 0x7f, 0xf8, 0x76, 0xa0, 0x18, 0x5b, 0x77, + 0xff, 0x8b, 0x4c, 0x40, 0x1f, 0xf0, 0xa4, 0xd2, + 0x88, 0x4, 0x4b, 0x66, 0x0, 0x71, 0x32, 0x2f, + 0xfe, 0x18, 0x80, 0x78, 0x44, 0x45, 0xff, 0xc4, + 0x61, 0x0, 0xff, 0xa, 0xdd, 0x30, 0x80, 0x7c, + 0x20, 0x12, 0xdd, 0xff, 0xf7, 0xbd, 0x48, 0x3, + 0xe3, 0x7d, 0xa5, 0x10, 0xf, 0xfe, 0x8, 0x92, + 0x27, 0x95, 0x9c, 0x1d, 0x51, 0x3f, 0xf8, 0xae, + 0x24, 0xe, 0xca, 0x89, 0xc6, 0x40, 0x1c, 0x4d, + 0x7b, 0x6, 0x1, 0x8, 0xc0, 0x1f, 0xfc, 0x45, + 0xbe, 0xdc, 0xb8, 0x71, 0x0, 0xff, 0xe1, 0x9d, + 0x5c, 0xde, 0x6e, 0x41, 0x80, 0x7f, 0x87, 0x98, + 0x40, 0x22, 0x7d, 0xa7, 0x10, 0xf, 0xfe, 0x1b, + 0xe1, 0x0, 0x49, 0x8a, 0x1, 0xff, 0xc2, 0x15, + 0x50, 0x80, 0x42, 0x98, 0x60, 0x1f, 0xe3, 0x89, + 0x62, 0x49, 0xf8, 0x37, 0x0, 0xff, 0xe2, 0x91, + 0xa0, 0x80, 0x4f, 0x86, 0x1, 0xff, 0xc1, 0x5f, + 0x30, 0xc, 0xb8, 0x80, 0x1f, 0xfc, 0x14, 0x9d, + 0xb6, 0x20, 0xf, 0xfe, 0x4a, 0xfa, 0x80, 0x44, + 0x8a, 0x20, 0x1f, 0xf1, 0x62, 0x0, 0x63, 0xc4, + 0x0, 0xff, 0xee, 0x8a, 0x99, 0x0, 0x47, 0x88, + 0x1, 0xfe, 0x14, 0x32, 0x0, 0x89, 0x10, 0x20, + 0x1f, 0xfd, 0xe3, 0xd7, 0x0, 0xce, 0x44, 0x0, + 0xfe, 0x5c, 0x40, 0x8, 0x53, 0xc, 0x3, 0xff, + 0xc0, 0xc4, 0x40, 0x8, 0xb5, 0xc0, 0x3f, 0x1e, + 0x20, 0x6, 0x4c, 0x40, 0xf, 0xff, 0x9, 0x73, + 0x0, 0x66, 0x22, 0x0, 0x78, 0x91, 0x2, 0x1, + 0x27, 0xa8, 0x7, 0xff, 0x88, 0x4c, 0x40, 0x30, + 0xf8, 0x80, 0x70, 0xa6, 0x18, 0x4, 0x9a, 0x80, + 0x1f, 0xfe, 0x41, 0x23, 0x32, 0x2a, 0xb0, 0x80, + 0x30, 0xa6, 0xa0, 0x4, 0x7a, 0xe2, 0x1, 0xff, + 0xd9, 0x12, 0x2f, 0xf3, 0x57, 0x72, 0x62, 0x98, + 0xc8, 0xb3, 0xf2, 0x0, 0x44, 0x84, 0x64, 0x5f, + 0xfc, 0x1, 0x0, 0xff, 0xe6, 0x13, 0x7e, 0xef, + 0xff, 0x2a, 0x50, 0x3, 0x13, 0xde, 0xef, 0xff, + 0x6, 0xd0, 0x3, 0xff, 0x9a, 0x20, 0x1f, 0xff, + 0x92, 0x7c, 0xff, 0xff, 0xf0, 0x52, 0x0, 0x0, + + /* U+4F53 "体" */ + 0x0, 0xff, 0xe2, 0x24, 0x5d, 0x4b, 0xa9, 0x88, + 0x7, 0xff, 0xc, 0x5a, 0xb7, 0x75, 0x28, 0x7, + 0xff, 0x64, 0x5b, 0xdd, 0x15, 0xa3, 0xd8, 0x40, + 0x3f, 0xf8, 0x82, 0xc4, 0x58, 0x4c, 0x3, 0xff, + 0xb0, 0x4d, 0x68, 0x1, 0xb, 0x4a, 0x80, 0x7f, + 0xfc, 0x12, 0xe4, 0x80, 0x22, 0x9b, 0x30, 0xf, + 0xff, 0x82, 0xfb, 0x8, 0x4, 0x96, 0xc6, 0x48, + 0xab, 0xff, 0xc4, 0x7d, 0x10, 0xc, 0xde, 0xab, + 0xff, 0xc6, 0x43, 0x10, 0xf, 0xf8, 0x9e, 0x50, + 0x3, 0x2f, 0x30, 0x95, 0x57, 0xff, 0x1a, 0x54, + 0x80, 0x31, 0x35, 0x57, 0xff, 0x20, 0x80, 0x3f, + 0x89, 0xba, 0xc, 0x3, 0x9, 0xb0, 0x0, 0x7d, + 0x4c, 0xff, 0xf8, 0x24, 0x20, 0x1f, 0xfc, 0x1, + 0x23, 0x3f, 0xfe, 0x12, 0xf0, 0x7, 0xe1, 0x69, + 0x91, 0x80, 0x7f, 0xc4, 0xf7, 0x99, 0xff, 0xc0, + 0x84, 0x0, 0xff, 0xe1, 0x24, 0x66, 0x7f, 0xf0, + 0x6d, 0xcc, 0x3, 0x8d, 0xf6, 0x50, 0x3, 0xff, + 0x9c, 0x2b, 0xec, 0x20, 0x1f, 0xfc, 0x1, 0x6f, + 0x51, 0x0, 0xff, 0xe2, 0x8b, 0x44, 0xc, 0x2, + 0x12, 0x20, 0x80, 0x7f, 0xf2, 0x9, 0xa5, 0x0, + 0x4, 0xaa, 0x30, 0xc, 0x8e, 0xe3, 0x0, 0x24, + 0xb1, 0x0, 0x7f, 0xf1, 0x5, 0xbd, 0x84, 0x9, + 0xaa, 0x54, 0x3, 0xff, 0x90, 0x91, 0x26, 0x0, + 0x3b, 0x9d, 0x0, 0xf7, 0x54, 0xa8, 0x0, 0xe6, + 0x10, 0x3, 0xff, 0x8a, 0x91, 0x57, 0xf2, 0x8e, + 0x1, 0xff, 0xc7, 0x38, 0x95, 0x10, 0x15, 0x96, + 0x20, 0xf, 0xc4, 0xb2, 0xe4, 0x2, 0xb3, 0x6, + 0x1, 0xff, 0xc4, 0x14, 0x41, 0x0, 0x7f, 0xf2, + 0x9, 0xbd, 0xc8, 0x0, 0x73, 0xa, 0x1, 0xff, + 0xc0, 0x39, 0xb3, 0x0, 0x13, 0xfb, 0x10, 0x7, + 0xff, 0x60, 0x9f, 0xa4, 0xc0, 0x2, 0xd0, 0xe4, + 0x1, 0xff, 0xc2, 0x16, 0x85, 0x10, 0x1, 0xcf, + 0x39, 0x0, 0x7f, 0xf5, 0xe, 0x3e, 0xc, 0x0, + 0x29, 0x70, 0x80, 0x1f, 0xfc, 0x64, 0x88, 0x18, + 0x4, 0x71, 0xf0, 0x60, 0x1f, 0xfc, 0xf2, 0x6b, + 0xd7, 0x20, 0x0, 0xa4, 0xc3, 0x99, 0x17, 0x2f, + 0x88, 0x6, 0x71, 0x32, 0x2e, 0x4, 0x87, 0x20, + 0x8, 0x9f, 0x6d, 0x88, 0x3, 0xff, 0x92, 0xcb, + 0x59, 0x28, 0x20, 0x1, 0x5b, 0xcc, 0xb7, 0x7e, + 0xb7, 0x20, 0xc, 0x71, 0x9b, 0xbf, 0x50, 0xd4, + 0x18, 0x4, 0x29, 0x39, 0x6, 0x1, 0xff, 0xc7, + 0x15, 0x96, 0x30, 0x1, 0xc6, 0x52, 0x91, 0x7f, + 0x84, 0x40, 0x1e, 0x12, 0x2f, 0xe1, 0x47, 0xdb, + 0x62, 0x3, 0x7d, 0x83, 0x0, 0xff, 0xe3, 0xb8, + 0x1c, 0x6e, 0xe7, 0x20, 0x2, 0xce, 0xef, 0xef, + 0x93, 0x0, 0xc9, 0x1b, 0xbf, 0xb2, 0xc, 0x5, + 0x27, 0x3b, 0x60, 0xc0, 0x3f, 0xf9, 0xa2, 0x44, + 0x10, 0xf, 0xfe, 0xd0, 0x8c, 0x1, 0xff, 0xff, + 0x0, 0xff, 0xef, 0x8b, 0x88, 0xf1, 0x80, 0x7f, + 0xf2, 0xc0, + + /* U+4F7F "使" */ + 0x0, 0xff, 0xe3, 0x9, 0x19, 0x0, 0x7f, 0xf2, + 0x4, 0x8b, 0x84, 0x3, 0xff, 0xb8, 0x91, 0x98, + 0xdf, 0xe9, 0x51, 0x0, 0xff, 0xe1, 0x14, 0xfe, + 0xee, 0xb5, 0x0, 0xff, 0xec, 0x8a, 0xfb, 0x8, + 0x0, 0x53, 0x54, 0x40, 0x3f, 0xfd, 0xe7, 0x30, + 0x80, 0x11, 0xb9, 0xfe, 0xef, 0xff, 0x13, 0x18, + 0x80, 0x32, 0xde, 0xef, 0xff, 0x1a, 0x50, 0x3, + 0xff, 0x84, 0x4d, 0xee, 0x40, 0x1, 0x58, 0xae, + 0x62, 0x2f, 0xfe, 0x20, 0x88, 0x3, 0xc2, 0x45, + 0xff, 0xc6, 0x30, 0xf, 0xfe, 0x8, 0xac, 0xc1, + 0x80, 0x47, 0x30, 0x86, 0xdf, 0xbb, 0xff, 0xc4, + 0xa6, 0x20, 0xc, 0x91, 0x9b, 0xbf, 0xfc, 0x5b, + 0x40, 0xf, 0xf0, 0xb5, 0x5a, 0x8, 0x4, 0x48, + 0x82, 0x0, 0x9, 0x17, 0xff, 0x15, 0xc4, 0x3, + 0x84, 0x8c, 0x8b, 0xff, 0x8a, 0x20, 0x1f, 0xc4, + 0xfb, 0x28, 0x20, 0x1f, 0x8, 0x6, 0x26, 0xab, + 0xbf, 0xfe, 0x17, 0x31, 0x0, 0x64, 0x8c, 0xbb, + 0xff, 0xe1, 0xb9, 0x80, 0x7c, 0x29, 0x3f, 0x6, + 0x1, 0xff, 0xc3, 0x1e, 0x44, 0xff, 0xe1, 0x98, + 0x80, 0x70, 0x91, 0xa2, 0x7f, 0xf0, 0xf9, 0xc0, + 0x38, 0xe3, 0x2d, 0x88, 0x2, 0x23, 0x20, 0xf, + 0xfe, 0x29, 0x3e, 0x77, 0x7e, 0xc7, 0x20, 0xc, + 0x93, 0xdd, 0xfd, 0x8e, 0x40, 0x1f, 0xf1, 0x73, + 0x0, 0x42, 0x93, 0xf0, 0x82, 0x1, 0xff, 0xc4, + 0x1f, 0x11, 0xff, 0x0, 0x78, 0x4c, 0x47, 0xfc, + 0x1, 0xff, 0xc1, 0x16, 0x87, 0x46, 0xaa, 0x31, + 0x38, 0x7, 0xff, 0xcc, 0xe2, 0xe5, 0x4, 0x3, + 0xff, 0x92, 0x73, 0xf9, 0x9f, 0xbd, 0x88, 0x3, + 0x24, 0x66, 0x7f, 0x7b, 0x10, 0x7, 0xff, 0x74, + 0x48, 0xcf, 0xf1, 0x8, 0x7, 0x9, 0x19, 0xff, + 0x10, 0x80, 0x7f, 0xf5, 0xce, 0x72, 0xea, 0x26, + 0xfb, 0xff, 0xed, 0x83, 0x0, 0xc7, 0x1b, 0xff, + 0xff, 0xc4, 0x94, 0x0, 0xff, 0xe8, 0xad, 0xd5, + 0x22, 0x6a, 0x8a, 0x20, 0x1c, 0xda, 0x60, 0x10, + 0xa9, 0x90, 0x7, 0xff, 0x8d, 0x27, 0x58, 0x80, + 0x52, 0xb2, 0x54, 0x44, 0xbc, 0xa0, 0x19, 0x31, + 0x0, 0x3f, 0xfc, 0xc7, 0x3f, 0x28, 0x20, 0x4d, + 0x5f, 0xeb, 0x50, 0x8, 0x5e, 0x54, 0x3, 0xff, + 0xd2, 0x4d, 0x79, 0x28, 0x20, 0x23, 0x0, 0x42, + 0xbc, 0x22, 0x0, 0xff, 0xf4, 0x89, 0xb5, 0xd9, + 0x4, 0x3, 0xe1, 0x49, 0xde, 0xe6, 0x54, 0x32, + 0x10, 0x7, 0xff, 0x6c, 0x91, 0x5e, 0x6f, 0x7f, + 0x25, 0x88, 0x2, 0x36, 0xab, 0xa8, 0x63, 0x10, + 0x0, 0x9a, 0xbc, 0xde, 0xff, 0x6e, 0x5d, 0x52, + 0x61, 0xd9, 0x50, 0xc4, 0x3, 0xff, 0x92, 0x24, + 0xd3, 0x54, 0x86, 0x42, 0x10, 0x0, 0xa3, 0xd6, + 0xe4, 0xaa, 0x2b, 0xce, 0x77, 0x32, 0xa1, 0x4c, + 0x40, 0x21, 0x23, 0x45, 0x53, 0x3c, 0x4d, 0x42, + 0x18, 0x7, 0xff, 0x24, 0x49, 0xaa, 0xd4, 0xd1, + 0xa2, 0xb7, 0xb9, 0x70, 0xa4, 0x1, 0xfc, 0x26, + 0xaf, 0x59, 0xdf, 0xed, 0xcb, 0xa9, 0x76, 0x54, + 0x23, 0x8f, 0x72, 0x0, 0x0, + + /* U+4F9B "供" */ + 0x0, 0xff, 0xe3, 0x8, 0xc0, 0x1f, 0xfc, 0x1, + 0x1f, 0x0, 0x7f, 0xf0, 0x44, 0x8b, 0x84, 0x3, + 0xff, 0xa2, 0x2d, 0x5d, 0xcf, 0xdb, 0x62, 0x0, + 0xf2, 0x5f, 0x76, 0xc8, 0x30, 0xf, 0xf2, 0xde, + 0xee, 0xf9, 0x20, 0xf, 0xfe, 0x79, 0x35, 0x20, + 0x6, 0x35, 0x20, 0xf, 0xff, 0x82, 0x5c, 0x98, + 0x4, 0x97, 0x26, 0x1, 0xff, 0xef, 0x27, 0x86, + 0x10, 0x0, 0xb7, 0xb0, 0x80, 0x7f, 0xfb, 0x85, + 0x62, 0x4c, 0x2, 0x29, 0xb4, 0x0, 0x9, 0x17, + 0xe1, 0x0, 0xc6, 0x2c, 0x45, 0xff, 0x8, 0x7, + 0xb, 0x91, 0x7e, 0x10, 0xf, 0xf8, 0x52, 0xec, + 0xa2, 0x1, 0x25, 0xb1, 0x0, 0xa, 0x7f, 0x77, + 0xd2, 0x80, 0x18, 0x5a, 0xb7, 0x7f, 0xd0, 0x80, + 0x18, 0x9a, 0xb7, 0x7e, 0xe6, 0x10, 0xf, 0xc2, + 0x97, 0x4a, 0x20, 0x1c, 0x24, 0x20, 0x1f, 0xfe, + 0x37, 0x10, 0xf, 0x89, 0xaa, 0x8a, 0x20, 0x1f, + 0xfc, 0x12, 0x8d, 0xff, 0xf5, 0xa8, 0x6, 0x27, + 0xcf, 0xff, 0xf5, 0x28, 0x6, 0x27, 0xdf, 0xff, + 0xad, 0x84, 0x2, 0x14, 0x9f, 0x94, 0x10, 0xf, + 0xff, 0xa9, 0x99, 0x8, 0x2, 0x15, 0x75, 0x10, + 0xf, 0xff, 0x81, 0x3c, 0xb1, 0x1c, 0x65, 0x59, + 0x18, 0x7, 0xff, 0xc9, 0x27, 0x71, 0xc8, 0x3, + 0xff, 0xfe, 0x1, 0xfc, 0x2d, 0x7d, 0xdf, 0xad, + 0x40, 0x31, 0x3e, 0x77, 0x7f, 0xa9, 0x40, 0x31, + 0x3e, 0x77, 0x7e, 0xa5, 0x0, 0xff, 0xe6, 0xb8, + 0x8f, 0xe0, 0xf, 0xe1, 0x1f, 0xf0, 0x7, 0xe1, + 0x1f, 0xe0, 0xf, 0xfe, 0x68, 0xbf, 0xdd, 0xff, + 0xf8, 0x21, 0x0, 0x3f, 0xf9, 0x82, 0x68, 0x9f, + 0xcc, 0x2, 0xe, 0xa8, 0x9f, 0xfc, 0x25, 0x70, + 0x75, 0x44, 0xff, 0x10, 0x80, 0x7f, 0xf5, 0x49, + 0xfa, 0xea, 0xf3, 0xad, 0x84, 0x3, 0xf1, 0x3e, + 0x7e, 0x5e, 0x6c, 0x18, 0x7, 0xff, 0x74, 0xe3, + 0xe0, 0xc0, 0x23, 0x89, 0x61, 0x0, 0xfc, 0x4d, + 0x28, 0x20, 0x3, 0x7d, 0xb6, 0x20, 0xf, 0xfe, + 0xb8, 0xad, 0x73, 0x90, 0x4, 0x73, 0xce, 0x40, + 0x1f, 0xf0, 0xad, 0x6c, 0x18, 0x0, 0x52, 0x7e, + 0x50, 0x3, 0xff, 0xa4, 0x4d, 0x5f, 0x4a, 0x40, + 0x1, 0x4a, 0xe6, 0x20, 0xf, 0xfe, 0x21, 0xbe, + 0xd2, 0x8, 0x0, 0x9a, 0xa8, 0x82, 0x1, 0xff, + 0xcd, 0x27, 0xe9, 0x51, 0x0, 0xa, 0x4e, 0x5a, + 0x90, 0x7, 0xff, 0x20, 0x56, 0xad, 0x44, 0x0, + 0x2b, 0x50, 0x80, 0x1f, 0xfc, 0xc2, 0x7d, 0xc8, + 0x45, 0x8d, 0xb6, 0x20, 0xf, 0xfe, 0x68, 0xad, + 0xd9, 0x4d, 0x67, 0x61, 0x0, 0x3f, 0xf8, 0x27, + 0x1b, 0xff, 0xa9, 0x0, 0x30, 0x9b, 0xdd, 0x39, + 0x80, 0x7f, 0xf4, 0x85, 0x6b, 0x29, 0x8c, 0x40, + 0x30, + + /* U+4FBF "便" */ + 0x0, 0xff, 0xff, 0x80, 0x7f, 0xf0, 0x4e, 0x37, + 0xfb, 0x2d, 0xcc, 0x3, 0xff, 0xe4, 0x92, 0xc4, + 0x2, 0x61, 0xb3, 0xbd, 0xdf, 0xfd, 0xd9, 0x50, + 0xf, 0xfe, 0x20, 0xb7, 0xa8, 0x80, 0x4b, 0xdc, + 0x33, 0x8, 0xff, 0xf7, 0x4c, 0x3, 0xff, 0x88, + 0x4d, 0x48, 0x1, 0xb, 0x4a, 0xa4, 0xf7, 0xff, + 0xff, 0xf, 0xa0, 0xc0, 0x31, 0xc6, 0xff, 0xff, + 0xf1, 0x29, 0x40, 0x3f, 0xf8, 0x47, 0x72, 0x60, + 0x11, 0x4d, 0x98, 0x7, 0xff, 0xbc, 0x5a, 0x18, + 0x40, 0x24, 0xb6, 0x20, 0x8, 0x5a, 0xff, 0xff, + 0xf8, 0x5d, 0x6, 0x1, 0x8e, 0x37, 0xff, 0xff, + 0x85, 0x48, 0x1, 0xff, 0xc0, 0x15, 0xb8, 0x40, + 0xc, 0x24, 0xa2, 0x1, 0xff, 0x12, 0x33, 0x7e, + 0x53, 0x10, 0xc, 0x26, 0xac, 0xdf, 0x21, 0x0, + 0x7f, 0xf1, 0x45, 0x22, 0xd4, 0x40, 0x3f, 0xf9, + 0xf, 0xf3, 0x3f, 0xae, 0x94, 0x3, 0x15, 0xc4, + 0xcf, 0xe5, 0x20, 0xf, 0xfe, 0x10, 0xad, 0x51, + 0x84, 0x3, 0xff, 0x96, 0x20, 0x1f, 0xc2, 0xe0, + 0x1f, 0xfc, 0x21, 0x0, 0xff, 0xe1, 0x9c, 0x5a, + 0x8, 0x4, 0x22, 0x0, 0xff, 0xe3, 0xad, 0x7f, + 0xfe, 0xe8, 0x30, 0xc, 0x71, 0xbf, 0xff, 0x63, + 0x90, 0x7, 0xff, 0x4, 0xe2, 0x8, 0x2, 0xb5, + 0x46, 0x20, 0xf, 0xfe, 0x31, 0x2b, 0xbf, 0xe6, + 0x41, 0x0, 0xc2, 0x6c, 0xef, 0xf3, 0x18, 0x80, + 0x7f, 0xf0, 0x85, 0xa7, 0x72, 0x95, 0x80, 0x3f, + 0xf9, 0xf, 0xd1, 0x1f, 0xda, 0xa0, 0x18, 0xae, + 0xd1, 0x1f, 0x5a, 0x18, 0x7, 0xff, 0x10, 0x8a, + 0x0, 0xff, 0xe5, 0xbc, 0x55, 0x7e, 0xba, 0x50, + 0xc, 0x57, 0x35, 0x5f, 0x4a, 0x90, 0x7, 0xff, + 0x78, 0x8d, 0x57, 0xf8, 0xc4, 0x3, 0x9, 0xa2, + 0xaf, 0xc8, 0x40, 0x1f, 0xfd, 0x81, 0x69, 0xba, + 0xbd, 0xef, 0xff, 0xdb, 0x6, 0x1, 0x8e, 0x37, + 0xff, 0xff, 0x87, 0x48, 0x1, 0xff, 0xd0, 0x28, + 0xdd, 0x5d, 0x5f, 0xc2, 0x8, 0x7, 0xa, 0x61, + 0x80, 0x44, 0x8a, 0x40, 0x1f, 0xfe, 0x12, 0x8e, + 0x83, 0x0, 0x13, 0x5f, 0xdb, 0x99, 0x25, 0xc2, + 0x0, 0x47, 0x54, 0x20, 0xf, 0xff, 0x21, 0xbe, + 0xe4, 0x18, 0x80, 0xa4, 0x66, 0xda, 0x88, 0x0, + 0x9f, 0xdc, 0x80, 0x3f, 0xfc, 0xe2, 0x6f, 0xd6, + 0xa2, 0x1, 0xfc, 0x4d, 0xf7, 0x30, 0xca, 0x64, + 0x20, 0x1f, 0xfd, 0xc1, 0x24, 0x57, 0x9b, 0xed, + 0xa5, 0x10, 0x8, 0x4c, 0xc4, 0x20, 0x1, 0x34, + 0x67, 0x9a, 0xcd, 0xef, 0xed, 0xcb, 0xaa, 0x4c, + 0xa1, 0xdc, 0xca, 0x84, 0x20, 0x1f, 0xfc, 0x77, + 0x16, 0xbe, 0xdb, 0xa8, 0x64, 0x10, 0x0, 0x9b, + 0x56, 0xf6, 0x63, 0x7b, 0x9b, 0x72, 0xea, 0x64, + 0x1, 0xc2, 0x46, 0x8a, 0xa6, 0x63, 0xc4, 0x26, + 0x46, 0x2, 0x1, 0xff, 0xc7, 0x71, 0x69, 0x92, + 0x8, 0x8d, 0xa2, 0xb3, 0xb9, 0x92, 0xa4, 0x1, + 0xc2, 0x48, 0xd1, 0x59, 0xbf, 0xdb, 0x97, 0x54, + 0x98, 0x76, 0x55, 0x21, 0xa4, 0x7b, 0x90, 0x7, + 0xff, 0x0, 0xa3, 0x7f, 0xee, 0x93, 0x0, 0x13, + 0x5f, 0x73, 0x25, 0xd4, 0xc4, 0x3, 0xff, 0x8e, + 0x24, 0x68, 0xaa, 0x67, 0x89, 0xaa, 0x5e, 0x5b, + 0x98, 0x6, + + /* U+4FDD "保" */ + 0x0, 0xff, 0xff, 0x80, 0x7f, 0xf0, 0x85, 0xaf, + 0xb6, 0xe9, 0xd0, 0x40, 0x3f, 0xfe, 0x25, 0x36, + 0x82, 0x48, 0xfe, 0xc0, 0xd7, 0xff, 0xff, 0xd7, + 0xa5, 0x0, 0xff, 0xe4, 0xa5, 0xb1, 0x0, 0x4b, + 0x12, 0x42, 0x1, 0xfc, 0x23, 0xff, 0xc9, 0x0, + 0xff, 0xe8, 0x13, 0xcb, 0x8, 0x0, 0x9e, 0x54, + 0x40, 0x3f, 0x2d, 0x7f, 0x77, 0xff, 0x27, 0x1c, + 0x40, 0x3f, 0xf9, 0x62, 0xd3, 0x4, 0x1, 0x25, + 0xc9, 0x80, 0x7f, 0xfb, 0x85, 0x6a, 0x10, 0x2, + 0x16, 0xf6, 0x10, 0xf, 0xff, 0x69, 0x35, 0x51, + 0x4, 0x3, 0x18, 0xb0, 0x7, 0xff, 0x65, 0xc4, + 0x3, 0xff, 0x8c, 0x71, 0xd2, 0x80, 0x1f, 0xfc, + 0xb5, 0xaf, 0xff, 0xfe, 0x55, 0xb0, 0x80, 0x7f, + 0xf0, 0x89, 0xaf, 0x5c, 0xc0, 0x3f, 0xfe, 0xa5, + 0x56, 0x82, 0x1, 0x1c, 0x41, 0x44, 0x3, 0xff, + 0x82, 0xd7, 0xff, 0xff, 0xc0, 0xe8, 0x30, 0xc, + 0x73, 0xdf, 0xff, 0xfc, 0x1a, 0x50, 0xf, 0x8a, + 0x39, 0xcc, 0xd1, 0x98, 0x74, 0x30, 0xf, 0xff, + 0x91, 0xc6, 0x61, 0xcc, 0x3, 0xff, 0x80, 0x2b, + 0x39, 0x9f, 0xfc, 0x69, 0x30, 0xc, 0x71, 0x99, + 0xff, 0xc5, 0xb7, 0x30, 0xf, 0xfe, 0x61, 0x91, + 0x9f, 0xff, 0x14, 0x84, 0x3, 0xc2, 0x46, 0x7f, + 0xfc, 0x45, 0xe0, 0xf, 0xfe, 0x60, 0xbc, 0xe6, + 0x7f, 0xf0, 0x2e, 0x10, 0x40, 0x3f, 0xf8, 0x2, + 0x93, 0x99, 0xff, 0xc1, 0x83, 0x0, 0xff, 0xe6, + 0x9, 0x19, 0xff, 0x89, 0xbe, 0x50, 0x40, 0x3f, + 0xf8, 0x2, 0x91, 0x2c, 0x46, 0x7f, 0xc4, 0x20, + 0x1f, 0xfd, 0x73, 0x8c, 0xa4, 0x10, 0x1, 0xb3, + 0x8, 0x3, 0x1b, 0x3a, 0x0, 0x5, 0x6a, 0x8c, + 0x40, 0x1f, 0xfd, 0xd2, 0x6b, 0xd7, 0x20, 0x0, + 0xad, 0x6d, 0xf0, 0x80, 0x77, 0xcd, 0x51, 0x44, + 0x0, 0x93, 0xf2, 0x82, 0x1, 0xff, 0xd6, 0x13, + 0x7c, 0xc4, 0xa0, 0x80, 0x9, 0xf6, 0x94, 0x4c, + 0x3, 0xf8, 0x56, 0xa8, 0xc4, 0x0, 0x26, 0xbc, + 0x94, 0x10, 0xf, 0xfe, 0x79, 0x24, 0x5f, 0xe4, + 0x18, 0x80, 0x5, 0x67, 0xe0, 0xc0, 0x3f, 0xf8, + 0x89, 0x3d, 0x6, 0x1, 0x13, 0x5f, 0xdc, 0x20, + 0x80, 0x7f, 0xf2, 0x44, 0xea, 0x5d, 0x4, 0x2, + 0x25, 0xac, 0xa6, 0x20, 0xf, 0xfe, 0x41, 0xbe, + 0x61, 0xcc, 0x2, 0x14, 0x79, 0x84, 0x0, 0xff, + 0xe4, 0x9, 0xc6, 0x4a, 0x9a, 0xce, 0x62, 0x94, + 0x80, 0x3f, 0xf9, 0xc7, 0x19, 0xb2, 0xa4, 0x91, + 0xf2, 0x80, 0x1f, 0xfc, 0xb1, 0x6a, 0xca, 0x63, + 0x10, 0xf, 0xfe, 0xa1, 0x35, 0x6d, 0xb9, 0x0, + 0x7f, 0xf0, 0x8e, 0x7b, 0xfe, 0xd8, 0x20, 0xf, + 0xfe, 0x48, 0xbe, 0x77, 0x6c, 0x61, 0x0, 0xff, + 0xe4, 0x80, + + /* U+4FE1 "信" */ + 0x0, 0xff, 0xff, 0x80, 0x7f, 0xf0, 0x89, 0xf3, + 0xb7, 0x29, 0xcc, 0x3, 0xff, 0xe4, 0x97, 0x26, + 0x24, 0x6c, 0x24, 0x0, 0x16, 0xcf, 0xff, 0xfe, + 0x97, 0x49, 0x80, 0x7f, 0xf2, 0x85, 0xbd, 0x84, + 0x0, 0x2d, 0xc, 0x20, 0x11, 0xaa, 0x27, 0xff, + 0x4f, 0xc4, 0x3, 0xff, 0x90, 0x2b, 0x70, 0x80, + 0x11, 0xc4, 0x10, 0x3, 0xa, 0xcd, 0xdf, 0xff, + 0x4a, 0x98, 0x80, 0x3f, 0xf8, 0xe9, 0x16, 0xa2, + 0x0, 0x16, 0x86, 0x58, 0xcc, 0xff, 0xf0, 0x42, + 0x0, 0x7f, 0x85, 0x26, 0x4c, 0x20, 0x10, 0xb5, + 0x20, 0x9, 0x19, 0xff, 0xf8, 0x8, 0x40, 0x3f, + 0xa, 0xdd, 0x31, 0x0, 0x71, 0x80, 0x80, 0x16, + 0xbf, 0xff, 0xfc, 0x14, 0xa0, 0x1e, 0x38, 0xda, + 0x51, 0x0, 0xff, 0xe3, 0x23, 0xcc, 0xff, 0xf5, + 0x54, 0x80, 0x3f, 0x1b, 0xe6, 0x1c, 0xc0, 0x22, + 0x28, 0x3, 0xff, 0x84, 0x25, 0x8c, 0xdf, 0xfd, + 0x47, 0xd1, 0x0, 0xfc, 0x20, 0x20, 0x18, 0xe3, + 0xa5, 0x4, 0x3, 0xff, 0x82, 0x2f, 0x3b, 0xbf, + 0xfd, 0x4c, 0x93, 0x0, 0xfc, 0x4f, 0x2c, 0x49, + 0x3c, 0xe6, 0xe0, 0x1f, 0xfc, 0x41, 0x22, 0xff, + 0xeb, 0x8, 0x7, 0xfc, 0x93, 0xb6, 0xc4, 0x1, + 0xff, 0xc6, 0x16, 0xbf, 0xff, 0xfe, 0xa7, 0x41, + 0x80, 0x7f, 0xf5, 0xc8, 0xd1, 0x3f, 0xfa, 0xbc, + 0x20, 0x1f, 0xfd, 0x61, 0x48, 0xbb, 0xff, 0xea, + 0x53, 0x10, 0x7, 0xff, 0x59, 0x23, 0x33, 0xff, + 0xad, 0x4c, 0x40, 0x1f, 0xfd, 0x52, 0x33, 0xff, + 0xeb, 0xbf, 0x8, 0x7, 0xff, 0x6d, 0x27, 0xbf, + 0xff, 0xf9, 0x34, 0xa0, 0x1f, 0xff, 0xf0, 0xf, + 0xff, 0xf8, 0x7, 0xff, 0x71, 0x27, 0xbf, 0xff, + 0xf9, 0x34, 0xa0, 0x1f, 0xfe, 0x31, 0x23, 0x3f, + 0xfe, 0x41, 0x8, 0x7, 0xff, 0x8d, 0x23, 0x33, + 0xff, 0x93, 0xb6, 0xa0, 0x1f, 0xfc, 0xc3, 0x9e, + 0xff, 0xb6, 0x8, 0x3, 0xe6, 0xae, 0xed, 0x4c, + 0x20, 0x1f, 0xfc, 0x95, 0xaf, 0xfd, 0xb0, 0x60, + 0x1e, + + /* U+4FEE "修" */ + 0x0, 0xff, 0xff, 0x80, 0x7f, 0xf0, 0xc5, 0xaf, + 0x72, 0xe5, 0xcc, 0x40, 0x3f, 0xf8, 0x44, 0xf9, + 0xfe, 0xdc, 0x84, 0x0, 0xff, 0xee, 0x8b, 0x52, + 0x11, 0xa2, 0x0, 0x44, 0x1, 0xff, 0xc1, 0x48, + 0x93, 0x0, 0x13, 0xea, 0x80, 0x7f, 0xf7, 0x9, + 0xa8, 0xc0, 0x24, 0xb5, 0x33, 0xe2, 0x10, 0xf, + 0x13, 0xc2, 0x88, 0x4, 0x21, 0x91, 0x33, 0xff, + 0xc8, 0x84, 0x10, 0xf, 0xfe, 0x22, 0x5c, 0x90, + 0x0, 0x5b, 0xd8, 0x27, 0xb3, 0x29, 0x71, 0x0, + 0x89, 0xa6, 0xc, 0x3, 0x85, 0x19, 0xbf, 0xf9, + 0x4b, 0x86, 0x1, 0xff, 0xc2, 0x16, 0x86, 0x10, + 0x1, 0x4d, 0xa0, 0x7, 0xf8, 0x52, 0x7e, 0x50, + 0x3, 0x13, 0x56, 0x67, 0xfa, 0xe1, 0x0, 0x38, + 0xe2, 0xf3, 0x2f, 0x92, 0x0, 0xff, 0xe0, 0xa4, + 0x40, 0xc0, 0x22, 0x55, 0x10, 0x7, 0xe7, 0xf8, + 0xdb, 0x62, 0x0, 0x8, 0xc0, 0x4d, 0x14, 0xe4, + 0x67, 0xc4, 0xdd, 0x28, 0x1, 0x1c, 0x73, 0xa1, + 0x9c, 0x42, 0x1, 0xff, 0xc0, 0x38, 0x96, 0x10, + 0xe, 0xf0, 0xf, 0xf1, 0xb3, 0xc, 0x0, 0x29, + 0x19, 0xd9, 0x28, 0x24, 0xd7, 0x94, 0xc6, 0xb3, + 0x94, 0xa2, 0x2, 0x93, 0xce, 0x40, 0x1f, 0xfc, + 0x53, 0x8e, 0x72, 0x0, 0xff, 0xe3, 0x24, 0x64, + 0xbc, 0x6d, 0xb9, 0x1, 0x35, 0xe4, 0x20, 0x92, + 0xce, 0x53, 0x10, 0x0, 0xdf, 0x6d, 0x88, 0x3, + 0xff, 0x8a, 0x93, 0xce, 0x40, 0x1f, 0xfc, 0x91, + 0x26, 0x87, 0x30, 0xe, 0x25, 0x56, 0xb0, 0x7, + 0xf8, 0x4e, 0xd9, 0x8, 0x3, 0xff, 0x86, 0x71, + 0x4c, 0x40, 0x11, 0xa1, 0x80, 0x7f, 0xf2, 0x8, + 0xd5, 0xe6, 0xb7, 0xb6, 0xa1, 0x48, 0x44, 0x6d, + 0x10, 0x74, 0x20, 0x24, 0x79, 0xbd, 0xed, 0xba, + 0x87, 0x64, 0x32, 0x0, 0xe3, 0xa9, 0x30, 0x14, + 0x9d, 0xf5, 0x0, 0xff, 0xe2, 0x2d, 0xe7, 0xee, + 0x54, 0x32, 0x90, 0x80, 0xa3, 0xd6, 0x7e, 0x4b, + 0xb4, 0xd6, 0xf6, 0x4b, 0x21, 0x0, 0x92, 0x2b, + 0xc4, 0xde, 0xda, 0x0, 0x71, 0x3f, 0xdd, 0x51, + 0x84, 0x3, 0xff, 0x8c, 0xb5, 0x2e, 0x42, 0x6a, + 0xf3, 0x7b, 0xdc, 0xb8, 0x53, 0x32, 0xce, 0x7f, + 0x75, 0x6c, 0xf3, 0x7b, 0xfd, 0xb7, 0x30, 0xcb, + 0x15, 0x28, 0x1, 0xf1, 0xa2, 0x4, 0x3, 0xff, + 0x92, 0x2b, 0x1b, 0xd9, 0x50, 0xc8, 0x64, 0xaf, + 0x39, 0xdb, 0x4c, 0x60, 0x91, 0x56, 0xa2, 0x1, + 0x84, 0x91, 0x9e, 0x69, 0xd0, 0x3, 0xff, 0xb4, + 0x26, 0xf7, 0xbd, 0xcc, 0xa8, 0x63, 0x32, 0x3d, + 0x6f, 0x5b, 0xa1, 0xac, 0xef, 0x65, 0x39, 0x88, + 0x7, 0xff, 0x80, 0x4d, 0x31, 0x8d, 0x1a, 0x2f, + 0x7f, 0x6e, 0x14, 0x11, 0xeb, 0x75, 0x4c, 0x40, + 0xd8, 0xa6, 0x20, 0x1f, 0xfe, 0x23, 0x7b, 0xdb, + 0x96, 0x77, 0xa2, 0xb3, 0xb6, 0xe1, 0x48, 0x8b, + 0x39, 0xf4, 0xc4, 0x26, 0x62, 0x0, 0xff, 0xef, + 0x8a, 0x45, 0x67, 0x7f, 0x65, 0x43, 0xa9, 0x11, + 0x5e, 0x73, 0xb6, 0x98, 0xc4, 0x9a, 0xb3, 0x2d, + 0xfd, 0x83, 0x0, 0xff, 0xe8, 0x78, 0x7, 0xf8, + 0x57, 0x84, 0x80, 0xd5, 0xe6, 0xf7, 0xb9, 0x95, + 0xc, 0x62, 0x48, 0xf5, 0xba, 0x95, 0x20, 0x13, + 0x8e, 0x83, 0x0, 0xff, 0xe7, 0x93, 0xef, 0xfd, + 0x6c, 0x20, 0x18, 0x5a, 0xfb, 0x99, 0x50, 0xc8, + 0x42, 0x23, 0x57, 0x9c, 0xed, 0xb8, 0x52, 0x1, + 0x36, 0xac, 0xc3, 0x98, 0x7, 0xff, 0x78, 0x48, + 0xd1, 0x59, 0xe6, 0xf3, 0xbf, 0xb2, 0xa1, 0x8c, + 0x40, 0x4d, 0xa7, 0x3f, 0x25, 0x48, 0x3, 0xff, + 0xb8, 0x2d, 0x7d, 0xfd, 0xb9, 0x75, 0x30, 0xc8, + 0x62, 0x2, 0x48, 0xd1, 0x59, 0xdc, 0xc9, 0x63, + 0x10, 0xf, 0xff, 0x0, 0xb4, 0x31, 0x0, 0x91, + 0xab, 0x3c, 0x4d, 0xe7, 0x73, 0x6e, 0x5d, 0x4c, + 0x40, 0x3f, 0xfa, 0x49, 0x3f, 0xfb, 0x5c, 0x80, + 0x3f, 0xf8, 0x27, 0x1b, 0xfd, 0xb9, 0x53, 0xe, + 0xc8, 0x62, 0x1, 0xff, 0xd0, + + /* U+503C "值" */ + 0x0, 0xff, 0xef, 0x8, 0x88, 0xa1, 0x18, 0x3, + 0xff, 0xb6, 0xb5, 0xfe, 0xec, 0x95, 0x20, 0xf, + 0xfe, 0x18, 0xbe, 0xee, 0xef, 0x84, 0x0, 0xff, + 0xec, 0xb, 0x72, 0x80, 0x4, 0x66, 0x20, 0xf, + 0xfe, 0x19, 0xf0, 0x80, 0x65, 0xf5, 0x0, 0xff, + 0xeb, 0x93, 0x52, 0x0, 0x49, 0x78, 0x97, 0xbb, + 0xff, 0xc3, 0xc7, 0x20, 0xc, 0x91, 0x9b, 0xbf, + 0xfc, 0x3a, 0x61, 0x0, 0xff, 0xe2, 0x2c, 0x49, + 0x80, 0x5, 0x7d, 0x99, 0xec, 0x45, 0xff, 0xc3, + 0x10, 0xf, 0x84, 0x8b, 0xff, 0x88, 0xc2, 0x1, + 0xff, 0xc3, 0x27, 0x85, 0x10, 0x1, 0x34, 0x20, + 0x14, 0x6f, 0xff, 0xff, 0xa, 0x94, 0x3, 0x1c, + 0x6f, 0xff, 0xff, 0x17, 0x1c, 0x40, 0x3f, 0xf8, + 0x4, 0xd3, 0x4, 0x1, 0x25, 0xc9, 0x0, 0x7f, + 0xf1, 0x88, 0x8e, 0x1, 0xa, 0x20, 0x80, 0x3f, + 0xfa, 0x42, 0xd3, 0x24, 0x0, 0xc2, 0x4a, 0x20, + 0x1f, 0x2d, 0x7f, 0xff, 0xb6, 0x8, 0x2, 0x17, + 0xcf, 0xff, 0xfe, 0x15, 0xb0, 0x80, 0x7f, 0xf0, + 0x9, 0xea, 0x50, 0x3, 0xff, 0x8c, 0x20, 0x18, + 0x4d, 0x13, 0xff, 0x92, 0x62, 0x1, 0x9c, 0x3, + 0xfe, 0x14, 0x9f, 0x84, 0x0, 0xff, 0xe6, 0xbc, + 0x5d, 0xff, 0xf2, 0x61, 0xc0, 0x3f, 0xf8, 0x87, + 0x88, 0x40, 0x11, 0x22, 0x8, 0x3, 0xff, 0x90, + 0x9f, 0x11, 0xff, 0xc9, 0xe4, 0x0, 0xff, 0xe2, + 0x14, 0x4a, 0x89, 0xc7, 0xce, 0x8, 0x7, 0xff, + 0x20, 0x91, 0xdf, 0xff, 0x92, 0xa4, 0x1, 0xff, + 0xc6, 0x4b, 0xfd, 0x72, 0x0, 0xff, 0xe5, 0xad, + 0x7f, 0xff, 0xf2, 0x69, 0x40, 0x3f, 0xf8, 0xe2, + 0x30, 0x7, 0xff, 0xfc, 0x3, 0xff, 0x94, 0xb5, + 0xff, 0xff, 0xc9, 0xa5, 0x0, 0xff, 0xf1, 0x92, + 0xbb, 0xff, 0xf2, 0x54, 0x80, 0x3f, 0xfc, 0x69, + 0xd1, 0x1f, 0xfc, 0x9e, 0x40, 0xf, 0xff, 0x1b, + 0x5f, 0xff, 0xff, 0x26, 0xd8, 0x3, 0xff, 0xc6, + 0x48, 0xab, 0xff, 0xc9, 0x42, 0x0, 0xff, 0xf1, + 0xa7, 0xd5, 0x7f, 0xf2, 0x7d, 0x0, 0x3f, 0xff, + 0xe0, 0x1f, 0xfd, 0x33, 0x8c, 0xee, 0xd6, 0x80, + 0x19, 0xab, 0xbb, 0xff, 0x93, 0x4c, 0x1, 0x8e, + 0x7f, 0xba, 0xa5, 0x10, 0xf, 0xfe, 0x50, 0x90, + 0x8f, 0x0, 0x78, 0x47, 0xff, 0x96, 0x1, 0xf0, + 0x8f, 0x18, 0x0, + + /* U+505C "停" */ + 0x0, 0xff, 0xff, 0x80, 0x7f, 0xf0, 0x4e, 0x37, + 0xb2, 0xe5, 0x48, 0x3, 0xff, 0x86, 0x2d, 0x7f, + 0xfb, 0x5c, 0x80, 0x3f, 0xfb, 0x29, 0x4c, 0x42, + 0x68, 0x40, 0x60, 0x1f, 0xff, 0x1, 0x5f, 0x61, + 0x0, 0xa, 0x97, 0x7f, 0x77, 0xff, 0xf, 0xe5, + 0x0, 0x31, 0x46, 0x77, 0x7f, 0xf1, 0x69, 0x84, + 0x3, 0xff, 0x84, 0x73, 0x8, 0x1, 0x14, 0xcb, + 0xc0, 0x47, 0xff, 0x8a, 0x1, 0xf8, 0x47, 0xff, + 0x8e, 0x1, 0xff, 0xc2, 0x16, 0xf7, 0x20, 0x9, + 0x2d, 0x8d, 0xaf, 0xff, 0xff, 0xbf, 0x6c, 0x20, + 0x1f, 0xe1, 0x5b, 0x83, 0x0, 0xcb, 0xcc, 0x20, + 0x1e, 0x6b, 0xff, 0xff, 0xea, 0xdb, 0x8, 0x7, + 0xff, 0x4, 0x56, 0xad, 0x44, 0x3, 0x9, 0xb0, + 0x7, 0xff, 0x8, 0x4d, 0x59, 0xbf, 0xf8, 0xea, + 0x62, 0x1, 0xff, 0xc6, 0x26, 0xab, 0x41, 0x0, + 0xff, 0xe5, 0xad, 0x5c, 0xcf, 0xff, 0x1e, 0x2c, + 0xc0, 0x3f, 0xf8, 0x62, 0x93, 0xf2, 0x82, 0x1, + 0xff, 0xcd, 0x6c, 0x97, 0x7f, 0xfe, 0x3d, 0x61, + 0x80, 0x7f, 0xf0, 0x85, 0xfd, 0x88, 0x2, 0x15, + 0x76, 0x20, 0xf, 0xfe, 0x41, 0x2b, 0xc4, 0x7f, + 0xf1, 0xdd, 0x4, 0x3, 0xff, 0x84, 0x2d, 0x30, + 0x62, 0x71, 0xb5, 0x41, 0x0, 0xff, 0xe1, 0xb5, + 0xff, 0xff, 0xf5, 0x6d, 0x84, 0x3, 0xf8, 0x9f, + 0x7f, 0x5c, 0xc0, 0x3f, 0xe2, 0x7b, 0xcc, 0xff, + 0xf0, 0xc1, 0x80, 0x78, 0x46, 0x0, 0xff, 0xe0, + 0x8f, 0xa9, 0x9f, 0xff, 0x84, 0x5c, 0x3, 0xff, + 0xa0, 0x93, 0xdf, 0xff, 0xfd, 0x4e, 0x83, 0x0, + 0xff, 0xec, 0x9b, 0xde, 0x67, 0xff, 0x3e, 0xdd, + 0x0, 0x3f, 0xfa, 0x45, 0xac, 0xef, 0x6a, 0x88, + 0x72, 0x99, 0xff, 0xf3, 0xd7, 0x80, 0xed, 0xdf, + 0x63, 0x0, 0x7f, 0xf2, 0x85, 0x62, 0x33, 0x18, + 0x1c, 0xf7, 0xff, 0xee, 0x93, 0x0, 0xc4, 0xf9, + 0xff, 0xfd, 0xd2, 0xa8, 0xf1, 0x19, 0x48, 0x3, + 0xff, 0xc0, 0xe0, 0x1d, 0xe2, 0x1, 0xff, 0xff, + 0x0, 0xff, 0xf8, 0xb8, 0x7, 0xff, 0xbc, 0x56, + 0xbb, 0x9b, 0xbd, 0xf2, 0x60, 0x19, 0x88, 0x80, + 0x1f, 0xfe, 0x81, 0x4c, 0x21, 0x22, 0xe1, 0x0, + 0x85, 0x22, 0x8, 0x1, 0xff, 0xd5, 0x28, 0xdf, + 0xfb, 0xa4, 0xc0, 0x3f, 0xf8, 0x2, 0xdb, 0xbf, + 0xbb, 0xfd, 0xd6, 0xe6, 0x20, 0x1f, 0xfc, 0xb0, + + /* U+507F "偿" */ + 0x0, 0xff, 0xee, 0x89, 0x17, 0x84, 0x3, 0xff, + 0xb4, 0xb3, 0xb9, 0x72, 0xe8, 0x20, 0x10, 0x9b, + 0x44, 0x14, 0x40, 0x3e, 0x79, 0xdd, 0xdf, 0x24, + 0x1, 0xf1, 0x2c, 0x4b, 0xaa, 0x10, 0x80, 0x7f, + 0xf1, 0xc5, 0x79, 0x88, 0xd1, 0xb4, 0x4, 0x5, + 0x6b, 0x65, 0xdd, 0x59, 0x8, 0x1, 0xff, 0xc7, + 0x26, 0xea, 0x76, 0x8a, 0x9b, 0x50, 0xf, 0xfe, + 0x30, 0xbc, 0xa0, 0x4, 0x2d, 0xc8, 0x0, 0x15, + 0xaa, 0x28, 0x80, 0x9, 0xea, 0x50, 0x40, 0x3f, + 0xf8, 0x44, 0xfd, 0x26, 0x1, 0x1c, 0x7c, 0xa0, + 0x7, 0xff, 0x14, 0x9a, 0xcc, 0x2, 0x17, 0xa4, + 0x0, 0xe1, 0x4b, 0xb2, 0x88, 0x9, 0x0, 0x98, + 0x8, 0x7, 0xe1, 0x0, 0x13, 0xf3, 0x90, 0x93, + 0x5e, 0xb9, 0x0, 0x7f, 0xf1, 0x8e, 0xa4, 0x80, + 0x22, 0x6a, 0x30, 0x5a, 0xff, 0xee, 0xa5, 0x10, + 0x13, 0x6a, 0xdf, 0xe9, 0x40, 0xc, 0x4f, 0x9f, + 0xed, 0xa6, 0x42, 0x12, 0x6b, 0xef, 0xfe, 0x94, + 0x0, 0xff, 0x85, 0x65, 0x84, 0x2, 0x14, 0xc3, + 0x0, 0xfe, 0x12, 0x2f, 0xfe, 0x90, 0x80, 0x7f, + 0xf1, 0x8e, 0x61, 0x44, 0x3, 0xce, 0x1, 0xfc, + 0x73, 0xfb, 0xbf, 0xfd, 0x1a, 0x61, 0x0, 0xff, + 0xe1, 0x13, 0xfb, 0x90, 0x7, 0xff, 0xd4, 0xe3, + 0xe0, 0xc0, 0x3f, 0xf8, 0x4d, 0xa8, 0x98, 0x67, + 0x7f, 0xff, 0xfa, 0x36, 0xe6, 0x64, 0x4b, 0x9c, + 0x3, 0x92, 0x5c, 0x80, 0x21, 0x22, 0x0, 0x7f, + 0x8d, 0xee, 0xf4, 0x28, 0x7, 0xff, 0x4c, 0xeb, + 0xae, 0xe7, 0x30, 0xe, 0x48, 0x72, 0x2, 0x7d, + 0x84, 0x0, 0xff, 0xe2, 0x2d, 0x77, 0x7f, 0xf4, + 0xf1, 0xc8, 0x3, 0xfe, 0x29, 0xeb, 0xf8, 0x31, + 0x0, 0xff, 0xe3, 0x8, 0xff, 0xf5, 0x40, 0x3f, + 0xf8, 0x42, 0x68, 0x40, 0x1f, 0xfc, 0x3, 0x9e, + 0xff, 0xff, 0xf0, 0xe3, 0x8, 0x7, 0xff, 0xe8, + 0x40, 0x3f, 0xf9, 0x47, 0x19, 0xbb, 0xfe, 0xc8, + 0x40, 0xf, 0x1b, 0xde, 0xef, 0xf6, 0x55, 0x2f, + 0x77, 0xfe, 0x61, 0x0, 0xff, 0xe5, 0x9, 0x17, + 0xf1, 0xb4, 0xc9, 0x0, 0x32, 0x4f, 0x42, 0x11, + 0x71, 0xbd, 0xfe, 0x55, 0x26, 0x84, 0x8b, 0xf0, + 0x88, 0x3, 0xff, 0xa6, 0x2b, 0x74, 0xa2, 0x0, + 0x15, 0xaa, 0x31, 0x0, 0x7c, 0x29, 0x8e, 0x20, + 0x2, 0x7d, 0x94, 0x10, 0xf, 0xfe, 0xc1, 0x35, + 0x51, 0x44, 0x0, 0x4d, 0x56, 0xa2, 0x1, 0xfe, + 0x15, 0xba, 0x51, 0x0, 0xb, 0x55, 0x14, 0x40, + 0x3f, 0xfa, 0x64, 0xd5, 0x92, 0x80, 0x10, 0xa2, + 0xe0, 0xa3, 0x31, 0xdd, 0x10, 0x99, 0x55, 0x2e, + 0xec, 0xd9, 0x41, 0x0, 0xc2, 0x97, 0x4a, 0x20, + 0x1f, 0xfc, 0xf1, 0x6e, 0x95, 0x10, 0xe, 0x14, + 0x7a, 0xaa, 0x65, 0x10, 0x77, 0x33, 0x15, 0x48, + 0x91, 0x98, 0x84, 0x3, 0xe1, 0x4b, 0xb2, 0x88, + 0x7, 0xff, 0x34, 0x5e, 0x90, 0x3, 0xe1, 0x22, + 0x1a, 0x21, 0x54, 0xce, 0xe8, 0x84, 0xca, 0xa9, + 0x76, 0xcc, 0x6e, 0xbb, 0x9f, 0xd2, 0x80, 0x10, + 0xac, 0x49, 0x0, 0x7f, 0xf3, 0x45, 0xe6, 0xf3, + 0x7b, 0xfe, 0xed, 0xd6, 0x5d, 0xaa, 0x93, 0x10, + 0x77, 0x33, 0x15, 0x48, 0x83, 0x31, 0x10, 0x44, + 0x2, 0xd0, 0xe8, 0xb1, 0x7f, 0x4, 0x0, + + /* U+5141 "允" */ + 0x0, 0xff, 0xff, 0x80, 0x7f, 0xf2, 0x4e, 0x37, + 0xb6, 0xea, 0x14, 0xc0, 0x3f, 0xfe, 0x27, 0x4c, + 0x42, 0x48, 0xa8, 0x42, 0x1, 0xff, 0xf0, 0x59, + 0x61, 0x0, 0x85, 0x61, 0xc8, 0x3, 0xf8, 0x96, + 0x2f, 0xb9, 0x8e, 0x60, 0x1f, 0xfd, 0xc1, 0x6e, + 0x50, 0xc, 0x53, 0x8, 0x1, 0xff, 0xc0, 0x24, + 0x51, 0x11, 0xc6, 0xdb, 0x90, 0x7, 0xff, 0x60, + 0xe2, 0x8, 0x1, 0xb, 0x4b, 0x90, 0x7, 0xff, + 0x0, 0x9f, 0x35, 0xcc, 0x0, 0x29, 0x19, 0x6c, + 0x40, 0x1f, 0xfd, 0x31, 0x6f, 0x61, 0x0, 0x92, + 0x20, 0x80, 0x1f, 0xfc, 0x53, 0x8d, 0xb6, 0x20, + 0x0, 0xa4, 0xe5, 0x28, 0x80, 0x7f, 0xf2, 0xc4, + 0x72, 0xc4, 0xc, 0x2, 0x14, 0xc2, 0x54, 0x42, + 0xae, 0x66, 0xe7, 0x7d, 0x11, 0xa6, 0x34, 0x18, + 0x80, 0x30, 0xad, 0x6c, 0x18, 0x7, 0xff, 0x4, + 0x5a, 0xff, 0xfb, 0xbb, 0x53, 0x8, 0x6, 0x14, + 0x8b, 0xbd, 0x55, 0xa6, 0x7a, 0x23, 0x3b, 0xe6, + 0x6c, 0x84, 0x1, 0xf1, 0xbe, 0xd2, 0x88, 0x7, + 0xff, 0x54, 0x46, 0x22, 0x8c, 0xe4, 0x4c, 0xab, + 0x33, 0x4e, 0xf4, 0x46, 0x99, 0xce, 0x60, 0x10, + 0xad, 0x51, 0x84, 0x3, 0xf0, 0xbc, 0x5d, 0xb3, + 0x36, 0xed, 0xdd, 0xbf, 0xfe, 0xee, 0xb7, 0x6c, + 0xca, 0xef, 0x55, 0x53, 0x34, 0x44, 0xef, 0x99, + 0xb4, 0x6c, 0xa0, 0x6, 0x48, 0x82, 0x0, 0x7e, + 0x13, 0x44, 0x19, 0xe2, 0x28, 0x47, 0x1, 0xc6, + 0xf7, 0x6a, 0x60, 0xf, 0xf1, 0x3e, 0xff, 0xec, + 0x71, 0x0, 0xfc, 0x2d, 0x30, 0x86, 0xd5, 0x92, + 0x80, 0x1f, 0xfc, 0xc7, 0x13, 0x11, 0xc0, 0x60, + 0x1f, 0xfd, 0x22, 0x7b, 0xc9, 0x52, 0x0, 0xff, + 0xe7, 0x9, 0x88, 0x6, 0x31, 0x0, 0xff, 0xf9, + 0x98, 0x80, 0x61, 0x7, 0x0, 0xff, 0xf9, 0x26, + 0x20, 0x6, 0x2e, 0x10, 0xf, 0xff, 0x8a, 0x6a, + 0x0, 0x61, 0x53, 0x20, 0xf, 0xfe, 0x98, 0x91, + 0x88, 0x7, 0xff, 0x35, 0x35, 0xc4, 0x2, 0x14, + 0xd4, 0x0, 0xff, 0xea, 0x15, 0x77, 0x59, 0x2a, + 0x20, 0x1f, 0xfc, 0x63, 0x89, 0x61, 0x0, 0x85, + 0xe5, 0x0, 0x3f, 0xfa, 0xe6, 0x2, 0x69, 0xa6, + 0x1, 0xff, 0xc2, 0x14, 0x8c, 0xc3, 0x90, 0x4, + 0x2b, 0x50, 0x60, 0x1f, 0xfc, 0xa3, 0x0, 0xff, + 0x98, 0x84, 0x2, 0x1f, 0x30, 0xf, 0xc2, 0x6a, + 0xf5, 0xbd, 0x6e, 0x60, 0x18, 0xe3, 0x69, 0x4, + 0x3, 0xff, 0x84, 0x60, 0x20, 0x18, 0xb5, 0x8, + 0xbf, 0x8d, 0xbd, 0x0, 0x33, 0x10, 0x80, 0x61, + 0x5a, 0xee, 0x65, 0x42, 0x90, 0x6, 0x25, 0x9d, + 0xc7, 0x30, 0xf, 0xfe, 0x28, 0x9a, 0x88, 0x4, + 0x2b, 0x3b, 0xbf, 0xd9, 0x2a, 0x20, 0x12, 0x7a, + 0x0, 0x70, 0xac, 0x49, 0x80, 0x4, 0x91, 0xa7, + 0x3b, 0x69, 0x88, 0x3, 0xff, 0x92, 0x91, 0x4e, + 0x84, 0x22, 0x0, 0xff, 0xe0, 0x9, 0x1b, 0x55, + 0x14, 0x40, 0x3e, 0x27, 0xdd, 0x77, 0x36, 0xe5, + 0x8c, 0x40, 0x3f, 0xf9, 0xc2, 0x91, 0x7b, 0xdc, + 0xff, 0xff, 0xe0, 0x76, 0xe4, 0xa8, 0x80, 0x70, + + /* U+5148 "先" */ + 0x0, 0xff, 0xe9, 0x9, 0x17, 0x8, 0x7, 0xff, + 0x84, 0x96, 0x26, 0x1d, 0x90, 0x80, 0x3e, 0x39, + 0xcd, 0xdd, 0x6a, 0x1, 0xff, 0xdf, 0x25, 0x97, + 0x67, 0x88, 0x68, 0x80, 0x7f, 0xfb, 0x85, 0x6c, + 0xc0, 0x21, 0x7d, 0x30, 0xf, 0xff, 0x68, 0xbd, + 0x98, 0x6, 0x17, 0x9d, 0xdf, 0xe6, 0x10, 0xc, + 0xb7, 0xbb, 0xff, 0xc9, 0x84, 0x0, 0xff, 0xe2, + 0x93, 0x51, 0x80, 0x78, 0x48, 0xbf, 0x84, 0x40, + 0x1e, 0x12, 0x2f, 0xfe, 0x50, 0x7, 0xff, 0x15, + 0x2e, 0x4c, 0x2, 0x37, 0xab, 0xbf, 0xfa, 0x14, + 0x40, 0x31, 0xbd, 0xdf, 0xff, 0x26, 0x14, 0x3, + 0xff, 0x84, 0x4f, 0xc, 0x20, 0x1, 0x58, 0x82, + 0xa2, 0x7f, 0xf0, 0x8, 0x3, 0x9b, 0x51, 0x3f, + 0xf9, 0x24, 0x20, 0x1f, 0xfc, 0x2, 0x7e, 0x83, + 0x0, 0x8e, 0x61, 0x0, 0x3f, 0xfd, 0xa4, 0xdf, + 0x4e, 0x88, 0x8f, 0x72, 0x0, 0xff, 0xf6, 0x88, + 0x80, 0x92, 0x6a, 0x8c, 0x42, 0x3f, 0xfc, 0x47, + 0x10, 0xe, 0x13, 0x11, 0xff, 0xe7, 0x0, 0x78, + 0xe7, 0xfb, 0xbf, 0xf9, 0xb6, 0xc2, 0x1, 0x92, + 0x7b, 0xbf, 0xf9, 0xd6, 0xc2, 0x1, 0xff, 0xfc, + 0x39, 0xfe, 0xef, 0xfe, 0x16, 0xca, 0x0, 0x72, + 0xd7, 0x77, 0xfa, 0xd8, 0x40, 0x32, 0x4f, 0x77, + 0xff, 0x16, 0xd8, 0x40, 0x38, 0x47, 0xff, 0x89, + 0xcc, 0x1, 0x8f, 0x50, 0x47, 0xfc, 0xe0, 0x1e, + 0x13, 0x11, 0xff, 0xe2, 0x80, 0x7f, 0xf2, 0xd4, + 0xc8, 0x2, 0x15, 0x31, 0x0, 0xff, 0xf6, 0x8b, + 0x6a, 0x0, 0x65, 0xf5, 0x0, 0xff, 0xf6, 0x93, + 0x5a, 0x0, 0x65, 0xf6, 0x10, 0xf, 0xfe, 0xa2, + 0x33, 0xa0, 0x80, 0x7f, 0xf1, 0x89, 0xa6, 0x44, + 0x1, 0xb, 0x4a, 0x0, 0x7f, 0xf5, 0x44, 0xb6, + 0x2f, 0xb6, 0x8, 0x3, 0xff, 0x80, 0x2b, 0x3f, + 0x28, 0x20, 0x12, 0x44, 0xc, 0x3, 0xff, 0xac, + 0x62, 0xe0, 0x1f, 0xfc, 0x11, 0x36, 0x9c, 0xfa, + 0x62, 0x0, 0x85, 0x6a, 0x8c, 0x20, 0x1f, 0xfc, + 0x31, 0x11, 0x80, 0x67, 0xc4, 0x21, 0x1f, 0xc6, + 0xb8, 0x60, 0x10, 0xf1, 0x80, 0x5, 0x23, 0x3b, + 0x99, 0x2c, 0x62, 0x1, 0x13, 0x57, 0xd2, 0x88, + 0x7, 0xff, 0x14, 0xb5, 0x80, 0x31, 0x35, 0xef, + 0x77, 0xec, 0x84, 0x0, 0x8a, 0xd0, 0x40, 0x2, + 0x94, 0x84, 0x1, 0x89, 0x1e, 0xf7, 0x52, 0xa2, + 0x1, 0xff, 0xc9, 0x59, 0xa6, 0x32, 0x10, 0xf, + 0xfe, 0x8, 0x92, 0x47, 0x31, 0x0, 0x71, 0x47, + 0x5d, 0x6f, 0x6d, 0xc2, 0x10, 0x7, 0xff, 0x38, + 0x96, 0x73, 0x7b, 0xff, 0xff, 0x83, 0xdb, 0x6e, + 0x62, 0x1, 0x80, + + /* U+5165 "入" */ + 0x0, 0xff, 0xe2, 0x1c, 0x77, 0x7f, 0xf2, 0xb6, + 0xc, 0x3, 0xff, 0xc2, 0xe2, 0x2, 0x3f, 0xfc, + 0x93, 0x10, 0xf, 0xff, 0x12, 0xdd, 0x5d, 0xff, + 0xf0, 0xa1, 0x44, 0x3, 0x9, 0xb8, 0x7, 0xff, + 0x84, 0x49, 0x13, 0xff, 0x86, 0xd8, 0x40, 0x1c, + 0x22, 0x0, 0xff, 0xf9, 0x9, 0x30, 0x7, 0x39, + 0x8, 0x7, 0xff, 0xb9, 0x2b, 0xbe, 0x94, 0x3, + 0x8b, 0x94, 0x3, 0xff, 0xda, 0x9a, 0x82, 0x2, + 0x1, 0xe1, 0x52, 0x10, 0xf, 0xff, 0x59, 0xe3, + 0x88, 0x7, 0xf8, 0xf5, 0x0, 0x3f, 0xfd, 0x47, + 0x6a, 0x20, 0x18, 0x99, 0x86, 0x1, 0x93, 0xd0, + 0x3, 0xff, 0xd0, 0x56, 0xa4, 0x1, 0x8e, 0xa2, + 0x14, 0x60, 0x19, 0x79, 0x40, 0x3f, 0xfc, 0xa2, + 0xb0, 0xc4, 0x1, 0x92, 0x98, 0x44, 0xf4, 0x80, + 0x19, 0x79, 0x84, 0x3, 0xff, 0xc4, 0x53, 0xa, + 0x20, 0x19, 0x79, 0x84, 0x0, 0x2f, 0xca, 0x1, + 0x92, 0xe4, 0xc0, 0x3f, 0xfb, 0xe2, 0xb2, 0xe4, + 0x1, 0x89, 0xe5, 0x40, 0x38, 0x56, 0x20, 0x60, + 0x11, 0x3f, 0x41, 0x0, 0x7f, 0xf6, 0xc5, 0x22, + 0x8, 0x1, 0x85, 0xa6, 0xc, 0x3, 0xf1, 0x3c, + 0x30, 0x80, 0x44, 0xfc, 0xe6, 0x1, 0xff, 0xd7, + 0x27, 0xdb, 0x62, 0x0, 0x85, 0x6e, 0x10, 0x3, + 0xff, 0x80, 0x91, 0x4, 0x0, 0xc7, 0x1d, 0x4a, + 0x20, 0x1f, 0xfd, 0x11, 0x5a, 0xc8, 0x30, 0xc, + 0x29, 0x76, 0x51, 0x0, 0xff, 0xe1, 0xb, 0x55, + 0xb1, 0x0, 0x44, 0xb5, 0x92, 0x82, 0x1, 0xff, + 0xcb, 0x25, 0x9d, 0xa5, 0x10, 0xc, 0x6f, 0xb6, + 0xa2, 0x1, 0xff, 0xc6, 0x14, 0x9f, 0x93, 0x0, + 0xc4, 0xd7, 0x92, 0xa4, 0x1, 0xff, 0xc4, 0x26, + 0x9d, 0xd5, 0x31, 0x80, 0x62, 0x6b, 0xd8, 0x30, + 0xf, 0xfe, 0x61, 0x36, 0xdb, 0x10, 0x6, 0x26, + 0xad, 0xd5, 0x31, 0x80, 0x7e, 0x37, 0xbe, 0xd9, + 0x62, 0x0, 0xe2, 0x6a, 0xf9, 0x41, 0x0, 0xff, + 0xe8, 0xa, 0x4e, 0x5b, 0x98, 0x7, 0x12, 0xce, + 0x6c, 0x98, 0x7, 0x1a, 0x6a, 0x88, 0x6, 0x26, + 0xad, 0xd4, 0xa9, 0x0, 0x7f, 0xf5, 0x85, 0x23, + 0x36, 0x98, 0xc0, 0x21, 0x58, 0x81, 0x80, 0x78, + 0xda, 0xf2, 0xa2, 0xb7, 0x52, 0xa4, 0x1, 0xff, + 0xde, 0x25, 0x9c, 0xeb, 0xb6, 0xd2, 0x88, 0x4, + + /* U+5168 "全" */ + 0x0, 0xff, 0xff, 0x80, 0x7f, 0xf3, 0x85, 0xaf, + 0xbf, 0xfb, 0xa9, 0x44, 0x3, 0xff, 0xda, 0x4f, + 0xb2, 0x82, 0x1, 0xc2, 0xb5, 0xae, 0x60, 0x1f, + 0xfe, 0x81, 0x48, 0xf8, 0x30, 0x8, 0x51, 0xd8, + 0x80, 0x23, 0x8d, 0xa5, 0x10, 0xf, 0xff, 0x19, + 0xc6, 0xdb, 0x90, 0x4, 0x4d, 0x57, 0x13, 0xf2, + 0x82, 0x0, 0x15, 0xaf, 0xa6, 0x20, 0xf, 0xfe, + 0xe9, 0xbe, 0x61, 0xcc, 0x2, 0x15, 0xaf, 0x94, + 0x0, 0x89, 0xaf, 0x60, 0xc4, 0x0, 0x2b, 0x39, + 0x6c, 0x60, 0x1f, 0xfd, 0x62, 0x59, 0xdc, 0x83, + 0x0, 0x85, 0x27, 0x29, 0x48, 0x3, 0xf1, 0xbe, + 0x6c, 0x20, 0x80, 0x5, 0x27, 0x36, 0x54, 0x80, + 0x3f, 0xf9, 0xc2, 0x91, 0x98, 0xa6, 0x20, 0x8, + 0xde, 0xfe, 0xd8, 0x80, 0x3f, 0xf8, 0x46, 0xf7, + 0xf6, 0xc6, 0x1, 0x13, 0x56, 0xea, 0x54, 0x80, + 0x3f, 0xf8, 0xc4, 0xb3, 0x9f, 0x6e, 0x62, 0x0, + 0x25, 0x9d, 0xc8, 0x41, 0x0, 0xff, 0xe4, 0xa, + 0x4e, 0x6c, 0xa9, 0x0, 0x44, 0xd5, 0xba, 0xb8, + 0x52, 0x0, 0xfc, 0x29, 0x17, 0xdb, 0x4c, 0x62, + 0x1, 0xa, 0x44, 0xc9, 0x44, 0xcf, 0xff, 0xa0, + 0x2b, 0x33, 0x29, 0x0, 0x62, 0x47, 0xad, 0xec, + 0x73, 0x0, 0xf0, 0xb0, 0x80, 0x44, 0xb1, 0x70, + 0xa9, 0x17, 0x99, 0xff, 0xd6, 0xb9, 0x57, 0xad, + 0xa6, 0x31, 0x0, 0x8d, 0x10, 0x60, 0x18, 0x52, + 0x7e, 0xa6, 0xf7, 0x54, 0xe8, 0x67, 0xff, 0xc5, + 0x21, 0x0, 0xf1, 0x19, 0xff, 0xf1, 0x9, 0x89, + 0x67, 0x3f, 0x2a, 0xfe, 0xc, 0x3, 0xf1, 0x2b, + 0x21, 0x0, 0x64, 0x8c, 0xcf, 0xfe, 0x1f, 0x38, + 0x80, 0x64, 0xbd, 0xcc, 0xff, 0xe1, 0xc1, 0x80, + 0x61, 0x35, 0x42, 0x0, 0xff, 0xff, 0x80, 0x7f, + 0xf5, 0x5c, 0x3, 0xce, 0x1, 0xff, 0xdf, 0x17, + 0xcf, 0xff, 0xfe, 0x35, 0xb0, 0x80, 0x63, 0x9e, + 0xff, 0xff, 0xe3, 0x52, 0x80, 0x7f, 0xf2, 0x85, + 0xc4, 0x7f, 0xf8, 0xe0, 0x1f, 0x84, 0x7f, 0xf8, + 0xe6, 0x20, 0x1f, 0xfc, 0x91, 0x6b, 0xee, 0xff, + 0xe3, 0x6b, 0x8, 0x6, 0x49, 0xfe, 0xef, 0xfe, + 0x34, 0xa0, 0x7, 0xff, 0xfc, 0x3, 0xff, 0xfe, + 0x1, 0xff, 0xd8, 0x70, 0xf, 0x38, 0x7, 0xff, + 0x69, 0xaf, 0xff, 0xff, 0x99, 0x6c, 0x20, 0x18, + 0xe7, 0xbf, 0xff, 0xf9, 0x9a, 0xe4, 0x1, 0xff, + 0xff, 0x0, + + /* U+5173 "关" */ + 0x0, 0xff, 0xee, 0x88, 0xc0, 0x1f, 0xfc, 0xf2, + 0x47, 0xad, 0xd5, 0x28, 0x80, 0x7f, 0xf2, 0xe, + 0x7f, 0xbf, 0x6e, 0x54, 0x80, 0x3f, 0xf9, 0x47, + 0x6a, 0x44, 0x5b, 0xa6, 0x10, 0xf, 0xfe, 0x2a, + 0xcb, 0x88, 0x0, 0x98, 0x58, 0x80, 0x3f, 0xf9, + 0x24, 0xfd, 0x6, 0x0, 0x14, 0x9b, 0x51, 0x0, + 0xff, 0xe0, 0x9c, 0x41, 0x40, 0x21, 0x69, 0x83, + 0x0, 0xff, 0xe6, 0x13, 0xfb, 0x8, 0x4, 0xb1, + 0x26, 0x1, 0xfe, 0x27, 0xf7, 0x20, 0x1, 0x35, + 0x4a, 0x0, 0x7f, 0xf4, 0xe, 0x20, 0x84, 0xb1, + 0x34, 0x60, 0x1f, 0xf1, 0x22, 0x91, 0xb4, 0xc9, + 0x0, 0x3f, 0xf9, 0x6b, 0x5f, 0xfe, 0xe9, 0x42, + 0x58, 0xbd, 0xff, 0xff, 0xb6, 0x9d, 0x48, 0xda, + 0xff, 0xfe, 0xa5, 0x0, 0xff, 0xe2, 0x88, 0x7, + 0xff, 0x70, 0x40, 0x3f, 0xf8, 0xa9, 0x3b, 0xbf, + 0xfc, 0x39, 0x40, 0xe, 0x48, 0xcd, 0xdf, 0xfe, + 0x1c, 0xa0, 0x7, 0xff, 0x10, 0x48, 0xbf, 0xf8, + 0xc0, 0x1c, 0x24, 0x64, 0x5f, 0xfc, 0x41, 0x0, + 0xff, 0xff, 0x80, 0x7f, 0xf1, 0x84, 0xc0, 0x38, + 0x40, 0x3f, 0xfa, 0x85, 0x1b, 0xff, 0xff, 0xc5, + 0xa5, 0x0, 0xe4, 0xaf, 0xff, 0xfe, 0x37, 0x49, + 0x80, 0x7f, 0xfe, 0x8a, 0x37, 0xff, 0xff, 0x87, + 0xd4, 0xa2, 0x1, 0xf1, 0xc6, 0xff, 0xff, 0xf0, + 0xfa, 0x4c, 0x3, 0xff, 0xa0, 0xb8, 0x82, 0x1, + 0xf1, 0xcd, 0x98, 0x7, 0xff, 0x7c, 0x9a, 0x18, + 0x40, 0x23, 0x44, 0x8, 0x0, 0x5b, 0xdc, 0x80, + 0x3f, 0xfb, 0x64, 0xdd, 0x26, 0x1, 0xb, 0x45, + 0xd4, 0x20, 0x4, 0x71, 0xf2, 0x80, 0x1f, 0xfd, + 0x62, 0x5a, 0xc9, 0x30, 0x8, 0x9a, 0xa1, 0x0, + 0x5a, 0x60, 0xc0, 0x22, 0x6a, 0xc8, 0x31, 0x0, + 0xff, 0xe6, 0x89, 0xb4, 0xee, 0xa9, 0x44, 0x0, + 0x29, 0x3f, 0x28, 0x20, 0x18, 0x9f, 0x69, 0x44, + 0x0, 0x26, 0xf9, 0xf6, 0xe6, 0x20, 0x1f, 0xfc, + 0x31, 0x35, 0x7a, 0xcf, 0xc9, 0x62, 0x0, 0x8d, + 0xab, 0x2d, 0x88, 0x3, 0xf8, 0x56, 0xb2, 0x50, + 0x40, 0x21, 0x48, 0xce, 0xe5, 0xcb, 0xa1, 0x0, + 0x7c, 0x2b, 0x7b, 0x50, 0xa6, 0x20, 0x1, 0x47, + 0xad, 0xc9, 0x52, 0x0, 0xff, 0xe1, 0x93, 0x5f, + 0xdc, 0x20, 0x80, 0x61, 0x46, 0xbc, 0x10, 0xf, + 0x85, 0x6b, 0x25, 0x51, 0xa7, 0x3b, 0x97, 0xa, + 0x40, 0x1f, 0xfc, 0xa1, 0x47, 0xbe, 0xdb, 0x86, + 0x45, 0x9e, 0x83, 0x0, 0xc0, + + /* U+5185 "内" */ + 0x0, 0xff, 0xe8, 0x89, 0x17, 0x8, 0x7, 0xff, + 0xad, 0x6f, 0x77, 0xa1, 0x0, 0x3f, 0xff, 0xe0, + 0x1f, 0xff, 0xf0, 0xf, 0x8, 0xff, 0xf3, 0xc, + 0x40, 0x38, 0xc4, 0x7f, 0xf9, 0xa0, 0x18, 0xa3, + 0x3b, 0xbf, 0xf9, 0x72, 0x80, 0x1c, 0xb5, 0xdd, + 0xff, 0xcb, 0xa5, 0x0, 0xff, 0xfe, 0xa4, 0xf7, + 0xff, 0xff, 0xf, 0xa5, 0x0, 0x30, 0xb5, 0xff, + 0xff, 0xf1, 0x31, 0xc8, 0x3, 0xff, 0x8c, 0x20, + 0x1f, 0xfc, 0x33, 0x17, 0x0, 0xc5, 0xca, 0x1, + 0xff, 0xc4, 0x10, 0xf, 0xfe, 0xc3, 0x71, 0x0, + 0x66, 0x21, 0x0, 0xff, 0xf4, 0x1e, 0xb8, 0x80, + 0x64, 0xe6, 0x20, 0xf, 0xff, 0x31, 0xd3, 0x88, + 0x7, 0xa, 0x4e, 0x61, 0xcc, 0x3, 0xff, 0xc2, + 0x2d, 0xc, 0x20, 0x12, 0x33, 0xc, 0x0, 0x27, + 0x19, 0x87, 0x30, 0xf, 0xfe, 0xe1, 0x3d, 0x4a, + 0x0, 0x44, 0xf3, 0x36, 0xdb, 0x90, 0x4, 0x71, + 0x98, 0x83, 0x0, 0xff, 0xeb, 0x13, 0x56, 0x42, + 0x0, 0x46, 0xfd, 0x4, 0x0, 0x14, 0x8c, 0xb6, + 0x20, 0x8, 0xdf, 0x30, 0xe6, 0x1, 0xff, 0xcf, + 0x25, 0x9c, 0xd9, 0x51, 0x0, 0xa, 0xcf, 0x41, + 0x80, 0x7c, 0x29, 0x39, 0x4a, 0x20, 0x11, 0xc6, + 0xda, 0x88, 0x7, 0xff, 0x20, 0x56, 0x77, 0x54, + 0xc6, 0x1, 0x12, 0xd6, 0x53, 0x10, 0x7, 0xff, + 0x0, 0x56, 0xb2, 0x50, 0x40, 0x2, 0x91, 0x28, + 0x1, 0xff, 0xc7, 0x14, 0x88, 0x28, 0x81, 0x2c, + 0xe6, 0x29, 0x48, 0x3, 0xff, 0x8c, 0x4d, 0x54, + 0x76, 0x8c, 0xd8, 0x40, 0xf, 0xfe, 0x40, 0x89, + 0x6b, 0xfb, 0x69, 0x8c, 0x40, 0x3f, 0xf9, 0x62, + 0x91, 0x2e, 0x60, 0x1f, 0xfc, 0xf1, 0x10, 0x7, + 0xff, 0xfc, 0x3, 0xff, 0x80, 0x24, 0x88, 0x33, + 0xfc, 0x86, 0x60, 0xc, 0x20, 0x1f, 0xfe, 0x4, + 0x8b, 0xcc, 0xfd, 0x28, 0x20, 0x11, 0xeb, 0x80, + 0x7f, 0xf7, 0x85, 0xe9, 0x0, 0x38, 0x46, 0x23, + 0x45, 0x7b, 0xd7, 0x20, + + /* U+5199 "写" */ + 0x0, 0x1c, 0xf7, 0xff, 0xff, 0xba, 0x94, 0x3, + 0xff, 0xfe, 0x1, 0xf2, 0xd7, 0x77, 0xb2, 0x10, + 0x8c, 0xc8, 0xf5, 0xbd, 0xdf, 0xfd, 0xc, 0x83, + 0x0, 0xff, 0xe3, 0x89, 0x88, 0xfc, 0xfa, 0x84, + 0x66, 0x41, 0x11, 0x8, 0xff, 0xf4, 0x8, 0x40, + 0x3f, 0xfa, 0x4, 0x6e, 0x1, 0x8f, 0x98, 0x3, + 0xff, 0xc2, 0x5b, 0x31, 0x14, 0xeb, 0x0, 0x73, + 0xe1, 0x0, 0x63, 0x8d, 0xff, 0xff, 0xe6, 0xe3, + 0x88, 0xa, 0xd4, 0x47, 0x7b, 0x80, 0x78, 0x51, + 0xdf, 0x90, 0x80, 0x31, 0xea, 0x80, 0x70, 0x8f, + 0xff, 0x41, 0xc4, 0x2, 0x36, 0x77, 0xe5, 0x20, + 0xf, 0xfe, 0x30, 0xaa, 0x8, 0x4, 0x51, 0x9d, + 0xdf, 0xfc, 0xfb, 0x61, 0x0, 0xff, 0xe8, 0xa6, + 0x18, 0x4, 0x28, 0x82, 0x0, 0xff, 0xf7, 0x1e, + 0xa0, 0x6, 0x16, 0xce, 0xef, 0xfe, 0x85, 0xb0, + 0x80, 0x7f, 0xf3, 0xc9, 0x10, 0x20, 0x1f, 0x8, + 0xff, 0xf4, 0x0, 0xc4, 0x3, 0xff, 0x9e, 0xde, + 0x4, 0x20, 0x4d, 0x7f, 0xff, 0xfc, 0xbb, 0x61, + 0x0, 0xc4, 0x20, 0x1f, 0xfd, 0x4, 0x8c, 0xde, + 0xfd, 0x94, 0x0, 0xff, 0xe5, 0x89, 0x8, 0x4, + 0x42, 0xe0, 0x1f, 0xfc, 0x51, 0x23, 0x3f, 0xfe, + 0xe2, 0x6b, 0x0, 0x70, 0xb1, 0x9f, 0xff, 0x0, + 0x80, 0x33, 0xce, 0x67, 0xff, 0x72, 0xdc, 0x80, + 0x31, 0x35, 0x66, 0x7f, 0xdb, 0x66, 0x1, 0x19, + 0x17, 0xff, 0x70, 0x44, 0x1, 0xe1, 0x22, 0xff, + 0xe1, 0x70, 0x6, 0x59, 0xdd, 0xff, 0xee, 0x38, + 0x80, 0x65, 0xbd, 0xdf, 0xfe, 0xe, 0x39, 0x80, + 0x7f, 0xf7, 0xca, 0xd0, 0x40, 0x23, 0xd7, 0x0, + 0xff, 0xf6, 0x92, 0xc3, 0x10, 0x4, 0x48, 0xa4, + 0x1, 0xff, 0xdf, 0x28, 0xdf, 0xfd, 0xdd, 0xdf, + 0xed, 0xa5, 0x10, 0x8, 0xee, 0x48, 0x3, 0xff, + 0xc0, 0x55, 0x43, 0x0, 0x84, 0x78, 0x2, 0x12, + 0x35, 0x8c, 0xd6, 0x10, 0xf, 0xff, 0x11, 0x3e, + 0x7f, 0xff, 0xdd, 0xb9, 0x4e, 0x62, 0x1, 0xff, + 0xca, + + /* U+51B2 "冲" */ + 0x0, 0xff, 0xee, 0xa, 0xd7, 0x76, 0xc7, 0x20, + 0xf, 0xfe, 0x68, 0x9a, 0xa1, 0x0, 0x7f, 0xf4, + 0x8c, 0x47, 0xc0, 0x1f, 0xfc, 0xc1, 0x49, 0xcc, + 0x55, 0xee, 0xa5, 0x48, 0x3, 0xff, 0xda, 0x2b, + 0x88, 0x40, 0x11, 0x35, 0x6e, 0x42, 0x8, 0x7, + 0xff, 0xa8, 0x56, 0x77, 0x25, 0x4, 0x2, 0x37, + 0xbc, 0x94, 0x10, 0x49, 0xef, 0xff, 0xfe, 0x17, + 0x4a, 0x0, 0x62, 0x8d, 0xff, 0xff, 0xe2, 0x52, + 0x80, 0x7f, 0x1b, 0x5e, 0x52, 0x88, 0x0, 0x45, + 0xce, 0x20, 0x1f, 0xfe, 0x1, 0x30, 0xf, 0xfe, + 0x1, 0x2d, 0x65, 0x53, 0x71, 0xcc, 0x3, 0xf9, + 0x22, 0xef, 0xf5, 0x31, 0x0, 0x61, 0x59, 0xbb, + 0xfe, 0x84, 0x0, 0xff, 0xe5, 0x12, 0xa8, 0xc0, + 0x3f, 0xe1, 0x24, 0x4f, 0xf7, 0xb0, 0x6, 0x3d, + 0x44, 0xff, 0x88, 0x40, 0x3f, 0xff, 0xe0, 0x1f, + 0xff, 0xf0, 0xf, 0xe1, 0x33, 0x8, 0x7, 0xff, + 0xd1, 0x23, 0x73, 0xe9, 0x88, 0x3, 0xf0, 0x9a, + 0x99, 0xfe, 0x5e, 0x70, 0xe, 0xe7, 0x33, 0xfe, + 0x52, 0x10, 0xf, 0xfe, 0x31, 0x3c, 0x30, 0x80, + 0xae, 0xa0, 0x80, 0x7e, 0x59, 0xcc, 0xfd, 0x6e, + 0x60, 0x18, 0x9a, 0xb3, 0x3f, 0xa5, 0x0, 0x3f, + 0xf8, 0xa2, 0xb1, 0x3, 0x0, 0x85, 0xa1, 0x84, + 0x3, 0xff, 0xd6, 0x73, 0xa, 0x1, 0x92, 0x20, + 0x60, 0x1f, 0xc2, 0xd9, 0xff, 0xfb, 0xa5, 0x0, + 0x31, 0x46, 0xff, 0xff, 0x63, 0x8, 0x7, 0xff, + 0x4, 0x9b, 0xdc, 0x80, 0x21, 0x68, 0x61, 0x0, + 0xc9, 0x7b, 0x99, 0x6d, 0x98, 0x7, 0xff, 0x3c, + 0xe7, 0xfb, 0xb5, 0x30, 0x7, 0xa, 0xcc, 0x18, + 0x6, 0x48, 0x81, 0x80, 0x7c, 0x46, 0x7c, 0x40, + 0x1f, 0xfd, 0x21, 0x1f, 0x0, 0x61, 0x5b, 0xb2, + 0x8, 0x4, 0x51, 0x2c, 0x20, 0x1f, 0xfe, 0xb3, + 0x30, 0x18, 0x4, 0x2d, 0x2e, 0x40, 0x1f, 0xfe, + 0xd2, 0x6a, 0xdc, 0x98, 0xa8, 0x40, 0xf, 0xff, + 0x99, 0xb3, 0xa0, 0x80, 0x7f, 0xff, 0xc0, 0x3f, + 0xfd, 0x0, + + /* U+51CF "减" */ + 0x0, 0xff, 0xff, 0x80, 0x7f, 0xf8, 0x16, 0xff, + 0xf6, 0xc2, 0x1b, 0xde, 0x53, 0x18, 0x7, 0xff, + 0x10, 0x95, 0x46, 0x1, 0xff, 0xe0, 0x15, 0xd5, + 0x35, 0x9c, 0xd9, 0x51, 0x0, 0xfe, 0x37, 0xcd, + 0xaa, 0x66, 0x21, 0x4, 0x3, 0xff, 0xb8, 0xed, + 0x5f, 0x6e, 0x60, 0x4d, 0x54, 0x61, 0x0, 0xf8, + 0xda, 0x54, 0x80, 0x6, 0xf7, 0x90, 0x60, 0x1c, + 0x23, 0xff, 0xcd, 0x30, 0xf, 0x98, 0x44, 0xb, + 0x3d, 0x2c, 0xc9, 0x93, 0x8, 0x7, 0xe1, 0x5a, + 0xfa, 0x51, 0x0, 0x13, 0xed, 0x28, 0xa4, 0xff, + 0x77, 0xff, 0x32, 0x50, 0x3, 0x13, 0xdf, 0x77, + 0x6c, 0xb3, 0x27, 0x24, 0xc0, 0x3f, 0xe2, 0x5a, + 0xa3, 0x10, 0x9, 0x10, 0x40, 0x3f, 0xfc, 0x66, + 0x20, 0x1f, 0xfc, 0x34, 0x9f, 0xdc, 0xc4, 0x20, + 0xb8, 0x7, 0x14, 0x6f, 0xff, 0xff, 0x1a, 0x94, + 0x3, 0x13, 0xe7, 0xff, 0xfb, 0x60, 0xc0, 0x3f, + 0xf8, 0x84, 0x50, 0x7, 0xff, 0x0, 0x51, 0xea, + 0xbf, 0xf8, 0x6c, 0x46, 0x1, 0x8c, 0x40, 0x3f, + 0xfc, 0x45, 0x8a, 0xbf, 0xfc, 0x3c, 0xf0, 0x10, + 0x8, 0x41, 0xc0, 0x23, 0x7b, 0xcb, 0xa7, 0x41, + 0x0, 0xff, 0xe6, 0x38, 0x7, 0xc2, 0xd7, 0xff, + 0xff, 0xc3, 0xab, 0x13, 0x0, 0xc6, 0x1, 0x1d, + 0xca, 0x1a, 0x23, 0xdc, 0x40, 0x3f, 0xf8, 0x8b, + 0x37, 0x8, 0x20, 0x1f, 0xfc, 0x31, 0x1f, 0xfe, + 0x8, 0xf, 0x88, 0x6, 0x12, 0x3, 0xb6, 0x10, + 0x1, 0x35, 0x98, 0x7, 0xff, 0xc, 0x5e, 0x59, + 0x1e, 0xe9, 0x84, 0x0, 0x20, 0x10, 0x88, 0xca, + 0x37, 0xfb, 0xbf, 0xf8, 0x34, 0xe2, 0xe0, 0x19, + 0xc5, 0xa9, 0x84, 0x0, 0x4b, 0x66, 0x1, 0xff, + 0xc3, 0x39, 0xa3, 0x0, 0x93, 0x5c, 0x40, 0xc0, + 0x33, 0x80, 0x7c, 0x48, 0xcd, 0xc8, 0x40, 0x1c, + 0xa4, 0x20, 0x11, 0x5d, 0x38, 0x80, 0xa, 0xa8, + 0x60, 0x1f, 0xfc, 0x34, 0x96, 0x20, 0x9, 0x79, + 0x84, 0x44, 0x20, 0x18, 0x48, 0x40, 0x30, 0xa7, + 0xcc, 0xf7, 0x38, 0x7, 0x17, 0xa8, 0x4, 0x26, + 0x61, 0x1, 0x58, 0x72, 0x0, 0xff, 0xe1, 0xb, + 0x7a, 0x88, 0x0, 0x5a, 0x54, 0x0, 0x62, 0xc0, + 0x11, 0x11, 0x80, 0x3f, 0xf9, 0x2, 0xa6, 0x20, + 0x1e, 0x39, 0x85, 0x0, 0xff, 0xe1, 0x9c, 0xda, + 0x0, 0x44, 0xd6, 0x60, 0x13, 0x71, 0x0, 0x4d, + 0xc4, 0x1, 0xc2, 0x9f, 0x55, 0xd2, 0x80, 0x1e, + 0x1f, 0x30, 0xc, 0x2d, 0xe, 0x40, 0x1f, 0xfc, + 0x21, 0x58, 0x72, 0x0, 0x92, 0xe4, 0x80, 0x23, + 0xc4, 0x0, 0x88, 0xd0, 0x3, 0xe2, 0x45, 0x5e, + 0x31, 0x0, 0x87, 0x27, 0xe0, 0x80, 0x3c, 0xe0, + 0x18, 0x95, 0xd0, 0x40, 0x3c, 0x71, 0x4, 0x0, + 0x85, 0xbd, 0x84, 0x2, 0x14, 0x41, 0x0, 0x5, + 0x2c, 0x80, 0x3c, 0x2d, 0x7f, 0xff, 0x76, 0x3b, + 0x99, 0x84, 0x1, 0xe1, 0x54, 0x20, 0x9, 0xb2, + 0x6f, 0xa9, 0x40, 0x31, 0x6a, 0xa0, 0x81, 0x4d, + 0xa0, 0x6, 0x26, 0xb3, 0x0, 0x93, 0x4c, 0x2, + 0x2a, 0x9a, 0xba, 0x50, 0xc, 0x29, 0x15, 0xae, + 0x60, 0x1, 0x37, 0x72, 0x0, 0x47, 0x6a, 0x40, + 0x1, 0x31, 0x0, 0x84, 0x3, 0xa, 0x45, 0xff, + 0x63, 0x90, 0x6, 0x58, 0x93, 0x0, 0xb, 0x72, + 0x0, 0x71, 0x22, 0xa8, 0xc4, 0x96, 0x33, 0xed, + 0xd0, 0x40, 0x52, 0x37, 0x22, 0x1c, 0xa0, 0x11, + 0xcc, 0x33, 0x31, 0xc0, 0x5, 0xac, 0x1, 0xf8, + 0x46, 0x0, 0xc2, 0xf2, 0xa2, 0x0, 0x38, 0x82, + 0x0, 0x7f, 0x92, 0x72, 0x9c, 0xc4, 0x0, 0x6d, + 0x59, 0x6e, 0x60, 0x12, 0xc4, 0xc, 0x0, 0x2b, + 0x32, 0x62, 0x2, 0x54, 0x20, 0xf, 0xfe, 0x18, + 0xbe, 0xdb, 0xab, 0xfb, 0x8, 0x7, 0xfc, 0x93, + 0xb0, 0xa8, 0xf7, 0xd9, 0x2a, 0x40, 0x1f, 0x13, + 0xed, 0x31, 0x88, 0x0, 0x4d, 0xe6, 0x46, 0x1, + 0x0, + + /* U+51FA "出" */ + 0x0, 0xff, 0xe7, 0x9, 0x17, 0x8, 0x7, 0xff, + 0xa1, 0x2f, 0x77, 0xad, 0x0, 0x3f, 0xff, 0xe0, + 0x1f, 0xfc, 0x34, 0x7a, 0xad, 0x8, 0x20, 0x1f, + 0xfd, 0x62, 0x69, 0xaa, 0xce, 0x60, 0x1f, 0x9, + 0x62, 0xae, 0x43, 0x30, 0x7, 0xff, 0x59, 0xbd, + 0x95, 0x76, 0x30, 0x7, 0xff, 0xfc, 0x3, 0xff, + 0xfe, 0x1, 0xff, 0xff, 0x0, 0xff, 0xe8, 0x96, + 0xa2, 0xaf, 0xff, 0x3, 0x18, 0x3, 0x9b, 0x15, + 0x7f, 0xf8, 0x38, 0xa0, 0x1f, 0xfc, 0x91, 0x59, + 0xaa, 0xff, 0xe0, 0x39, 0x80, 0x71, 0xbd, 0x57, + 0xff, 0x5, 0xcc, 0x3, 0xff, 0x86, 0x64, 0x67, + 0xff, 0xc7, 0x21, 0x0, 0xe1, 0x23, 0x3f, 0xfe, + 0x41, 0x8, 0x7, 0xc2, 0xb3, 0x99, 0xff, 0xc7, + 0x94, 0x0, 0xe4, 0x9c, 0xcf, 0xfe, 0x44, 0xa0, + 0x7, 0x2d, 0x7f, 0xee, 0x93, 0x0, 0xff, 0xee, + 0x1c, 0xf7, 0xfe, 0xb6, 0x0, 0xff, 0xff, 0x80, + 0x7f, 0xff, 0xc0, 0x3f, 0xff, 0xe0, 0x1f, 0xff, + 0xf0, 0xf, 0xc2, 0xd9, 0xff, 0xff, 0xc3, 0xb5, + 0x0, 0xe5, 0xbf, 0xff, 0xfe, 0x26, 0x30, 0x80, + 0x7f, 0xff, 0xd2, 0x73, 0x3f, 0xfb, 0x92, 0x80, + 0x1f, 0xfc, 0x31, 0x25, 0x33, 0xff, 0xee, 0x29, + 0x90, 0x8f, 0x18, 0x0, + + /* U+5200 "刀" */ + 0x0, 0xe2, 0x7b, 0xdd, 0xff, 0xf5, 0xdb, 0x10, + 0x7, 0xbd, 0x88, 0xbf, 0xfd, 0x6c, 0x20, 0x1e, + 0x3b, 0x8a, 0xaf, 0xfe, 0x2c, 0xa9, 0x0, 0x71, + 0x34, 0xd5, 0x7f, 0xf2, 0x21, 0x4, 0x3, 0xff, + 0x80, 0x26, 0xab, 0xff, 0xc6, 0x4d, 0x10, 0xe, + 0x7c, 0x65, 0x5f, 0xfe, 0x49, 0x98, 0x3, 0xff, + 0xa8, 0x3e, 0x20, 0x1c, 0x62, 0x1, 0xff, 0xed, + 0x13, 0x0, 0xc2, 0x27, 0x0, 0xff, 0xe4, 0x88, + 0x7, 0x84, 0x3, 0xff, 0x9e, 0xe0, 0x20, 0x18, + 0xfc, 0x40, 0x3f, 0xf9, 0x66, 0x1, 0xff, 0xd3, + 0x12, 0x50, 0xe, 0x11, 0x18, 0x7, 0xff, 0x28, + 0x40, 0x3e, 0x30, 0xf, 0xfe, 0x62, 0xf9, 0x0, + 0x61, 0x55, 0x8, 0x7, 0xff, 0xa8, 0x8d, 0x4, + 0x3, 0x2f, 0x90, 0x7, 0xff, 0x29, 0xc0, 0x40, + 0x33, 0x88, 0x7, 0xff, 0x2c, 0x56, 0xc8, 0x3, + 0x1e, 0x20, 0x80, 0x7f, 0xf2, 0x84, 0xc0, 0x3e, + 0x10, 0xf, 0xfe, 0x49, 0x35, 0x98, 0x6, 0x24, + 0x52, 0x0, 0xff, 0xe6, 0x8, 0x7, 0x9, 0x80, + 0x7f, 0xf2, 0x52, 0xe4, 0xc0, 0x31, 0x2d, 0x10, + 0x7, 0xff, 0x2c, 0x4d, 0xc0, 0x3c, 0x20, 0x1f, + 0xfc, 0x72, 0x78, 0x61, 0x0, 0xc9, 0x12, 0x40, + 0x1f, 0xfc, 0xc3, 0xe1, 0x0, 0xc2, 0x6e, 0x1, + 0xff, 0xc5, 0x38, 0xf8, 0x30, 0xc, 0x4f, 0xa, + 0x20, 0x1f, 0xfc, 0xd6, 0x12, 0x0, 0xc7, 0xc2, + 0x1, 0xff, 0xc2, 0x25, 0xad, 0x72, 0x0, 0xc4, + 0xfd, 0x6, 0x1, 0xff, 0xce, 0x13, 0x50, 0xe, + 0x61, 0x20, 0xf, 0xf8, 0xde, 0xf2, 0x94, 0x40, + 0x31, 0xc7, 0x41, 0x80, 0x7f, 0xf3, 0xc5, 0xf0, + 0xc0, 0x30, 0x9a, 0x80, 0x7c, 0x4b, 0x17, 0xd9, + 0x8, 0x20, 0x18, 0xde, 0xf5, 0xcc, 0x3, 0xff, + 0x84, 0x6a, 0xec, 0xd9, 0x57, 0xcd, 0x15, 0x8, + 0x1, 0xc9, 0x86, 0x1, 0x85, 0x6f, 0x29, 0xd0, + 0x40, 0x30, 0xa4, 0x66, 0x21, 0x4, 0x3, 0xff, + 0x88, 0x47, 0x73, 0x3a, 0xab, 0xd2, 0xe8, 0x20, + 0x18, 0xe2, 0x8, 0x1, 0xc2, 0xb5, 0x46, 0x20, + 0x13, 0x69, 0xcf, 0xb7, 0x30, 0xf, 0xfe, 0x40, + 0xa5, 0x98, 0x7, 0xfc, 0x24, 0x8d, 0x39, 0x87, + 0x20, 0xf, 0xc2, 0x93, 0x9d, 0xf9, 0x2c, 0x62, + 0x1, 0xff, 0xcc, 0x27, 0xcf, 0xff, 0xfb, 0xb6, + 0xe5, 0x8c, 0x3, 0xe0, + + /* U+5206 "分" */ + 0x0, 0xff, 0xe4, 0x8a, 0xbc, 0x32, 0x99, 0x0, + 0x7f, 0xf0, 0x84, 0x91, 0xa1, 0xd0, 0x40, 0x3f, + 0xfb, 0xa7, 0x17, 0xf, 0x35, 0x9c, 0xe4, 0x1, + 0xff, 0x24, 0x65, 0xcb, 0xc5, 0x42, 0x0, 0x7f, + 0xf6, 0x85, 0xa1, 0x84, 0x2, 0x16, 0x87, 0x20, + 0xf, 0xf9, 0x22, 0xd0, 0x2, 0x16, 0x98, 0x30, + 0xf, 0xfe, 0xb0, 0xad, 0xc2, 0x0, 0x64, 0x88, + 0x20, 0x7, 0xff, 0x8, 0x56, 0x60, 0xc0, 0x22, + 0x7e, 0x83, 0x0, 0xff, 0xe9, 0xa, 0xd5, 0xa8, + 0x80, 0x44, 0xf0, 0xc2, 0x1, 0xff, 0xc5, 0x27, + 0xf7, 0x20, 0x8, 0x9f, 0x69, 0x44, 0x3, 0xff, + 0x9a, 0x4d, 0x56, 0x82, 0x1, 0x13, 0x4c, 0x18, + 0x7, 0xff, 0x24, 0xe3, 0x9c, 0x80, 0x21, 0x5a, + 0xd7, 0x30, 0xf, 0xfe, 0x40, 0xad, 0x7c, 0xa0, + 0x80, 0x47, 0x1f, 0x28, 0x1, 0xff, 0xcd, 0x38, + 0xf9, 0x41, 0x0, 0x8e, 0x36, 0xd8, 0x80, 0x3f, + 0xf8, 0x42, 0x93, 0x94, 0xa4, 0x1, 0xa, 0xd6, + 0xb9, 0x0, 0x7f, 0xf4, 0x49, 0xaa, 0x8c, 0x40, + 0x10, 0xa4, 0xe5, 0xb1, 0x0, 0x7e, 0x37, 0xbf, + 0xb6, 0x20, 0xe, 0x49, 0xe6, 0x23, 0x3f, 0xfe, + 0xa9, 0x3e, 0xda, 0x88, 0x6, 0x14, 0x9d, 0xc8, + 0x41, 0x0, 0x1c, 0x74, 0x20, 0x80, 0x63, 0x65, + 0x34, 0x8b, 0xcc, 0xff, 0xec, 0xdc, 0x84, 0x53, + 0x10, 0x6, 0x10, 0xf7, 0x10, 0x1, 0xc6, 0x5b, + 0x99, 0x24, 0x66, 0x27, 0xd8, 0x3, 0xff, 0xba, + 0x26, 0x4b, 0x39, 0x6c, 0xaf, 0x58, 0xe6, 0x1, + 0xc2, 0x91, 0x9b, 0x6e, 0x60, 0x5, 0xaf, 0xff, + 0xfa, 0xd4, 0x3, 0x8e, 0x3b, 0xff, 0xff, 0x83, + 0xd2, 0x80, 0x1e, 0x70, 0x0, 0xa4, 0xd4, 0x20, + 0x7, 0xff, 0x48, 0xb1, 0xc0, 0x30, 0xaa, 0x8, + 0x7, 0xff, 0xc5, 0xc, 0x80, 0x32, 0xe1, 0x80, + 0x7f, 0xf1, 0x1c, 0x3, 0x84, 0x3, 0xff, 0xb2, + 0x2d, 0x48, 0x1, 0x8f, 0x1c, 0x3, 0xff, 0x88, + 0x20, 0x1c, 0x60, 0x1f, 0xfd, 0x93, 0x9b, 0x30, + 0xc, 0x94, 0xc4, 0x1, 0xff, 0xc3, 0x30, 0x10, + 0xe, 0xf1, 0x0, 0xff, 0xea, 0x8b, 0x43, 0x90, + 0x4, 0x2d, 0xec, 0x20, 0x1f, 0xfc, 0x41, 0xf3, + 0x0, 0xc2, 0x23, 0x0, 0xff, 0xe9, 0x9c, 0x6c, + 0xa0, 0x6, 0x39, 0xb4, 0x0, 0xff, 0xe3, 0x31, + 0x8, 0x6, 0x63, 0x10, 0xf, 0xfe, 0x78, 0xa4, + 0xe6, 0x1c, 0xc0, 0x31, 0xc7, 0x39, 0x0, 0x7f, + 0xf1, 0x8b, 0x5c, 0x3, 0x9, 0x30, 0x7, 0xff, + 0x2c, 0x91, 0xeb, 0x7a, 0xd8, 0xc0, 0x31, 0xbe, + 0x6b, 0x90, 0x7, 0x84, 0x7c, 0x1, 0xe1, 0x4b, + 0x52, 0x0, 0xcb, 0xa6, 0x1, 0xff, 0xc7, 0x38, + 0xdf, 0xdb, 0x85, 0x20, 0xc, 0x6d, 0x3b, 0x90, + 0x62, 0x1, 0xf8, 0xa7, 0xfb, 0xaf, 0xff, 0x75, + 0xb1, 0x0, 0x42, 0xbe, 0xa0, 0x1f, 0xfc, 0x83, + 0x98, 0x51, 0x0, 0x9, 0xb4, 0x5f, 0x64, 0xb1, + 0x0, 0x7f, 0xf0, 0xe, 0xd8, 0x40, 0x3f, 0xc2, + 0x46, 0xd3, 0xb4, 0x80, 0x1f, 0xfc, 0xa1, 0x5b, + 0xcd, 0xee, 0x64, 0xba, 0x8, 0x7, 0xff, 0x14, + 0xe3, 0xbf, 0xff, 0xdd, 0xb9, 0x2c, 0x60, 0x1f, + 0xfc, 0x60, + + /* U+5207 "切" */ + 0x0, 0xff, 0x12, 0xc4, 0x67, 0x52, 0x0, 0xff, + 0xf8, 0x36, 0x3b, 0xe9, 0xc1, 0x0, 0xff, 0x9, + 0x17, 0xff, 0x60, 0x44, 0x1, 0xff, 0xd1, 0x38, + 0xcd, 0xdf, 0xfe, 0xbd, 0x20, 0x7, 0xff, 0x48, + 0x40, 0x3f, 0xfe, 0xe7, 0x1d, 0xff, 0xfb, 0x5c, + 0x80, 0x31, 0x3e, 0xff, 0xff, 0xba, 0xc, 0x3, + 0xff, 0xa6, 0x24, 0x68, 0xcf, 0x13, 0xa, 0x20, + 0x18, 0x40, 0x3e, 0xf0, 0xf, 0xfe, 0x90, 0x91, + 0x80, 0x61, 0x7f, 0xcd, 0xef, 0xf7, 0x6e, 0x5c, + 0xc3, 0xb3, 0xfa, 0x0, 0x78, 0xc0, 0x30, 0x81, + 0x80, 0x7f, 0xf2, 0x8d, 0xef, 0x7b, 0xfd, 0xd2, + 0xa0, 0x1c, 0x26, 0x62, 0x10, 0x8, 0x48, 0xd1, + 0x59, 0xe7, 0xdc, 0x3, 0x84, 0x3, 0xc2, 0x1, + 0xff, 0xcb, 0x10, 0x72, 0x10, 0xf, 0xf1, 0xbd, + 0x5e, 0xf7, 0xfb, 0xb7, 0x2e, 0xa6, 0x19, 0x48, + 0x3, 0x38, 0x7, 0x9c, 0x4, 0x3, 0xff, 0x94, + 0x4d, 0xf7, 0x9b, 0xdf, 0x6c, 0x1, 0x85, 0x6d, + 0x50, 0x84, 0x3, 0xff, 0x88, 0x26, 0x20, 0x18, + 0x4c, 0x3, 0xfe, 0x30, 0xf, 0xfe, 0x0, 0x9a, + 0x19, 0x8, 0x7, 0xff, 0x44, 0x49, 0x80, 0x31, + 0x11, 0x80, 0x3f, 0xf8, 0x22, 0x1, 0x84, 0x3, + 0xff, 0xb8, 0xbc, 0x40, 0x19, 0xb4, 0xc0, 0x3f, + 0xf8, 0x1e, 0x1, 0xff, 0xd5, 0x17, 0xbd, 0xa8, + 0x52, 0x0, 0xc2, 0x44, 0x10, 0x8, 0x8d, 0x80, + 0x3f, 0xf8, 0x2, 0x6, 0x1, 0xff, 0xd4, 0x30, + 0x62, 0x57, 0x95, 0x10, 0x8, 0xb9, 0x40, 0x33, + 0x69, 0x80, 0x7f, 0xf0, 0x44, 0x3, 0xff, 0x90, + 0x20, 0x10, 0x9b, 0x0, 0x79, 0xb4, 0x80, 0x27, + 0x11, 0x0, 0xa, 0xd4, 0x40, 0x22, 0x37, 0x0, + 0xff, 0xe0, 0xb9, 0x88, 0x7, 0x8, 0x7, 0xfc, + 0xdc, 0x60, 0x19, 0x6b, 0xff, 0xd6, 0xa0, 0x11, + 0x1a, 0x0, 0xe, 0x94, 0x80, 0x22, 0x5b, 0x20, + 0xf, 0xfe, 0x8, 0x88, 0x3, 0x8c, 0x3, 0xff, + 0x80, 0x4d, 0xa, 0x40, 0x1f, 0xfc, 0x12, 0x58, + 0x92, 0x15, 0x87, 0x20, 0x8, 0x96, 0x8c, 0x3, + 0xff, 0x82, 0x24, 0xe0, 0x18, 0x44, 0xe0, 0x1f, + 0xfc, 0x1, 0x5a, 0xdf, 0xee, 0x6e, 0xfe, 0xef, + 0xda, 0x50, 0x4b, 0xb2, 0x0, 0x64, 0xb9, 0x20, + 0xf, 0xfe, 0x11, 0x71, 0x0, 0x63, 0xf1, 0x0, + 0xff, 0xe2, 0x88, 0x88, 0xbf, 0x8, 0x0, 0xdf, + 0x6d, 0x44, 0x2, 0x38, 0x96, 0x10, 0xf, 0xfe, + 0x10, 0xa2, 0x88, 0x6, 0x61, 0x20, 0xf, 0xfe, + 0x70, 0xa4, 0x66, 0xc1, 0x80, 0x42, 0x93, 0xce, + 0x40, 0x18, 0x8d, 0xc, 0xe2, 0x2c, 0x6b, 0x74, + 0x60, 0x18, 0x4d, 0x40, 0x3f, 0xf9, 0x84, 0xd7, + 0xf6, 0xe6, 0x20, 0x11, 0x3d, 0x5b, 0x10, 0x7, + 0x86, 0xe7, 0x32, 0xdd, 0xd9, 0x4a, 0x40, 0x18, + 0xe6, 0xcc, 0x3, 0xff, 0x98, 0x4d, 0x12, 0x60, + 0x2, 0x59, 0xcd, 0x84, 0x0, 0xfe, 0x3c, 0x41, + 0x0, 0xfc, 0x24, 0x6b, 0x17, 0xae, 0x60, 0x1f, + 0xfc, 0xf3, 0x7d, 0xdb, 0x29, 0x8c, 0x3, 0xff, + 0x82, 0x93, 0xdf, 0xff, 0xbb, 0x72, 0x9d, 0x4, + 0x3, 0x80, + + /* U+5220 "删" */ + 0x0, 0xf8, 0x4c, 0xff, 0xf8, 0x64, 0x20, 0x1, + 0x23, 0x3f, 0xfe, 0x19, 0x0, 0x7f, 0xf0, 0x85, + 0x1e, 0x66, 0x73, 0x0, 0xfc, 0x4d, 0xf9, 0x9f, + 0xfc, 0x28, 0x50, 0x2, 0xde, 0xe6, 0x7f, 0xf0, + 0x7a, 0x8c, 0x3, 0xff, 0x82, 0x66, 0xb6, 0x6b, + 0x14, 0x40, 0x3f, 0xf8, 0x24, 0x8c, 0xd2, 0x98, + 0x80, 0x7f, 0xf0, 0x4d, 0x59, 0xa4, 0x20, 0xf, + 0xe1, 0x48, 0x99, 0x3a, 0x8, 0x7, 0xff, 0x31, + 0xfa, 0x66, 0x8b, 0x30, 0xf, 0xfe, 0x1, 0x24, + 0xce, 0xf4, 0x10, 0xf, 0xc5, 0x8a, 0xcc, 0xac, + 0x20, 0xf, 0xff, 0xf8, 0x7, 0xff, 0xfc, 0x3, + 0xff, 0xfe, 0x1, 0xff, 0xff, 0x0, 0xff, 0xf7, + 0x9c, 0xf7, 0xec, 0x18, 0x4, 0xb5, 0xff, 0x6c, + 0x10, 0x4, 0xb7, 0xfe, 0xb6, 0x10, 0x1, 0x3e, + 0x7f, 0xd6, 0xc2, 0x0, 0x27, 0xce, 0x94, 0x0, + 0xff, 0xff, 0x80, 0x7f, 0xf1, 0xe, 0x7b, 0xf1, + 0xc8, 0x2, 0x49, 0xef, 0xf6, 0x39, 0x0, 0x4b, + 0x5f, 0xea, 0x50, 0x8, 0x5f, 0x3f, 0xeb, 0x50, + 0x8, 0x5a, 0xfa, 0x50, 0x3, 0xff, 0x9c, 0x3e, + 0x1, 0x84, 0xc4, 0x0, 0x3e, 0x1, 0xc2, 0x0, + 0x10, 0xc, 0x60, 0x20, 0x18, 0xc4, 0x0, 0x62, + 0xe0, 0x1f, 0xfd, 0x11, 0xf0, 0xc, 0x62, 0x1, + 0xff, 0xc1, 0x10, 0xf, 0xff, 0x20, 0x98, 0x0, + 0x41, 0xc0, 0x3f, 0xf8, 0x26, 0x20, 0x10, 0xf8, + 0x7, 0xff, 0x75, 0xc0, 0x40, 0x6, 0x20, 0x1f, + 0xfc, 0x11, 0x0, 0xe7, 0x13, 0x0, 0xff, 0xee, + 0x9, 0x80, 0x6f, 0x10, 0xf, 0xfe, 0x8, 0xb8, + 0x6, 0x31, 0x0, 0xff, 0xe1, 0x1c, 0x6f, 0xfb, + 0x60, 0xc0, 0x3f, 0xf8, 0xa2, 0x4c, 0x1, 0x8, + 0x8c, 0x3, 0xff, 0x80, 0xbc, 0x60, 0x1, 0x36, + 0x0, 0xff, 0xee, 0x26, 0x98, 0x0, 0x55, 0x42, + 0x1, 0xff, 0x9, 0x28, 0x4, 0xbc, 0x60, 0x1f, + 0xfd, 0xb4, 0xc4, 0x0, 0x93, 0xc, 0x3, 0xbc, + 0x3, 0x85, 0x30, 0xc0, 0x4, 0x6a, 0x1, 0xe3, + 0x10, 0xf, 0xfe, 0x3f, 0x88, 0x7, 0xf0, 0xb7, + 0xb0, 0x80, 0x17, 0xdd, 0xaf, 0xba, 0xc7, 0x20, + 0x0, 0x9e, 0xfa, 0x80, 0x5, 0x6c, 0x23, 0x7b, + 0xab, 0x50, 0x8, 0x7c, 0x80, 0x38, 0xe3, 0x7f, + 0xbb, 0x6b, 0x90, 0x0, 0x48, 0x82, 0x1, 0x97, + 0x54, 0x8d, 0xe1, 0x49, 0x4c, 0xc2, 0x38, 0x91, + 0xea, 0xed, 0x8c, 0x66, 0x6b, 0x33, 0x6b, 0x88, + 0xc0, 0x26, 0x91, 0xee, 0x20, 0x1c, 0x78, 0x82, + 0x3e, 0x23, 0x47, 0xa8, 0x40, 0xc, 0x26, 0xd5, + 0xb9, 0x4, 0x0, 0x38, 0xdf, 0xfb, 0xb6, 0xe1, + 0x8, 0xda, 0x73, 0x10, 0x60, 0x5, 0xaf, 0xfd, + 0xd9, 0x6e, 0x60, 0x1f, 0x92, 0x7b, 0xff, 0x76, + 0xe5, 0xc2, 0x8, 0x4, + + /* U+524D "前" */ + 0x0, 0xff, 0xff, 0x80, 0x78, 0xd5, 0xe6, 0xf2, + 0xdc, 0xc0, 0x3f, 0xf9, 0xa2, 0xb5, 0xba, 0xb9, + 0x86, 0x31, 0x0, 0xff, 0xe6, 0x9, 0xe3, 0x21, + 0xa4, 0x6d, 0x20, 0x80, 0x7f, 0xf2, 0x4e, 0x61, + 0x48, 0x88, 0xc8, 0x23, 0x0, 0x7f, 0xf3, 0x9, + 0xaa, 0x50, 0x2, 0x15, 0xab, 0x40, 0xf, 0xfe, + 0x31, 0x3f, 0xb9, 0x0, 0x47, 0x1c, 0xe4, 0x1, + 0xff, 0xc2, 0x13, 0x44, 0xff, 0x94, 0xb5, 0x44, + 0x3, 0x36, 0xb2, 0x27, 0xff, 0x12, 0x3a, 0xc, + 0x2, 0x15, 0xa3, 0x64, 0x4f, 0xf1, 0x90, 0x80, + 0x9, 0xbe, 0xef, 0xff, 0x83, 0x2a, 0x20, 0x10, + 0x9b, 0x4d, 0xdf, 0xff, 0x11, 0xcc, 0x3, 0x85, + 0x66, 0xef, 0xff, 0x81, 0xb6, 0x40, 0x3, 0x25, + 0x33, 0xff, 0xf8, 0xaf, 0x0, 0x42, 0xb3, 0x99, + 0xff, 0xf1, 0xb7, 0x30, 0xf, 0x84, 0xd1, 0x3f, + 0xf9, 0xa4, 0x20, 0x1f, 0x8, 0xf0, 0x7, 0xe5, + 0x9c, 0xcd, 0x2a, 0x20, 0x1f, 0xf2, 0x45, 0xdf, + 0xff, 0x32, 0xac, 0x80, 0x38, 0xe3, 0x3b, 0xac, + 0x83, 0x0, 0xe1, 0x32, 0x33, 0xca, 0x40, 0x1f, + 0xfc, 0x62, 0x46, 0x6f, 0xfe, 0x2, 0x98, 0x7, + 0xff, 0xa5, 0xba, 0x67, 0xff, 0x82, 0x84, 0x1, + 0xff, 0xe8, 0x6f, 0x77, 0xff, 0xe0, 0x51, 0x98, + 0x3, 0xff, 0xd0, 0x4b, 0x11, 0xff, 0xc0, 0x64, + 0x10, 0xf, 0xff, 0x41, 0xbd, 0xe6, 0x7f, 0xd2, + 0xa2, 0x1, 0xff, 0xe8, 0x7d, 0x43, 0x3f, 0xf9, + 0x48, 0xc0, 0x3f, 0xfd, 0xb, 0x37, 0x7f, 0xfc, + 0xf, 0x52, 0x0, 0xff, 0xf4, 0x9, 0xa2, 0x7f, + 0xf0, 0xc, 0x80, 0x3f, 0xfd, 0x29, 0x5f, 0xff, + 0xfc, 0xc, 0x72, 0x0, 0xff, 0x87, 0x51, 0x56, + 0x4d, 0x10, 0xf, 0xff, 0x81, 0x2c, 0xd5, 0x52, + 0xa4, 0x1, 0xff, 0xe4, 0x30, 0xf, 0xfe, 0x69, + 0xf3, 0x80, 0x70, 0x80, 0x7f, 0xf3, 0x9, 0xef, + 0x77, 0xce, 0x20, 0x11, 0x70, 0x80, 0x7f, 0x96, + 0xbf, 0xfe, 0xd7, 0x30, 0xc, 0xa4, 0x20, 0x1f, + 0xfc, 0xb2, 0x53, 0x2, 0x2c, 0x22, 0x23, 0x58, + 0xf6, 0x20, 0xf, 0xf2, 0xf2, 0x80, 0x7c, 0x24, + 0x6b, 0x17, 0x8, 0x1, 0xff, 0xc0, 0x5b, 0xff, + 0xd6, 0xa0, 0x1c, 0x51, 0xbf, 0xfd, 0xdb, 0x94, + 0xe6, 0x20, 0x1f, 0xfc, 0x4, 0xaf, 0xff, 0xbb, + 0x72, 0x9d, 0x4, 0x3, 0xf0, + + /* U+5272 "割" */ + 0x0, 0xff, 0xff, 0x80, 0x7f, 0xc7, 0x3d, 0xff, + 0x6b, 0x90, 0x7, 0xff, 0x50, 0x52, 0x23, 0x94, + 0x80, 0x3f, 0xfe, 0x5, 0x8c, 0xef, 0xb1, 0x80, + 0x31, 0xc6, 0xff, 0xff, 0xf0, 0x31, 0x84, 0x2, + 0x28, 0xdf, 0xff, 0xfe, 0xf, 0x4a, 0x0, 0xd, + 0xe6, 0x73, 0x18, 0x7, 0xff, 0x20, 0x4c, 0x3, + 0x9, 0x19, 0xff, 0xf2, 0x88, 0x40, 0x30, 0x80, + 0x42, 0xb8, 0xcd, 0xb5, 0x80, 0x3f, 0xf9, 0xa9, + 0x19, 0x9f, 0x74, 0xa2, 0xac, 0x91, 0xb9, 0x9f, + 0x73, 0x10, 0x7, 0xff, 0x75, 0xc0, 0x3f, 0x36, + 0x33, 0x65, 0xc2, 0x0, 0xff, 0xf0, 0x9c, 0xf7, + 0xd2, 0x9c, 0xf7, 0xff, 0xad, 0x84, 0x2, 0x27, + 0xcf, 0xff, 0xb1, 0xc9, 0xaf, 0xfd, 0x28, 0x1, + 0xff, 0xd5, 0x6c, 0x66, 0xfe, 0x52, 0x0, 0xc2, + 0x6a, 0xcd, 0xfc, 0xf8, 0xc0, 0x1f, 0xfd, 0x93, + 0x69, 0x9f, 0xee, 0x41, 0x0, 0x8d, 0x26, 0x7f, + 0xd0, 0xa4, 0x1, 0xff, 0xd9, 0x27, 0xcf, 0xff, + 0xd6, 0xc2, 0x1, 0x13, 0xe7, 0xff, 0xf4, 0xa0, + 0x7, 0xff, 0x68, 0xd2, 0x9d, 0xff, 0x29, 0x80, + 0x61, 0x36, 0x77, 0xfd, 0x18, 0xc0, 0x1f, 0xfd, + 0x72, 0x33, 0x10, 0x2d, 0xdf, 0xec, 0x70, 0xe, + 0x5f, 0xbb, 0xfc, 0x8c, 0x26, 0x62, 0x0, 0xff, + 0xe9, 0x95, 0x76, 0x67, 0xff, 0x2, 0x50, 0x3, + 0xb, 0x4e, 0x67, 0xff, 0x3, 0x6c, 0xc0, 0x3f, + 0xfa, 0x45, 0x53, 0x55, 0xff, 0xd7, 0x20, 0xf, + 0xfe, 0x99, 0x22, 0xb8, 0x67, 0xff, 0xff, 0x3b, + 0x1, 0xd0, 0xc4, 0x3, 0xff, 0xaf, 0xa8, 0xab, + 0xff, 0xce, 0x4d, 0x0, 0xf0, 0xa7, 0xd5, 0x6f, + 0x70, 0xf, 0xfe, 0x89, 0xc6, 0xff, 0xff, 0xf0, + 0xad, 0x84, 0x3, 0xff, 0x80, 0x48, 0xab, 0x90, + 0x80, 0x3f, 0xfa, 0x2e, 0x26, 0x1, 0xff, 0xc2, + 0x70, 0xf, 0xff, 0xf8, 0x7, 0xff, 0x85, 0x27, + 0xbf, 0xff, 0xf8, 0x58, 0xc2, 0x1, 0xff, 0xc3, + 0x14, 0x66, 0x95, 0x79, 0xa9, 0x4, 0x2, 0x10, + 0x70, 0xf, 0xfe, 0x10, 0x92, 0x27, 0xff, 0xc, + 0xc4, 0x3, 0xff, 0x8a, 0x55, 0x32, 0xaa, 0xe9, + 0x63, 0x0, 0xcb, 0x84, 0x1, 0xff, 0xc2, 0x5b, + 0xab, 0xbf, 0xfe, 0x17, 0xca, 0x19, 0xcf, 0xc0, + 0x1f, 0xe1, 0x7a, 0x41, 0x1f, 0x11, 0xa2, 0xb4, + 0xe5, 0x28, 0x80, 0x0, + + /* U+529F "功" */ + 0x0, 0xff, 0xee, 0x93, 0x5e, 0xee, 0x95, 0x10, + 0xf, 0xff, 0x80, 0xb1, 0x17, 0x18, 0x7, 0xff, + 0x28, 0x95, 0xe2, 0x3f, 0xf9, 0x6e, 0x82, 0x1, + 0xff, 0xdc, 0x6c, 0x87, 0x7f, 0xfe, 0x5d, 0x61, + 0x80, 0x7f, 0xf7, 0x1b, 0x19, 0xbf, 0x21, 0x0, + 0x71, 0x23, 0x37, 0xcb, 0x86, 0x1, 0xff, 0xdc, + 0x25, 0x99, 0xfd, 0xe8, 0x1, 0x85, 0x22, 0x67, + 0xe8, 0x79, 0xdf, 0xff, 0xdb, 0x4, 0x1, 0x92, + 0x7b, 0xff, 0xff, 0x87, 0x6c, 0x20, 0x1f, 0xfd, + 0x43, 0x0, 0xff, 0xfb, 0x1c, 0xe6, 0xef, 0xd6, + 0xc4, 0x1, 0x8d, 0xf3, 0x77, 0xfa, 0xdc, 0x80, + 0x3f, 0xfb, 0x42, 0x45, 0xf9, 0xc4, 0x3, 0x9b, + 0x4c, 0x8b, 0xf9, 0x7c, 0x40, 0x3f, 0xfc, 0x6e, + 0x24, 0x1, 0x8c, 0x40, 0x3f, 0xf8, 0xe2, 0x1, + 0xff, 0xdc, 0x13, 0x0, 0xc4, 0x2e, 0x1, 0xff, + 0xc6, 0x30, 0xf, 0xfe, 0xe0, 0x93, 0x0, 0x61, + 0xf1, 0x0, 0xff, 0x18, 0x8, 0x6, 0x10, 0xf, + 0xfe, 0xeb, 0xe1, 0x80, 0x42, 0xa6, 0x40, 0x1f, + 0xf7, 0x80, 0x7f, 0xf4, 0x5c, 0x4d, 0x19, 0xe2, + 0xae, 0xce, 0x60, 0x1c, 0x98, 0x80, 0x19, 0x31, + 0x0, 0x3f, 0xe1, 0x0, 0xf8, 0x40, 0x3f, 0xf8, + 0x2, 0x66, 0x20, 0xc, 0x2d, 0x7d, 0x97, 0x30, + 0xea, 0x88, 0xc6, 0x0, 0xc7, 0xa8, 0x1, 0x8f, + 0x10, 0x3, 0xff, 0x82, 0x26, 0x1, 0x8c, 0x3, + 0xa, 0x45, 0x5e, 0x6f, 0xfb, 0xb2, 0x10, 0x3, + 0xfc, 0x24, 0x8a, 0xf3, 0xee, 0x1, 0x2c, 0xb8, + 0x80, 0x45, 0x68, 0x20, 0x1f, 0xfc, 0x7, 0x31, + 0x0, 0x84, 0x4e, 0x1, 0x9, 0x1a, 0xa1, 0x90, + 0x7, 0x84, 0x91, 0x9e, 0x6b, 0x37, 0xfb, 0x6e, + 0xa1, 0x90, 0x80, 0xa2, 0xa, 0x20, 0x11, 0xd2, + 0x90, 0x7, 0xff, 0x4, 0x84, 0x3, 0x1f, 0x88, + 0x6, 0x4c, 0x43, 0x46, 0x89, 0xbc, 0xef, 0xed, + 0xb9, 0x86, 0x53, 0x20, 0xf, 0xc7, 0x1e, 0xe4, + 0x1, 0xb, 0x43, 0x90, 0x7, 0xff, 0x4, 0xb9, + 0x80, 0x33, 0x9, 0x80, 0x62, 0x7b, 0xcb, 0x97, + 0x64, 0x31, 0x0, 0xff, 0xe1, 0x9b, 0xde, 0xb9, + 0x0, 0x42, 0xd5, 0x8, 0x1, 0xff, 0xc3, 0x43, + 0x20, 0xc, 0x44, 0x10, 0xf, 0xfe, 0x71, 0x2c, + 0xe6, 0x21, 0x4, 0x2, 0x27, 0xd9, 0x41, 0x0, + 0x9, 0x19, 0x88, 0xb0, 0x88, 0x88, 0x91, 0x48, + 0x1, 0x8f, 0xd4, 0x3, 0xff, 0x98, 0x4f, 0x9b, + 0x4c, 0x60, 0x18, 0xde, 0xf2, 0xc, 0x3, 0xcf, + 0x19, 0xbb, 0xbb, 0x9b, 0xab, 0x73, 0x0, 0xc9, + 0x2e, 0x20, 0x1f, 0xfc, 0xc2, 0x7e, 0x94, 0x1, + 0x36, 0xad, 0xc8, 0x41, 0x0, 0xf8, 0x53, 0x50, + 0x3, 0xf8, 0x48, 0xd6, 0x72, 0xd4, 0x40, 0x3f, + 0xf9, 0xe4, 0xd5, 0xdf, 0x92, 0xa4, 0x1, 0xff, + 0xc0, 0x16, 0xbf, 0xff, 0xee, 0xdc, 0xa6, 0x30, + 0xf, 0x0, + + /* U+52A0 "加" */ + 0x0, 0xff, 0xe0, 0xb, 0x67, 0xfe, 0xc6, 0x10, + 0xf, 0xff, 0xf8, 0x7, 0xff, 0xfc, 0x3, 0xc2, + 0x6c, 0xef, 0xff, 0xca, 0x52, 0x0, 0xff, 0xef, + 0x15, 0xc4, 0x7f, 0xf2, 0xf9, 0xc0, 0x38, 0x9f, + 0x3b, 0xbe, 0x93, 0x0, 0xc7, 0x3d, 0xdf, 0xfc, + 0x29, 0x40, 0xf, 0xf0, 0x9a, 0x27, 0xf1, 0x90, + 0x7, 0xff, 0x7, 0xc4, 0x7e, 0x0, 0xff, 0x8, + 0xff, 0xf0, 0xb, 0x94, 0x3, 0xf8, 0x5f, 0xee, + 0xff, 0xbd, 0x48, 0x3, 0xfe, 0x2a, 0xec, 0xcf, + 0x53, 0x10, 0x6, 0x36, 0xbc, 0xce, 0xb7, 0x30, + 0xe, 0x10, 0xf, 0xfe, 0xc9, 0x19, 0xfc, 0xfc, + 0x1, 0xcf, 0xe8, 0x67, 0xcb, 0xce, 0x1, 0xff, + 0xe7, 0x1f, 0x0, 0xe1, 0x30, 0xf, 0xff, 0x91, + 0x80, 0x70, 0x80, 0x7f, 0xfc, 0x1c, 0x40, 0x30, + 0x98, 0x7, 0xff, 0xc4, 0x88, 0x20, 0x11, 0x8b, + 0x80, 0x7f, 0xfb, 0xcf, 0x98, 0x3, 0x36, 0x98, + 0x7, 0xff, 0x5, 0xc0, 0x3f, 0xfc, 0x2c, 0x64, + 0x1, 0x9, 0xb0, 0x7, 0xff, 0x10, 0x40, 0x3f, + 0xfb, 0xc7, 0xac, 0x1, 0x97, 0x8c, 0x3, 0xf9, + 0xc0, 0x3f, 0xfc, 0x85, 0x6a, 0x40, 0x10, 0x9a, + 0x80, 0x7f, 0x8, 0x7, 0x8c, 0x3, 0xff, 0xba, + 0x54, 0xa4, 0x1, 0xb, 0xd9, 0x80, 0x7e, 0x30, + 0x10, 0xc, 0x20, 0x1f, 0xfd, 0xd2, 0xa5, 0x20, + 0x8, 0x5a, 0x8c, 0x3, 0xf8, 0x7c, 0x3, 0x8c, + 0x40, 0x3f, 0xc2, 0x6a, 0x67, 0xfc, 0xc4, 0x60, + 0x1f, 0xfc, 0x11, 0x69, 0x72, 0x0, 0x85, 0xac, + 0xc0, 0x3f, 0xcc, 0x44, 0x0, 0x84, 0x4e, 0x1, + 0xff, 0x2c, 0xe6, 0x7f, 0x52, 0x88, 0x7, 0xfc, + 0x4d, 0x52, 0x80, 0x18, 0xe6, 0x8c, 0x4, 0x84, + 0x7c, 0x4d, 0xe8, 0x1, 0x8b, 0x88, 0x3, 0xff, + 0xae, 0x91, 0x4, 0x0, 0xc4, 0xfe, 0xe4, 0x2, + 0x93, 0xdd, 0xed, 0x95, 0x10, 0x8, 0xed, 0x4, + 0x3, 0xfc, 0x2d, 0x9f, 0xff, 0xd8, 0xe4, 0x1, + 0xfe, 0x4b, 0xb2, 0x88, 0x14, 0x74, 0x18, 0x4, + 0x29, 0xa8, 0x1, 0xf0, 0x92, 0x3d, 0x6b, 0x90, + 0x7, 0xff, 0x2c, 0x7c, 0x47, 0xc0, 0x1e, 0x15, + 0xac, 0xc7, 0xb9, 0x80, 0x78, 0x5a, 0xff, 0xfe, + 0xed, 0xb8, 0x51, 0x0, 0xf8, 0xe7, 0xfb, 0xaf, + 0x83, 0x0, 0xfe, 0x27, 0xce, 0xed, 0x4a, 0x0, + + /* U+52A8 "动" */ + 0x0, 0xff, 0xef, 0x1b, 0xdd, 0xe9, 0x52, 0x0, + 0xff, 0xf6, 0xb6, 0xa2, 0x76, 0x80, 0x7f, 0xf1, + 0x85, 0xaf, 0xff, 0xff, 0x9b, 0x8e, 0x40, 0x1f, + 0xfd, 0xa1, 0x1f, 0xfe, 0x6b, 0x80, 0x7f, 0xf6, + 0x45, 0xaf, 0xbb, 0xff, 0x9b, 0x6e, 0x40, 0x1f, + 0xff, 0x52, 0x7b, 0xcc, 0xfa, 0x10, 0x3, 0x13, + 0x76, 0x67, 0xff, 0x2, 0x54, 0x40, 0x3f, 0xfa, + 0x83, 0xca, 0x67, 0xf1, 0x8, 0x7, 0x9, 0x9f, + 0xff, 0x4, 0x8c, 0xd, 0xf3, 0x77, 0xff, 0xa1, + 0x97, 0xb9, 0xbb, 0xea, 0x50, 0xc, 0x2d, 0x5b, + 0xbe, 0xc7, 0x30, 0xf, 0xde, 0x45, 0xff, 0xd2, + 0x17, 0x22, 0xf8, 0x40, 0x38, 0xf9, 0xc8, 0xbe, + 0xf0, 0xf, 0xc7, 0x39, 0xbb, 0xea, 0x62, 0x0, + 0xc6, 0xf9, 0xbb, 0xff, 0xc0, 0xc8, 0x30, 0xf, + 0x84, 0x40, 0x18, 0x40, 0xc0, 0x3f, 0xf8, 0xa2, + 0x45, 0xf1, 0x91, 0x0, 0x22, 0x4a, 0x32, 0x2f, + 0xfe, 0x8, 0x80, 0x7c, 0x26, 0x1, 0xce, 0x20, + 0x1f, 0xfc, 0xd4, 0xc4, 0x0, 0x85, 0x6c, 0x80, + 0x21, 0x47, 0x9a, 0xb8, 0x40, 0xf, 0xf8, 0xc5, + 0x80, 0x30, 0x98, 0x80, 0x78, 0xc0, 0x3f, 0x8, + 0x7, 0xc7, 0xa8, 0x1, 0x93, 0xc, 0x3, 0x8, + 0xb5, 0x95, 0x1f, 0x94, 0x3, 0xfc, 0xfa, 0x40, + 0x11, 0x11, 0xc0, 0x3f, 0x84, 0x3, 0x8c, 0x3, + 0xe3, 0xb4, 0x10, 0x9, 0x79, 0x0, 0x3c, 0xbe, + 0xa0, 0x12, 0xf2, 0x88, 0x7, 0xc7, 0xae, 0x1, + 0x9f, 0x48, 0x3, 0xf7, 0x80, 0x70, 0x80, 0x7c, + 0x56, 0xa4, 0x0, 0x16, 0xe4, 0x0, 0xfc, 0xbe, + 0xa0, 0x12, 0x73, 0x88, 0x7, 0x94, 0xc8, 0x2, + 0x3d, 0x70, 0xf, 0xc2, 0x6, 0x1, 0xc2, 0x1, + 0xc5, 0x4a, 0x40, 0x1, 0x7d, 0x40, 0x0, 0x91, + 0xa2, 0xbc, 0x4f, 0x38, 0x6, 0x4a, 0x71, 0x0, + 0x85, 0x75, 0x0, 0x32, 0x99, 0x0, 0x7e, 0x71, + 0x10, 0x6, 0x30, 0xe, 0x58, 0x62, 0x0, 0xcb, + 0xfb, 0xdf, 0xdb, 0x97, 0x50, 0xec, 0x84, 0x1, + 0xc7, 0xae, 0x20, 0x2f, 0x28, 0x1, 0xb, 0x6a, + 0x0, 0x7f, 0x9, 0x80, 0x61, 0x13, 0x80, 0xe, + 0x2d, 0x44, 0x3, 0x9, 0xa1, 0x8, 0x6, 0x13, + 0x45, 0x78, 0xaa, 0x39, 0x80, 0x49, 0x88, 0x73, + 0x66, 0x1, 0x13, 0x52, 0x0, 0x7f, 0x9, 0xb0, + 0x6, 0x2f, 0x10, 0x1, 0xe2, 0x0, 0x61, 0x24, + 0x57, 0x9a, 0xcd, 0xef, 0xec, 0xba, 0x87, 0x55, + 0x54, 0xc4, 0x2a, 0xf8, 0xa1, 0x88, 0x2, 0x3a, + 0xa1, 0x80, 0x7f, 0x97, 0xc8, 0x3, 0x39, 0x10, + 0x2, 0x49, 0xbb, 0x6f, 0x73, 0x6e, 0xa1, 0x94, + 0xc8, 0x40, 0x3f, 0x89, 0x5d, 0xcd, 0x93, 0x8, + 0x20, 0x1, 0x59, 0x63, 0x22, 0xe1, 0x1c, 0x4d, + 0xce, 0x20, 0x11, 0x1b, 0x80, 0x71, 0xa2, 0x8, + 0x40, 0x3f, 0xf9, 0x25, 0x1c, 0xe4, 0x1, 0x13, + 0xed, 0x28, 0x9a, 0xf6, 0xed, 0xdd, 0xb6, 0x54, + 0x40, 0x22, 0x5b, 0x20, 0xf, 0xfe, 0x99, 0x47, + 0x41, 0x89, 0xc7, 0xc1, 0x80, 0x44, 0xa8, 0x40, + 0x1f, 0x84, 0x91, 0xab, 0xe0, 0xc0, 0x3f, 0xfa, + 0xc6, 0xfb, 0xfa, 0xe4, 0x1, 0xe2, 0x8d, 0xff, + 0xfd, 0xdb, 0x72, 0xa4, 0x1, 0xc0, + + /* U+5355 "单" */ + 0x0, 0xff, 0xff, 0x80, 0x7e, 0x25, 0x7a, 0xcd, + 0xb6, 0x20, 0xf, 0xfe, 0x50, 0xac, 0xee, 0x5c, + 0xbb, 0x18, 0x80, 0x7f, 0xf4, 0xa, 0xd4, 0xc9, + 0x27, 0xe4, 0xc0, 0x3f, 0xf8, 0xe5, 0x30, 0xc4, + 0x68, 0xd5, 0xc0, 0x20, 0x1f, 0xfc, 0xf2, 0x7d, + 0xa4, 0x10, 0x1, 0x37, 0x49, 0x80, 0x7f, 0xf0, + 0xc5, 0xa5, 0xc8, 0x2, 0x27, 0xe8, 0x30, 0xf, + 0xfe, 0x90, 0xac, 0xc2, 0x0, 0x46, 0xb6, 0x80, + 0x1f, 0xfc, 0x1, 0x5a, 0x94, 0x0, 0x89, 0xfa, + 0xc, 0x3, 0xff, 0x96, 0x73, 0xdf, 0xff, 0xb6, + 0x50, 0x2, 0x13, 0x7b, 0xff, 0xff, 0xe0, 0x75, + 0x20, 0x7, 0x13, 0xe7, 0xff, 0xdd, 0x28, 0x1, + 0xff, 0xca, 0x12, 0x33, 0xff, 0xe0, 0x90, 0x80, + 0x70, 0x91, 0x9f, 0xff, 0x8, 0x84, 0x3, 0xff, + 0xa0, 0x2f, 0x39, 0x9f, 0xfc, 0x19, 0x40, 0xe, + 0x48, 0xcc, 0xff, 0xe1, 0x42, 0x0, 0x7f, 0xf4, + 0x4, 0xc0, 0x3f, 0xf8, 0x42, 0x1, 0xff, 0xe9, + 0x5b, 0xff, 0xff, 0xe0, 0xd2, 0x80, 0x72, 0xd7, + 0xff, 0xff, 0xa, 0x94, 0x3, 0xff, 0xa2, 0x26, + 0x89, 0xff, 0xc1, 0x31, 0x0, 0xe1, 0x34, 0x4f, + 0xfe, 0x11, 0x8, 0x7, 0xff, 0x40, 0x5e, 0x2e, + 0xff, 0xf8, 0x30, 0x80, 0x1c, 0x93, 0x77, 0xff, + 0xc2, 0x84, 0x0, 0xff, 0xe8, 0x9, 0x80, 0x7f, + 0xf0, 0x84, 0x3, 0xff, 0xd2, 0xb7, 0xff, 0xff, + 0xc1, 0xa5, 0x0, 0xe5, 0xaf, 0xff, 0xfe, 0x15, + 0x28, 0x7, 0xff, 0x2f, 0x94, 0xcf, 0xff, 0x8e, + 0x42, 0x1, 0xc2, 0x46, 0x7f, 0xfc, 0x85, 0xe7, + 0x0, 0xff, 0xe1, 0x9b, 0xde, 0x67, 0xff, 0x1e, + 0x50, 0x3, 0x92, 0x33, 0x3f, 0xf9, 0x16, 0xe6, + 0x1, 0xfe, 0x11, 0xff, 0xe7, 0x90, 0x80, 0x70, + 0x98, 0x8f, 0xff, 0x40, 0x2, 0x16, 0xde, 0xef, + 0xfe, 0x74, 0xa0, 0x7, 0x24, 0xf7, 0x7f, 0xf3, + 0xbe, 0xc, 0x3, 0x38, 0x7, 0xff, 0xd8, 0x5a, + 0xff, 0xff, 0xf9, 0xd6, 0xa0, 0x1c, 0xb5, 0xff, + 0xff, 0xce, 0xe9, 0x30, 0xf, 0xff, 0xf8, 0x7, + 0xff, 0xfc, 0x3, 0xff, 0xde, + + /* U+5357 "南" */ + 0x0, 0xff, 0xe9, 0x9, 0x8, 0x80, 0x3f, 0xfe, + 0x8b, 0x5b, 0xdc, 0xff, 0x6b, 0x90, 0x7, 0xff, + 0xc0, 0x40, 0x39, 0x84, 0x80, 0x3f, 0xfa, 0x69, + 0x3d, 0xff, 0xff, 0xcd, 0xa5, 0x0, 0xe4, 0x9f, + 0xff, 0xfe, 0x75, 0x28, 0x7, 0xff, 0xf5, 0x23, + 0x37, 0x7f, 0xf9, 0x94, 0xa0, 0x1c, 0xb5, 0xbb, + 0xff, 0xcf, 0xb5, 0x0, 0xe1, 0x22, 0xff, 0xe6, + 0x80, 0x80, 0x63, 0xd4, 0x22, 0xff, 0xe7, 0x88, + 0x7, 0xe2, 0x6b, 0xdd, 0xff, 0xe4, 0xda, 0x0, + 0x63, 0x9c, 0xdd, 0xff, 0xe5, 0xca, 0x80, 0x7f, + 0xf0, 0x5, 0x88, 0xbf, 0xf9, 0x22, 0x1, 0xe1, + 0x22, 0xff, 0xe6, 0x98, 0x7, 0xff, 0x18, 0xde, + 0xf3, 0x3d, 0x75, 0xe, 0xaf, 0x39, 0x9f, 0xfc, + 0x9, 0x64, 0x56, 0x89, 0xbc, 0xcf, 0x4a, 0x88, + 0x7, 0xff, 0x31, 0xf5, 0xc, 0xfc, 0x3f, 0xe, + 0xad, 0x8c, 0x67, 0xfe, 0x1e, 0x44, 0x2b, 0x4f, + 0x39, 0x9f, 0x94, 0x80, 0x3f, 0xfa, 0xcb, 0x2c, + 0x20, 0x2b, 0xcc, 0x20, 0x1f, 0x12, 0xa8, 0x80, + 0x4, 0xd4, 0x60, 0x1f, 0xfd, 0xf3, 0xd7, 0x10, + 0x20, 0x12, 0x0, 0xf1, 0xd5, 0x8, 0x0, 0x75, + 0x42, 0x0, 0xff, 0xed, 0xa4, 0xff, 0xeb, 0x61, + 0x2, 0x48, 0xcf, 0xff, 0x63, 0x90, 0x4, 0x71, + 0xbf, 0xf6, 0xc1, 0x0, 0x7f, 0xf5, 0x9f, 0x95, + 0x13, 0xfc, 0x62, 0x1, 0x84, 0x91, 0x3f, 0xf8, + 0x1a, 0x1, 0xff, 0xd7, 0x37, 0xab, 0xbf, 0xf4, + 0xa8, 0x6, 0x58, 0xbb, 0xff, 0xa5, 0x48, 0x3, + 0xff, 0xa8, 0x29, 0x15, 0x5f, 0xfc, 0x9, 0x50, + 0xc, 0xb3, 0x55, 0xff, 0xc0, 0x96, 0x30, 0xf, + 0xfe, 0xa1, 0xa2, 0xaf, 0xff, 0x0, 0xc4, 0x3, + 0x9, 0xaa, 0xff, 0xf0, 0x1b, 0x1c, 0x3, 0xff, + 0xa6, 0x2d, 0xdb, 0xbf, 0xf6, 0x41, 0x80, 0x63, + 0x8c, 0xdd, 0xff, 0xe0, 0x5a, 0x0, 0x7f, 0xf5, + 0x4, 0x8b, 0xff, 0x80, 0x64, 0xe0, 0x19, 0xc8, + 0xc8, 0xbf, 0xf8, 0x2, 0x1, 0xff, 0xfc, 0x10, + 0xf, 0x18, 0x7, 0xff, 0x94, 0x5a, 0xfb, 0xb6, + 0xeb, 0xb9, 0x8c, 0x20, 0x10, 0x9b, 0x0, 0x7f, + 0xf9, 0x45, 0xf5, 0x44, 0x62, 0x20, 0x8c, 0x46, + 0x8d, 0x3b, 0x6, 0x1, 0xf0, + + /* U+5370 "印" */ + 0x0, 0xff, 0xe3, 0x9, 0xac, 0x5d, 0xa5, 0x4, + 0x3, 0xff, 0xc6, 0x24, 0x8d, 0x37, 0xbd, 0x94, + 0xe8, 0x86, 0xbc, 0xa5, 0x20, 0x12, 0x33, 0xff, + 0xe7, 0x90, 0x80, 0x11, 0xea, 0x5d, 0xd1, 0x59, + 0xdc, 0xdb, 0x96, 0x42, 0x0, 0xc2, 0x6b, 0x10, + 0x94, 0x20, 0x5b, 0xcc, 0xff, 0xe7, 0xda, 0x80, + 0x5a, 0xad, 0x10, 0x75, 0x31, 0x0, 0x9, 0x23, + 0x3c, 0xde, 0xf7, 0x32, 0x9d, 0x4c, 0x40, 0x3f, + 0xfb, 0xc6, 0xf7, 0xbd, 0xcd, 0xb9, 0x86, 0x42, + 0x10, 0xf, 0xfe, 0x18, 0xb6, 0x7f, 0xff, 0xf0, + 0x6d, 0x84, 0x3, 0xff, 0x84, 0x2b, 0x68, 0x42, + 0x1, 0xff, 0xff, 0x0, 0xff, 0xff, 0x80, 0x7f, + 0xf5, 0x45, 0xb3, 0xff, 0xff, 0x8b, 0x6c, 0x20, + 0x1f, 0xff, 0xf0, 0xf, 0xfe, 0x8a, 0xce, 0x67, + 0xff, 0x16, 0x5c, 0x40, 0x3f, 0xfb, 0x82, 0x6a, + 0x67, 0xff, 0xc5, 0x21, 0x0, 0xff, 0xff, 0x80, + 0x7f, 0xff, 0xc0, 0x3f, 0xff, 0xe0, 0x1c, 0x2b, + 0x4e, 0xff, 0xfc, 0x55, 0x30, 0xf, 0xfe, 0x20, + 0x8e, 0x0, 0x84, 0x46, 0x20, 0x1f, 0xfc, 0x33, + 0x68, 0x8f, 0xfe, 0x2f, 0x28, 0x80, 0x7f, 0xf0, + 0x45, 0xab, 0xba, 0xff, 0xba, 0x94, 0x3, 0x17, + 0x30, 0x7, 0xf1, 0x1a, 0xaf, 0xff, 0x17, 0x8, + 0x40, 0x3f, 0xf8, 0x22, 0xdc, 0xa0, 0x1f, 0xc2, + 0x6d, 0x2c, 0x40, 0x1f, 0x85, 0x3e, 0xab, 0xff, + 0x8a, 0xe8, 0x1, 0xff, 0xc4, 0x58, 0xcc, 0xf6, + 0xf7, 0xf6, 0x4a, 0x8, 0x4, 0xf8, 0xab, 0x9f, + 0xc4, 0x3, 0xff, 0xb0, 0x46, 0x7e, 0x21, 0x0, + 0xfe, 0x36, 0xaa, 0xd2, 0xc4, 0x1, 0xff, 0xff, + 0x0, 0xff, 0xee, 0x80, + + /* U+5382 "厂" */ + 0x0, 0xff, 0x12, 0x33, 0x7f, 0xfa, 0xd0, 0x40, + 0x3f, 0x85, 0x3e, 0x67, 0xff, 0xd7, 0xca, 0x1, + 0xff, 0xf6, 0x13, 0x0, 0xff, 0xe2, 0x93, 0xe7, + 0xff, 0xff, 0x8f, 0xa5, 0x0, 0x3f, 0xff, 0xe0, + 0x1f, 0xff, 0xf0, 0xf, 0xff, 0xc3, 0x80, 0x7f, + 0xff, 0xc0, 0x3f, 0xfe, 0x22, 0x1, 0xf0, 0x80, + 0x7f, 0xfb, 0xcc, 0x3, 0xff, 0xf0, 0x3e, 0x20, + 0x18, 0x7c, 0xc0, 0x3f, 0xfd, 0xee, 0x24, 0x1, + 0x9c, 0x44, 0x1, 0xff, 0xef, 0x12, 0x0, 0xe1, + 0x20, 0xf, 0xff, 0x79, 0xeb, 0x0, 0x62, 0x23, + 0x80, 0x7f, 0xfb, 0x85, 0x50, 0x80, 0x33, 0xe9, + 0x80, 0x7f, 0xfb, 0x93, 0xc, 0x3, 0x1e, 0x20, + 0x7, 0xff, 0xb4, 0x57, 0x94, 0x3, 0xa, 0x28, + 0x80, 0x7f, 0xfb, 0xe, 0x61, 0x0, 0x31, 0x35, + 0x98, 0x7, 0xff, 0xb1, 0x25, 0x88, 0x3, 0x2c, + 0x49, 0x80, 0x7f, 0xfb, 0x52, 0xb2, 0x9d, 0x10, + 0xf2, 0xa2, 0x1, 0xff, 0xf0, 0x25, 0x8b, 0xb4, + 0x18, 0x7, 0xff, 0xb4, + + /* U+538B "压" */ + 0x0, 0xff, 0xff, 0x80, 0x61, 0x6c, 0xff, 0xff, + 0xf7, 0x52, 0x0, 0x7f, 0xff, 0xc0, 0x3f, 0xf8, + 0x2, 0xb5, 0xbb, 0xff, 0xe8, 0xb4, 0x0, 0xff, + 0xe2, 0x1b, 0x11, 0x7f, 0xf2, 0x41, 0x22, 0x67, + 0x53, 0x11, 0x7f, 0xf2, 0x84, 0x3, 0xff, 0xb8, + 0x3c, 0x89, 0xc6, 0x20, 0x1f, 0xff, 0xf0, 0xf, + 0xff, 0xf8, 0x7, 0xff, 0xfc, 0x3, 0xff, 0xae, + 0x4f, 0xbf, 0xff, 0xfc, 0x4c, 0x71, 0x0, 0xc9, + 0x5f, 0xff, 0xfc, 0x6e, 0x94, 0x0, 0xff, 0xe0, + 0x88, 0x7, 0xff, 0xe8, 0xc0, 0x3c, 0x20, 0x11, + 0x3e, 0x77, 0x7f, 0xf1, 0x29, 0x84, 0x3, 0x1c, + 0x6f, 0x77, 0xff, 0x17, 0xe1, 0x0, 0x3f, 0xf8, + 0x3e, 0x20, 0x11, 0x80, 0x80, 0x61, 0x1f, 0xfe, + 0x2b, 0x8, 0x7, 0x39, 0x10, 0x47, 0x8d, 0x50, + 0x84, 0x7f, 0xc0, 0x1f, 0xfc, 0x16, 0x13, 0x0, + 0x87, 0xcc, 0x3, 0xff, 0xaa, 0x4f, 0x9b, 0x75, + 0x98, 0x84, 0x10, 0xf, 0xfe, 0x38, 0x98, 0x80, + 0x4e, 0x22, 0x0, 0xff, 0xea, 0x93, 0xfb, 0x98, + 0x0, 0xde, 0xf2, 0x50, 0x40, 0x3f, 0xf8, 0x64, + 0x46, 0x0, 0xc2, 0x40, 0x1f, 0xfd, 0x83, 0x8c, + 0xc3, 0x98, 0x0, 0x9a, 0xf5, 0xc8, 0x3, 0xff, + 0x82, 0xfa, 0x60, 0x11, 0xeb, 0x0, 0x7f, 0xf6, + 0xce, 0x3a, 0x50, 0x40, 0xd4, 0x80, 0x3f, 0xf8, + 0x25, 0xae, 0x1, 0x94, 0xc8, 0x3, 0xff, 0xba, + 0x4d, 0x7f, 0xd9, 0x2a, 0x40, 0x1f, 0xf1, 0x2a, + 0x10, 0x4, 0x7e, 0xa0, 0x24, 0x5f, 0xfc, 0x96, + 0x20, 0xe, 0x72, 0x32, 0x2f, 0xfe, 0x1, 0x98, + 0x8b, 0xe1, 0x0, 0xf1, 0xd5, 0xc, 0x2, 0x3b, + 0x71, 0x5a, 0xdd, 0xff, 0xe4, 0xd2, 0x88, 0x6, + 0x38, 0xcd, 0xdf, 0xfe, 0x4d, 0xa0, 0x6, 0x24, + 0x52, 0x0, 0x92, 0x98, 0x40, 0x2, 0x1, 0xff, + 0xe7, 0x13, 0x0, 0xe2, 0x7c, 0xc4, 0xab, 0xfb, + 0x8, 0x1, 0x6b, 0xff, 0xff, 0xcf, 0xd2, 0x80, + 0x0, + + /* U+539F "原" */ + 0x0, 0xfc, 0xb5, 0xff, 0xff, 0xec, 0xd8, 0x30, + 0xf, 0xfe, 0x0, 0x80, 0x7f, 0xfb, 0xc, 0x3, + 0xff, 0x8e, 0x71, 0xbd, 0xdf, 0xfc, 0x7a, 0x50, + 0xe, 0x26, 0xbe, 0xef, 0xfe, 0x47, 0xc1, 0x80, + 0x7f, 0xf1, 0x5c, 0x48, 0x47, 0xff, 0x8c, 0x7a, + 0xe0, 0x18, 0x53, 0x50, 0x47, 0xff, 0x92, 0x1, + 0xff, 0xcd, 0x37, 0xbc, 0xcf, 0xfe, 0x7, 0xb1, + 0x0, 0x72, 0x46, 0x67, 0xff, 0x12, 0xdc, 0xc0, + 0x3f, 0xfa, 0x3c, 0xa6, 0x7f, 0xfc, 0x2, 0x10, + 0xe, 0x12, 0x33, 0xff, 0xe2, 0xaf, 0x0, 0x7f, + 0xf5, 0xc5, 0xaf, 0xff, 0xff, 0x9d, 0x4a, 0x1, + 0xff, 0xcb, 0x30, 0xf, 0xfe, 0x28, 0x98, 0x8f, + 0xff, 0x3c, 0xc4, 0x3, 0xff, 0x94, 0x20, 0x1f, + 0x18, 0x7, 0xfc, 0xb5, 0xdd, 0xff, 0xce, 0x94, + 0x0, 0xff, 0xef, 0x12, 0xbb, 0xff, 0xf3, 0x90, + 0x80, 0x3f, 0xf9, 0x62, 0xe0, 0x18, 0x40, 0x3f, + 0xe1, 0x4e, 0x88, 0xff, 0xe7, 0x73, 0x80, 0x7f, + 0xf2, 0x8f, 0xc4, 0x3, 0x18, 0x80, 0x7f, 0x85, + 0xe7, 0x33, 0xff, 0x9d, 0x8, 0x1, 0xff, 0xca, + 0x61, 0x30, 0x8, 0x85, 0xc0, 0x3f, 0xe1, 0x23, + 0x3f, 0xfe, 0x71, 0x8, 0x7, 0xff, 0x28, 0x4c, + 0x40, 0x21, 0xf1, 0x0, 0xc7, 0x3d, 0xff, 0xff, + 0xc2, 0xc7, 0x10, 0x8, 0x5b, 0x3f, 0xff, 0xf8, + 0x7d, 0x26, 0x1, 0xff, 0xc2, 0x3d, 0x70, 0xc, + 0xc4, 0x40, 0xf, 0x85, 0x27, 0x7b, 0x6e, 0x9c, + 0xc0, 0x3f, 0xf8, 0xa2, 0x91, 0x7d, 0xfb, 0x28, + 0x20, 0x1f, 0xfc, 0x65, 0x32, 0x0, 0x8f, 0x5c, + 0x3, 0xc2, 0xb5, 0x46, 0x21, 0x26, 0x33, 0x80, + 0x3f, 0xf8, 0xe2, 0xc2, 0x4, 0xd7, 0x92, 0xa2, + 0x1, 0xff, 0xc2, 0x4f, 0x50, 0xc, 0xa6, 0x40, + 0x18, 0xdf, 0x69, 0x4, 0x0, 0x4f, 0xd2, 0x80, + 0x1f, 0xfc, 0x61, 0x49, 0xcb, 0x73, 0x0, 0x13, + 0x56, 0x4a, 0x8, 0x7, 0xf9, 0x35, 0xc4, 0x2, + 0x3f, 0x50, 0x25, 0x9d, 0xc8, 0x30, 0x8, 0xe3, + 0xe0, 0xc0, 0x3f, 0xf9, 0x62, 0x91, 0xb8, 0xe4, + 0x0, 0x26, 0xbd, 0x73, 0x0, 0xf0, 0xaf, 0xb0, + 0x80, 0x49, 0x48, 0x8a, 0xca, 0x62, 0x0, 0xa, + 0x46, 0x61, 0xc8, 0x3, 0xf9, 0xc4, 0x3, 0xff, + 0x8a, 0x27, 0x19, 0x4a, 0x20, 0x3, 0x88, 0x30, + 0x80, 0x64, 0xe4, 0x0, 0x85, 0xbd, 0x89, 0x6e, + 0x9c, 0xc9, 0x67, 0x2d, 0xcc, 0x2, 0x5a, 0xee, + 0xf7, 0xdb, 0x8, 0x4, 0x5c, 0x20, 0x1f, 0xfc, + 0x11, 0x5b, 0xa7, 0x69, 0xcb, 0x61, 0x0, 0xcb, + 0x7b, 0x4c, 0xb3, 0x48, 0x1, 0xa, 0x46, 0x6d, + 0x31, 0x0, 0x79, 0x7d, 0x4, 0x78, 0x4, 0x44, + 0x6b, 0x1e, 0xc4, 0x1, 0xff, 0xc3, 0x14, 0x89, + 0x63, 0x0, 0xe0, + + /* U+53C2 "参" */ + 0x0, 0xff, 0xe6, 0x1c, 0x66, 0xdc, 0xc3, 0x18, + 0x80, 0x7f, 0xfc, 0x5, 0xa1, 0xcc, 0x91, 0x97, + 0xdc, 0x40, 0x3f, 0x84, 0xde, 0xf7, 0xfa, 0xdc, + 0xc4, 0x3, 0xff, 0xb4, 0x2b, 0x70, 0x80, 0x11, + 0x3f, 0x4a, 0x0, 0x7f, 0xf0, 0x8c, 0x5, 0x23, + 0x3e, 0xdc, 0xc4, 0x3, 0xff, 0xa4, 0x22, 0x26, + 0xbb, 0x28, 0x80, 0x9, 0xa2, 0x84, 0x8c, 0xfc, + 0x89, 0xca, 0xc5, 0xd0, 0xc6, 0x1, 0xa, 0x46, + 0x7d, 0xb1, 0x0, 0x7f, 0xf1, 0x52, 0x7b, 0xff, + 0xee, 0xe6, 0xca, 0x88, 0x6, 0x26, 0xad, 0xdb, + 0x33, 0xd7, 0x7e, 0xaa, 0xa5, 0x8c, 0x3, 0xe1, + 0x49, 0xdc, 0x84, 0x10, 0xf, 0xfe, 0xb, 0x71, + 0x0, 0x78, 0x47, 0x88, 0xb8, 0xc8, 0x40, 0x3c, + 0x26, 0xab, 0x33, 0x73, 0xbe, 0x88, 0xd3, 0x39, + 0xcc, 0x40, 0x6, 0xf7, 0xae, 0x40, 0x1f, 0xf1, + 0x3e, 0x7f, 0xfb, 0xbb, 0xb7, 0x7b, 0xa8, 0x80, + 0x30, 0xb5, 0x65, 0x55, 0x33, 0xd1, 0x19, 0xdf, + 0x33, 0x68, 0xcc, 0x4b, 0x2b, 0xd7, 0xb1, 0x0, + 0x7e, 0x15, 0x9b, 0xbf, 0xfe, 0x36, 0x62, 0xc, + 0x3, 0x97, 0xee, 0xff, 0xf9, 0x73, 0xa4, 0x27, + 0xd1, 0x57, 0x4c, 0x40, 0x1c, 0x64, 0x89, 0xff, + 0xc7, 0x31, 0x0, 0xf0, 0x9a, 0x27, 0xff, 0x5b, + 0xc4, 0x3, 0x89, 0xbf, 0x33, 0xff, 0x81, 0x2c, + 0x40, 0x1c, 0x29, 0x17, 0x99, 0xff, 0xc2, 0x94, + 0x10, 0xc, 0x26, 0xf7, 0x99, 0xff, 0xc1, 0x83, + 0x0, 0xf0, 0x91, 0x9f, 0xe2, 0xb, 0xf9, 0x62, + 0x0, 0x8e, 0x36, 0xdd, 0xc, 0xf0, 0xbd, 0xcc, + 0x4a, 0x38, 0x9b, 0x5e, 0xb9, 0x0, 0x4, 0xde, + 0xa5, 0x44, 0xcf, 0xf8, 0x84, 0x3, 0xff, 0x84, + 0x4b, 0x39, 0x87, 0x30, 0x8, 0xdf, 0x30, 0xe4, + 0x44, 0x68, 0xac, 0xed, 0xb7, 0x54, 0x7d, 0x21, + 0x10, 0x0, 0xe3, 0x29, 0x88, 0x0, 0x2b, 0x39, + 0x88, 0x41, 0x0, 0xff, 0xe1, 0x89, 0xb4, 0x5f, + 0x6d, 0x31, 0x0, 0x62, 0x46, 0x2f, 0xdf, 0xed, + 0xb9, 0x75, 0x33, 0x23, 0xd6, 0x76, 0xd3, 0x18, + 0x80, 0x61, 0x59, 0xcb, 0x73, 0x0, 0x9, 0xbd, + 0xf7, 0x2e, 0x18, 0xc4, 0x3, 0x89, 0x6b, 0x7b, + 0x25, 0xd0, 0x40, 0x22, 0x6a, 0xde, 0xe6, 0x32, + 0x99, 0x89, 0x1a, 0x2b, 0x3b, 0xf6, 0xe1, 0x4c, + 0x44, 0x6d, 0x39, 0xdf, 0xd9, 0x2a, 0x42, 0x91, + 0x9b, 0x4c, 0x60, 0x10, 0xa3, 0xce, 0x75, 0xb0, + 0x80, 0x9, 0x39, 0x8, 0x2, 0x25, 0x7b, 0xdd, + 0x4a, 0x90, 0x9b, 0xe7, 0x75, 0xb7, 0x2e, 0xa6, + 0x22, 0x35, 0x79, 0xbe, 0xe6, 0x4b, 0x18, 0x92, + 0x55, 0x10, 0x80, 0x31, 0x2c, 0xe7, 0x5c, 0x31, + 0x88, 0x1c, 0x4b, 0x8, 0x4, 0x29, 0x39, 0x97, + 0x6d, 0x42, 0x10, 0x7, 0xc2, 0x4a, 0xcf, 0x15, + 0x7b, 0xdf, 0xd9, 0x50, 0xc8, 0x24, 0x8d, 0x39, + 0xdb, 0x4c, 0x62, 0x0, 0x25, 0x65, 0x20, 0x0, + 0xa3, 0xce, 0x77, 0xe3, 0x90, 0x7, 0xe1, 0x33, + 0x8, 0x7, 0xe1, 0x5b, 0xee, 0x65, 0xcc, 0x3a, + 0xa1, 0x1, 0x23, 0x3c, 0xde, 0xf6, 0xdc, 0xb1, + 0x88, 0x0, 0x4d, 0xab, 0x75, 0x53, 0x5b, 0xa9, + 0x40, 0xf, 0xfe, 0x88, 0xad, 0x5b, 0x22, 0xbc, + 0x56, 0x6f, 0xf6, 0xdc, 0xc3, 0x21, 0x8, 0x0, + 0x4d, 0x5e, 0x73, 0xf2, 0x54, 0x80, 0x4d, 0xef, + 0x25, 0x0, 0x3f, 0xfa, 0x62, 0xb3, 0x75, 0xe, + 0xa6, 0x40, 0x10, 0x9a, 0x2b, 0xc5, 0x67, 0x73, + 0x2a, 0x18, 0xc4, 0x9, 0x1e, 0xb3, 0x10, 0x82, + 0x1, 0xff, 0xd1, 0x12, 0x34, 0x42, 0xb3, 0x1e, + 0x26, 0xaf, 0x3b, 0xfd, 0xd9, 0x75, 0xe, 0xa6, + 0x20, 0x26, 0xd1, 0x7b, 0xfb, 0x70, 0xa4, 0x1, + 0xff, 0xd3, 0x27, 0xdd, 0x65, 0xda, 0xa6, 0x50, + 0xec, 0xa8, 0x62, 0x0, 0x13, 0x46, 0x79, 0xac, + 0xdf, 0xec, 0x97, 0x42, 0x0, 0xff, 0xec, 0x93, + 0xfc, 0x21, 0xa2, 0xb3, 0xc4, 0xd5, 0x2f, 0x37, + 0xbf, 0xb2, 0xe6, 0x19, 0x4c, 0x80, 0x3f, 0xfa, + 0x60, + + /* U+53CD "反" */ + 0x0, 0xff, 0xb, 0x5f, 0xff, 0xff, 0x9e, 0x94, + 0x3, 0xff, 0x86, 0xe0, 0x1f, 0xff, 0xe4, 0x8b, + 0xbf, 0xff, 0x4, 0x20, 0x7, 0xff, 0x20, 0x48, + 0xd1, 0x3f, 0xfc, 0x4, 0x20, 0x1f, 0xff, 0xf0, + 0xf, 0xff, 0xf8, 0x7, 0xe1, 0x6a, 0xee, 0xff, + 0xec, 0xed, 0xcb, 0x18, 0x7, 0xff, 0x38, 0x47, + 0xff, 0xb4, 0x48, 0xfc, 0x1, 0xff, 0xc7, 0x10, + 0xf, 0x24, 0x5d, 0x9c, 0xc0, 0x38, 0xde, 0xae, + 0xff, 0xf8, 0xf0, 0x80, 0x1c, 0x2f, 0x66, 0x1, + 0xff, 0xc5, 0x30, 0xf, 0x9, 0xa2, 0x51, 0x6, + 0x10, 0x8, 0xd4, 0x99, 0x13, 0xff, 0x88, 0xa5, + 0x68, 0x1, 0x89, 0xa8, 0xc0, 0x3f, 0xf8, 0xc3, + 0xe4, 0x1, 0x8f, 0xc4, 0x2, 0x4b, 0x93, 0x0, + 0x8a, 0x20, 0xa2, 0x1, 0xff, 0xc1, 0x48, 0x81, + 0x80, 0x64, 0xb9, 0x30, 0xf, 0xfe, 0x3b, 0x90, + 0x80, 0x61, 0x11, 0x80, 0x62, 0x79, 0x50, 0xc, + 0xb1, 0x4, 0x0, 0xff, 0x13, 0xc3, 0x8, 0x4, + 0x2d, 0xec, 0x20, 0x1f, 0xfc, 0x71, 0x21, 0x0, + 0xe5, 0x21, 0x0, 0xf2, 0xc4, 0xc, 0x2, 0x26, + 0xaa, 0x28, 0x80, 0x61, 0x49, 0xf8, 0x30, 0x8, + 0x56, 0xa1, 0x0, 0x3f, 0xf9, 0x25, 0xea, 0x1, + 0x8f, 0x94, 0x3, 0xf1, 0x3e, 0xca, 0x8, 0x0, + 0x56, 0xb2, 0xc, 0xcf, 0xb6, 0xc4, 0x1, 0xa, + 0xd5, 0xa0, 0x80, 0x7f, 0xf2, 0x49, 0x14, 0x40, + 0x32, 0x98, 0x80, 0x7f, 0x85, 0xaa, 0x8a, 0x20, + 0x11, 0x3e, 0x62, 0xc, 0x3, 0x1c, 0x6d, 0x20, + 0x80, 0x7f, 0xf2, 0x85, 0x30, 0xc0, 0x32, 0xe2, + 0x0, 0x7f, 0xf0, 0x45, 0x2e, 0xc8, 0x1, 0xfe, + 0x38, 0xe7, 0x30, 0xf, 0xfe, 0x60, 0xa6, 0xa0, + 0x6, 0x4f, 0x50, 0xf, 0xf8, 0x4d, 0x62, 0xfe, + 0x90, 0x3, 0xfc, 0x71, 0xba, 0xa7, 0x42, 0x0, + 0xff, 0xe4, 0x1c, 0x41, 0x0, 0x32, 0x6a, 0x0, + 0x78, 0x91, 0x9e, 0xb3, 0xf2, 0x9d, 0x4, 0x2, + 0x14, 0x79, 0x93, 0xa0, 0x80, 0x62, 0x58, 0xbd, + 0xeb, 0x97, 0x53, 0x20, 0xf, 0xf8, 0x5b, 0xd8, + 0x80, 0x21, 0x68, 0x60, 0x48, 0xac, 0xef, 0xdb, + 0x98, 0x53, 0x10, 0x8, 0x51, 0xeb, 0x7a, 0xe1, + 0x99, 0x17, 0xdb, 0x4e, 0x62, 0x1, 0x85, 0x1a, + 0x2b, 0x37, 0xfb, 0x6e, 0x5c, 0xc4, 0x2, 0x20, + 0x62, 0x0, 0xa, 0xdc, 0x18, 0xb, 0x73, 0x18, + 0x80, 0x61, 0x35, 0x79, 0xbd, 0xeb, 0x85, 0x20, + 0xf, 0xc4, 0xb1, 0x9d, 0xb5, 0xc, 0xa6, 0x20, + 0x1c, 0x24, 0xa0, 0x64, 0x20, 0x11, 0xb5, 0x6e, + 0x55, 0x21, 0x44, 0x2, 0x26, 0xea, 0x88, 0x56, + 0x77, 0x32, 0xa1, 0x90, 0x80, 0x3f, 0xf8, 0xc4, + 0xaf, 0x35, 0x9d, 0xfb, 0x73, 0xd, 0x15, 0x28, + 0x20, + + /* U+53D6 "取" */ + 0x0, 0xb, 0x5f, 0x77, 0xff, 0x56, 0x50, 0x3, + 0xff, 0xae, 0x2e, 0x23, 0xff, 0xd5, 0x22, 0xff, + 0xe5, 0x19, 0xc4, 0x20, 0x1f, 0xc2, 0xdb, 0xba, + 0x10, 0x3, 0x1b, 0xe6, 0xef, 0xf5, 0xb1, 0x0, + 0x64, 0x8c, 0x84, 0x44, 0xee, 0xff, 0xf2, 0x33, + 0x2d, 0xef, 0x94, 0x0, 0xf8, 0x44, 0x45, 0x84, + 0x3, 0xb8, 0x8b, 0xfc, 0xdc, 0x20, 0x1c, 0x46, + 0x42, 0x1, 0xff, 0xcf, 0x21, 0x70, 0xf, 0xfe, + 0xe2, 0xcc, 0x99, 0x50, 0xcc, 0xf9, 0xdd, 0xff, + 0xc0, 0xc7, 0x20, 0xc, 0xdc, 0x60, 0x1f, 0xfc, + 0x63, 0x9e, 0xff, 0xfe, 0xd8, 0x30, 0xf, 0xc4, + 0x2a, 0xa4, 0x33, 0x22, 0x80, 0x8f, 0xf8, 0x14, + 0xc8, 0x2, 0x12, 0x50, 0xf, 0xfe, 0xf0, 0xa2, + 0x8, 0x2, 0x3c, 0x40, 0xf, 0xf2, 0xfa, 0x80, + 0x65, 0xf3, 0x0, 0xff, 0xe3, 0x9c, 0x6f, 0xff, + 0xf6, 0x39, 0x0, 0x7f, 0x1e, 0x20, 0x80, 0x49, + 0x86, 0x1, 0xf8, 0xb1, 0x4, 0x2, 0x3c, 0x40, + 0xf, 0xfe, 0x48, 0x98, 0x7, 0xf0, 0xf8, 0x80, + 0x7f, 0x93, 0x10, 0x2, 0x14, 0xb2, 0x0, 0xf0, + 0xa1, 0x90, 0x4, 0x28, 0x82, 0x0, 0xff, 0xf1, + 0x26, 0x18, 0x4, 0x4d, 0x46, 0x1, 0x85, 0xa9, + 0x0, 0x21, 0x4c, 0x30, 0xf, 0xfe, 0x49, 0xcf, + 0x7f, 0xff, 0x6c, 0x18, 0x7, 0xfc, 0x2f, 0x48, + 0x1, 0xb, 0x4a, 0x0, 0xa, 0x68, 0xc0, 0x21, + 0x7e, 0x40, 0xf, 0xff, 0x28, 0xb7, 0xa8, 0x80, + 0x5, 0x7d, 0x92, 0xd8, 0x80, 0x21, 0x7a, 0x40, + 0xf, 0xfe, 0x59, 0xc6, 0xf7, 0x7f, 0x63, 0x90, + 0x7, 0xff, 0x9, 0x25, 0x88, 0x2, 0x48, 0xa6, + 0x10, 0x8, 0x9a, 0xcc, 0x3, 0xff, 0x9a, 0x26, + 0x23, 0xfe, 0xf1, 0x0, 0xff, 0xe1, 0x9c, 0xd9, + 0x80, 0x42, 0x20, 0xc, 0xb1, 0x24, 0x1, 0xff, + 0xd7, 0x12, 0x6e, 0x10, 0xf, 0xfe, 0x20, 0xbd, + 0x18, 0x7, 0x85, 0xa5, 0x44, 0x3, 0xff, 0x84, + 0x24, 0x43, 0x45, 0xd6, 0x0, 0xc5, 0x7b, 0x9b, + 0xae, 0xff, 0xbb, 0x6d, 0x88, 0x3, 0xff, 0x86, + 0x4d, 0x50, 0x60, 0x1e, 0x16, 0xf7, 0x20, 0xf, + 0xfe, 0x9, 0xcf, 0xee, 0x5d, 0x39, 0x80, 0x61, + 0x23, 0x31, 0x10, 0x40, 0x3f, 0xf9, 0x2, 0x93, + 0xf2, 0x82, 0x1, 0x8, 0x80, 0x31, 0xc6, 0x52, + 0x88, 0x7, 0xf8, 0xf5, 0x80, 0x30, 0x91, 0x99, + 0x15, 0x9e, 0x26, 0xa9, 0x79, 0xbd, 0xfe, 0xd8, + 0x30, 0xf, 0xe3, 0x6a, 0xcb, 0x62, 0x0, 0x89, + 0xaf, 0xfd, 0x6c, 0x40, 0x10, 0xad, 0x65, 0x31, + 0x80, 0x7e, 0x5a, 0xee, 0x7f, 0xbb, 0x73, 0x17, + 0x53, 0xe, 0xca, 0xa4, 0x32, 0x10, 0xf, 0xe7, + 0xc8, 0xbe, 0xc9, 0x52, 0x0, 0x89, 0x6b, 0x25, + 0x4, 0x49, 0x3f, 0x28, 0x20, 0x11, 0x2c, 0xe6, + 0xd3, 0x98, 0x80, 0x61, 0x18, 0x3, 0xff, 0xa2, + 0x2c, 0x20, 0x10, 0xa4, 0x66, 0x29, 0x44, 0x3, + 0xc4, 0xd7, 0x94, 0xc4, 0x1, 0x89, 0xf9, 0xc0, + 0x3f, 0xfa, 0xef, 0x91, 0xf2, 0xf3, 0x9f, 0x6e, + 0x62, 0x1, 0xff, 0xc0, 0x25, 0x9d, 0xd5, 0x33, + 0x27, 0xe5, 0x4, 0x0, + + /* U+53E3 "口" */ + 0x0, 0x2d, 0x7f, 0xff, 0xfa, 0x31, 0x84, 0x3, + 0x8, 0x7, 0xff, 0xa4, 0x40, 0x3f, 0xe4, 0x8b, + 0xbf, 0xfe, 0xd3, 0xa0, 0x7, 0xff, 0x14, 0x49, + 0x13, 0xff, 0xb7, 0x84, 0x1, 0xff, 0xff, 0x0, + 0xff, 0xff, 0x80, 0x7f, 0xff, 0xc0, 0x3f, 0xff, + 0xe0, 0x1f, 0xff, 0xf0, 0xf, 0xff, 0xf8, 0x7, + 0xff, 0xfc, 0x3, 0xff, 0xfe, 0x1, 0xff, 0xff, + 0x0, 0xb, 0x67, 0xff, 0xff, 0x6a, 0xd8, 0x3, + 0xff, 0xfe, 0x1, 0x24, 0x55, 0x7f, 0xf6, 0x9d, + 0x0, 0x3f, 0xf8, 0xa2, 0x48, 0xab, 0xff, 0xda, + 0xc2, 0x0, 0xff, 0xf7, 0x89, 0x8, 0xe7, 0x10, + 0x0, + + /* U+53F3 "右" */ + 0x0, 0xff, 0xe8, 0x88, 0xc0, 0x1f, 0xff, 0x85, + 0xbe, 0xe7, 0xfb, 0xa9, 0x40, 0x3f, 0xfe, 0x49, + 0x88, 0x1, 0x8b, 0x5c, 0x3, 0xff, 0xe2, 0x78, + 0x82, 0x1, 0x12, 0x20, 0x80, 0x3f, 0xfe, 0x2, + 0x88, 0x20, 0x8, 0x53, 0xc, 0x3, 0xff, 0xb8, + 0x71, 0xbf, 0xff, 0xfc, 0x6e, 0x83, 0x0, 0xc2, + 0xd7, 0xff, 0xff, 0xd4, 0xa5, 0x0, 0xff, 0xfd, + 0x8, 0x7, 0xe3, 0x9e, 0xcc, 0xff, 0xe1, 0xca, + 0x88, 0x6, 0x16, 0xac, 0xcf, 0xfe, 0xbc, 0xa0, + 0x7, 0xe1, 0x33, 0xff, 0xe1, 0xb6, 0x20, 0x80, + 0x47, 0x36, 0xa6, 0x7f, 0xfd, 0x72, 0x10, 0xf, + 0xfe, 0x50, 0xb4, 0xa8, 0x80, 0x4b, 0x2c, 0x40, + 0x1f, 0xfe, 0xf5, 0xb8, 0x30, 0x8, 0x5a, 0x54, + 0x40, 0x3f, 0xfd, 0xc9, 0x36, 0xa2, 0x1, 0xb, + 0xe0, 0x19, 0xff, 0xf5, 0x88, 0x40, 0x3f, 0xf9, + 0x47, 0x12, 0xc2, 0x1, 0xc2, 0xd5, 0x99, 0xff, + 0xd7, 0x84, 0x0, 0xff, 0xe3, 0x8a, 0xd6, 0xb9, + 0x0, 0x7f, 0xfd, 0xe, 0x36, 0x94, 0x40, 0x22, + 0x20, 0x80, 0x62, 0x8d, 0xff, 0xff, 0xe7, 0xd2, + 0x80, 0x7f, 0xf2, 0x5, 0x23, 0x30, 0xe6, 0x1, + 0xa, 0xd7, 0x5a, 0x80, 0x7f, 0xfa, 0x45, 0x6b, + 0xed, 0xcc, 0x2, 0x13, 0x8d, 0xa5, 0x20, 0xf, + 0xff, 0x58, 0xa7, 0x39, 0x0, 0x9, 0x6b, 0x30, + 0xe6, 0x1, 0xff, 0xef, 0x14, 0x9f, 0xcc, 0xa9, + 0x48, 0x3, 0xff, 0xea, 0x46, 0x61, 0x0, 0xff, + 0xe1, 0x9e, 0xaa, 0xff, 0xf4, 0x35, 0x80, 0x3f, + 0xfb, 0x82, 0xb1, 0x55, 0xff, 0xcf, 0x73, 0x0, + 0xff, 0xee, 0x89, 0x19, 0xff, 0xf3, 0xc8, 0x40, + 0x3f, 0xfb, 0x85, 0x3f, 0x99, 0xff, 0xcf, 0x97, + 0x11, 0xe3, 0x10, 0xf, 0xc0, + + /* U+53F7 "号" */ + 0x0, 0xff, 0xff, 0x80, 0x70, 0xb5, 0xff, 0xff, + 0xf7, 0xf6, 0xc, 0x3, 0xff, 0xa4, 0x23, 0xff, + 0xd1, 0x0, 0xff, 0xec, 0x9c, 0xf7, 0x7f, 0xf4, + 0xe4, 0xc0, 0x3f, 0xff, 0xe0, 0x1f, 0xff, 0xf0, + 0xf, 0xfe, 0x51, 0xcf, 0xf7, 0x7f, 0xf4, 0x7e, + 0x4c, 0x3, 0xff, 0xb0, 0x23, 0xff, 0xd3, 0x0, + 0xff, 0xe8, 0x8b, 0x5f, 0xff, 0xff, 0x7f, 0x60, + 0xc0, 0x3f, 0xf8, 0x2, 0x46, 0x7f, 0xff, 0x12, + 0x10, 0x8, 0xe3, 0x33, 0xff, 0xe5, 0x28, 0x1, + 0x84, 0x8b, 0xff, 0x82, 0x20, 0x1f, 0x9, 0x17, + 0xff, 0x74, 0x3, 0x1c, 0x66, 0xef, 0xfd, 0x2e, + 0x20, 0x18, 0xe3, 0x37, 0x7f, 0xfb, 0x92, 0xa0, + 0x1f, 0xfc, 0x45, 0xe6, 0x10, 0xc, 0x55, 0xd9, + 0x9f, 0xfd, 0x3b, 0x62, 0x0, 0xff, 0xe5, 0xa, + 0xf2, 0x80, 0x78, 0x48, 0xcf, 0xff, 0xa8, 0xe0, + 0x60, 0x1f, 0xfc, 0x92, 0x69, 0x40, 0xc, 0x91, + 0x79, 0x9f, 0xfc, 0xea, 0x62, 0x0, 0xe5, 0x21, + 0x0, 0xff, 0xe4, 0xb0, 0x32, 0x19, 0xa, 0xf3, + 0xa1, 0x9f, 0xff, 0x39, 0x80, 0xc0, 0x31, 0xf3, + 0x0, 0x7f, 0xf2, 0x91, 0xea, 0xf3, 0x7a, 0x94, + 0x3, 0xff, 0x9e, 0x28, 0xa2, 0x1, 0x94, 0xc8, + 0x3, 0xff, 0xda, 0x2f, 0x86, 0x1, 0x93, 0xd4, + 0x3, 0xff, 0xbe, 0x20, 0x1f, 0xfc, 0x1, 0x49, + 0xb4, 0x0, 0xc9, 0xae, 0x20, 0x1f, 0xfd, 0xd2, + 0x7d, 0xff, 0xfb, 0xba, 0xff, 0x75, 0xb9, 0x0, + 0x42, 0xbe, 0xe2, 0x1, 0xff, 0xde, 0x26, 0xa4, + 0x0, 0xf0, 0x8c, 0x1, 0x8, 0x89, 0x1a, 0xb2, + 0x90, 0x40, 0x3f, 0xfc, 0x2, 0xd7, 0xff, 0xff, + 0xc0, 0xee, 0x6d, 0xca, 0x90, 0x7, 0xff, 0x10, + + /* U+540C "同" */ + 0x0, 0x1c, 0xf7, 0xff, 0xff, 0xb3, 0xa4, 0xc0, + 0x3f, 0xff, 0xe0, 0x2b, 0x5b, 0xbf, 0xfe, 0x9, + 0x50, 0xf, 0xfe, 0x31, 0x31, 0x17, 0xff, 0x84, + 0xc4, 0x3, 0xff, 0x94, 0x93, 0xbb, 0xff, 0xd6, + 0x94, 0x0, 0xff, 0xe8, 0x9, 0x91, 0x7f, 0xf5, + 0x8c, 0x40, 0x3f, 0xfa, 0xb, 0x5f, 0xff, 0xfd, + 0x6a, 0x50, 0xf, 0xff, 0xf8, 0x7, 0xff, 0x28, + 0x5a, 0xb3, 0x3f, 0xf9, 0xd4, 0xa2, 0x1, 0xff, + 0xd6, 0x31, 0x73, 0x3f, 0xfe, 0x73, 0x10, 0x7, + 0xff, 0x74, 0x5a, 0xff, 0xff, 0xf8, 0x56, 0xc0, + 0x1f, 0xfe, 0x41, 0x70, 0xf, 0xfe, 0x20, 0x80, + 0x7f, 0xff, 0xc0, 0x3f, 0xff, 0xe0, 0x1f, 0xfd, + 0x1, 0x6e, 0xdd, 0xff, 0xe1, 0x4b, 0x88, 0x7, + 0xff, 0x8c, 0x48, 0xbf, 0xf8, 0x82, 0x1, 0xff, + 0xe3, 0x16, 0xbf, 0xff, 0xfe, 0x46, 0x38, 0x80, + 0x7f, 0xf5, 0x8c, 0xca, 0xcd, 0xb1, 0x80, 0x3f, + 0xfd, 0xa2, 0x91, 0x33, 0x42, 0x90, 0x7, 0xff, + 0x1c, 0x48, 0xbf, 0x19, 0x88, 0x40, 0x23, 0x10, + 0xf, 0xff, 0x18, 0xbf, 0x6e, 0xfd, 0x90, 0x80, + 0x19, 0xb4, 0xc0, 0x3f, 0xfc, 0x42, 0xf4, 0x80, + 0x1e, 0x12, 0x34, 0x58, 0xba, 0x50, 0x8, + + /* U+540E "后" */ + 0x0, 0xff, 0xf2, 0x89, 0x1a, 0x33, 0xc4, 0xd4, + 0xb1, 0x0, 0x7f, 0xf2, 0x84, 0x3, 0xff, 0x86, + 0x24, 0x43, 0x32, 0x2a, 0x99, 0x8f, 0x10, 0x9a, + 0xbc, 0xc6, 0xf7, 0xfb, 0xb7, 0x2e, 0x61, 0xd9, + 0x5a, 0x72, 0xd8, 0x80, 0x3f, 0xf8, 0xa2, 0xfb, + 0xfe, 0xec, 0xc5, 0xe6, 0x37, 0x5d, 0xff, 0xbb, + 0x75, 0x98, 0xba, 0xa4, 0xca, 0x1d, 0xcc, 0xa8, + 0x66, 0x21, 0x0, 0xc2, 0x46, 0x8a, 0xcf, 0x35, + 0x48, 0x43, 0x0, 0xff, 0xe5, 0x9, 0x99, 0xc, + 0xc4, 0x41, 0x0, 0xc2, 0x22, 0x21, 0x99, 0x10, + 0xaa, 0x67, 0x74, 0x42, 0x6a, 0xf3, 0x1b, 0xdf, + 0xee, 0xdc, 0xba, 0x98, 0x65, 0x43, 0x21, 0x0, + 0xff, 0xe6, 0xa4, 0xe6, 0xeb, 0xb9, 0xff, 0x77, + 0x37, 0x59, 0x8b, 0xb5, 0x52, 0x62, 0xe, 0xe6, + 0x54, 0x33, 0x10, 0x80, 0x7f, 0xf6, 0xc4, 0x94, + 0xc8, 0x82, 0x20, 0xf, 0xff, 0xa0, 0x95, 0xaa, + 0xff, 0xf9, 0x8c, 0x40, 0x3f, 0xf8, 0xc8, 0xf5, + 0x5f, 0xfe, 0x58, 0xb2, 0x0, 0xff, 0x18, 0x7, + 0xc2, 0x46, 0x7f, 0xfe, 0x56, 0xe1, 0x0, 0xff, + 0xe2, 0x8b, 0xf6, 0x67, 0xff, 0x96, 0xd8, 0x80, + 0x3f, 0xf8, 0xc2, 0x1, 0xff, 0xf4, 0xf1, 0x0, + 0xc6, 0x1, 0xe1, 0x22, 0xff, 0xed, 0x88, 0x7, + 0xff, 0x14, 0x44, 0x60, 0x18, 0x7c, 0x40, 0x23, + 0x9c, 0xdd, 0xff, 0xec, 0xe4, 0x18, 0x7, 0xff, + 0x11, 0x8c, 0x40, 0x33, 0x91, 0x0, 0x3f, 0xf8, + 0x2, 0x3f, 0xfc, 0xd0, 0xf, 0xfe, 0x60, 0x93, + 0x0, 0x61, 0x21, 0x0, 0xff, 0xb, 0x67, 0x77, + 0xff, 0x36, 0xd4, 0x3, 0xff, 0x94, 0x9a, 0x60, + 0x18, 0xb9, 0x40, 0x3f, 0xfe, 0x27, 0x88, 0x1, + 0x8a, 0xd4, 0x40, 0x3f, 0xfe, 0x5, 0x68, 0x20, + 0x10, 0xaa, 0x10, 0x7, 0xff, 0xc1, 0x21, 0x88, + 0x2, 0x17, 0xc3, 0x0, 0xff, 0xe0, 0x9b, 0x8, + 0xff, 0xf3, 0x48, 0x40, 0x3f, 0xf8, 0xa7, 0x12, + 0xa2, 0x1, 0x14, 0xda, 0x0, 0x7f, 0xf0, 0x45, + 0x6b, 0xbb, 0xff, 0x9b, 0x28, 0x1, 0xff, 0xc4, + 0x3b, 0x52, 0x0, 0x85, 0xa5, 0xc8, 0x3, 0xff, + 0x8a, 0x23, 0xff, 0xcd, 0x0, 0xff, 0xe3, 0x1c, + 0x6e, 0x43, 0x46, 0xca, 0x0, 0x7f, 0xf1, 0x5, + 0xb3, 0xbb, 0xff, 0x9b, 0x6a, 0x1, 0xff, 0xc2, + + /* U+5411 "向" */ + 0x0, 0xff, 0xff, 0x80, 0x7f, 0xf0, 0x52, 0x7b, + 0xfd, 0xb9, 0x70, 0x82, 0x1, 0xff, 0xe7, 0x4d, + 0x71, 0x0, 0x11, 0xbf, 0xb0, 0x80, 0x7f, 0xf9, + 0x93, 0x5c, 0x40, 0x32, 0xcb, 0x90, 0x7, 0xff, + 0x94, 0x53, 0x5c, 0x40, 0x21, 0x6e, 0x40, 0xf, + 0xfe, 0xa1, 0xc7, 0x7f, 0xff, 0xf1, 0x3a, 0xd8, + 0x40, 0x30, 0xb5, 0xf7, 0xff, 0xff, 0x3e, 0x90, + 0x3, 0xff, 0xfa, 0x93, 0xbd, 0xdf, 0xfd, 0xda, + 0x51, 0x0, 0xff, 0xe2, 0x9, 0x90, 0x8f, 0xff, + 0x75, 0x8c, 0x3, 0xff, 0xfe, 0x1, 0xff, 0xc1, + 0x39, 0xef, 0xff, 0xfe, 0x67, 0x4a, 0x0, 0x7f, + 0xff, 0xc0, 0x3f, 0xf9, 0xe7, 0x3d, 0xff, 0xff, + 0xc0, 0xe8, 0x30, 0xf, 0xff, 0xf8, 0x7, 0xff, + 0xfc, 0x3, 0xff, 0x94, 0x26, 0x1, 0xff, 0xc0, + 0x30, 0xf, 0xff, 0x19, 0xc6, 0xff, 0xff, 0xf0, + 0x36, 0xc, 0x3, 0xff, 0xc6, 0x23, 0xff, 0xc7, + 0x31, 0x70, 0xf, 0xfe, 0xd9, 0xcf, 0xf7, 0x7f, + 0xf1, 0xb6, 0xc, 0x3, 0xff, 0xaa, 0x3e, 0x89, + 0xc4, 0x1, 0xff, 0xeb, 0x26, 0xab, 0xba, 0x10, + 0x40, 0x3f, 0xf8, 0x64, 0x68, 0x67, 0xf9, 0x10, + 0xa2, 0x1, 0x9, 0x80, 0x7f, 0xf7, 0xda, 0xa9, + 0x99, 0xfa, 0xe0, 0xc0, 0x31, 0x7a, 0x80, 0x7f, + 0xf7, 0x92, 0x9c, 0x40, 0x3f, 0x9, 0x1a, 0xbd, + 0xeb, 0x8, 0x4, 0x71, 0xdf, 0xfa, 0x94, 0x3, + 0xff, 0xa6, 0x73, 0xdf, 0xff, 0xbb, 0x72, 0xa1, + 0x4, 0x2, + + /* U+542F "启" */ + 0x0, 0xff, 0xef, 0x8, 0x88, 0xd1, 0x59, 0xe2, + 0x6f, 0x37, 0x56, 0xc4, 0x1, 0xff, 0xc4, 0x11, + 0x0, 0x70, 0x88, 0x8c, 0xc8, 0x85, 0x53, 0x31, + 0xdd, 0x10, 0x99, 0x55, 0xdb, 0x37, 0x5d, 0xfe, + 0xee, 0x6e, 0x5d, 0x4c, 0x3b, 0x21, 0x91, 0x12, + 0x7e, 0x50, 0x40, 0x3f, 0xf8, 0x7, 0x1f, 0xfe, + 0xee, 0x6e, 0x62, 0xed, 0x54, 0x99, 0x44, 0x1d, + 0xcc, 0xc5, 0x44, 0x19, 0x10, 0x40, 0x44, 0x46, + 0x8a, 0xcc, 0x78, 0x9a, 0xbc, 0xef, 0xf6, 0xca, + 0x8, 0x7, 0xff, 0x20, 0x8d, 0x10, 0xaa, 0x66, + 0x3c, 0x42, 0x65, 0x54, 0xbb, 0x66, 0x37, 0xb9, + 0xff, 0x77, 0x37, 0x2e, 0xa6, 0x50, 0xec, 0xa8, + 0x62, 0x1, 0xff, 0xcd, 0x4b, 0xdb, 0xb5, 0x52, + 0x65, 0xe, 0xe6, 0x62, 0xa9, 0x10, 0x66, 0x21, + 0x10, 0x7, 0xff, 0x7d, 0x27, 0xbf, 0xff, 0xfb, + 0xfd, 0x26, 0x1, 0xff, 0xc6, 0x12, 0x2f, 0xfe, + 0xd0, 0x80, 0x7f, 0xf3, 0x52, 0x33, 0x77, 0xff, + 0xb3, 0x4c, 0x1, 0xff, 0xff, 0x0, 0xfc, 0xe0, + 0x1e, 0x7e, 0x53, 0x3f, 0xfe, 0xd1, 0x0, 0x7f, + 0xf1, 0xc4, 0x3, 0x1b, 0xde, 0x67, 0xff, 0x66, + 0x10, 0x3, 0xff, 0x8c, 0x60, 0x1c, 0x26, 0x8a, + 0xbf, 0xfd, 0xf7, 0xf1, 0x0, 0xff, 0x8, 0x80, + 0x39, 0x26, 0xea, 0xbf, 0xfb, 0xf2, 0xc4, 0x1, + 0xfc, 0x24, 0xe0, 0x1e, 0x10, 0x23, 0x3f, 0xff, + 0x0, 0x80, 0x7f, 0x17, 0x90, 0x6, 0x12, 0x73, + 0xbd, 0xcc, 0xff, 0xef, 0x74, 0x90, 0x7, 0xc2, + 0xa8, 0x20, 0x19, 0x74, 0xc0, 0x3e, 0x23, 0x55, + 0xff, 0xe8, 0xa1, 0x88, 0x7, 0xff, 0x9, 0x30, + 0xc0, 0x31, 0x1b, 0x80, 0x7c, 0x2b, 0xf5, 0x5f, + 0xfd, 0x1b, 0x95, 0x0, 0xff, 0xe0, 0xa6, 0x20, + 0x6, 0x14, 0xb2, 0x0, 0xff, 0xf4, 0x8b, 0x7b, + 0x8, 0x4, 0x2d, 0x46, 0x1, 0xff, 0xdd, 0x30, + 0xf, 0xf9, 0x22, 0x8, 0x1, 0x89, 0xa8, 0xc0, + 0x3f, 0x85, 0xf3, 0xff, 0xff, 0xa5, 0x28, 0x1, + 0xfc, 0x2f, 0xca, 0x20, 0x1, 0x69, 0x82, 0x0, + 0xff, 0xe0, 0x8, 0xff, 0xf5, 0x0, 0x3f, 0xc2, + 0x6f, 0x79, 0x32, 0xa8, 0x40, 0xf, 0xfe, 0x0, + 0xbe, 0xf7, 0x7f, 0xf4, 0xad, 0x0, 0x3f, 0x0, + + /* U+544A "告" */ + 0x0, 0xff, 0xe0, 0x93, 0x4d, 0x4c, 0x32, 0x90, + 0x7, 0xf2, 0xd7, 0x76, 0xd9, 0x40, 0xf, 0xfe, + 0xea, 0x5c, 0x32, 0xb3, 0xde, 0x88, 0x7, 0xf8, + 0x47, 0x88, 0xc0, 0x3f, 0xfb, 0x82, 0xde, 0xc2, + 0x1, 0x25, 0xc9, 0x80, 0x7f, 0xfb, 0xe, 0x6d, + 0x0, 0x39, 0x27, 0xbf, 0xff, 0xd4, 0x80, 0x1c, + 0xb7, 0xff, 0xff, 0xc7, 0xb6, 0x10, 0xf, 0xfe, + 0x11, 0x37, 0xb9, 0x0, 0x7f, 0xfc, 0x89, 0xfa, + 0x4c, 0x2, 0x38, 0xce, 0xef, 0xfe, 0x1c, 0xa0, + 0x7, 0x2d, 0x77, 0x7f, 0xf1, 0xed, 0x84, 0x3, + 0xf8, 0x56, 0xbe, 0xc, 0x2, 0x27, 0xf7, 0x31, + 0x1f, 0xfe, 0x19, 0x80, 0x7c, 0x23, 0xff, 0xc8, + 0x0, 0xff, 0xe0, 0xb6, 0x21, 0x0, 0x9, 0xfa, + 0xc, 0x3, 0xff, 0xda, 0x6e, 0x5b, 0x33, 0x5e, + 0x3a, 0x27, 0xff, 0x19, 0x75, 0xc0, 0x38, 0x4d, + 0x13, 0xff, 0x98, 0x62, 0x1, 0x8e, 0xa9, 0x77, + 0x4c, 0xd7, 0x7f, 0xfc, 0x8a, 0x73, 0x0, 0xe4, + 0x8b, 0xbf, 0xfe, 0x64, 0x38, 0x6, 0x1f, 0x53, + 0x3f, 0xff, 0x81, 0x18, 0x6, 0x27, 0xbc, 0xcf, + 0xff, 0x84, 0xa8, 0x7, 0xff, 0x8, 0x47, 0xff, + 0xc4, 0x1, 0xff, 0xca, 0x5b, 0xee, 0xff, 0xf0, + 0x6b, 0x90, 0x7, 0xff, 0xfc, 0x3, 0xff, 0x90, + 0x2f, 0x9f, 0xff, 0xfd, 0x2d, 0x72, 0x0, 0xff, + 0xff, 0x80, 0x7f, 0xff, 0xc0, 0x3f, 0xf9, 0x42, + 0xe2, 0x3f, 0xfd, 0x26, 0x10, 0xf, 0xfe, 0xb0, + 0xb5, 0xf7, 0x7f, 0xf4, 0xad, 0x88, 0x3, 0xff, + 0xfe, 0x1, 0xff, 0xcf, 0x17, 0xcf, 0xff, 0xfe, + 0x96, 0xc1, 0x88, 0xe0, 0xf, 0xfe, 0x8, + + /* U+548C "和" */ + 0x0, 0xff, 0xe5, 0x9, 0x1a, 0xb4, 0x55, 0xe5, + 0xb9, 0x0, 0x7f, 0xf7, 0x84, 0x8d, 0x15, 0x9e, + 0x26, 0xaf, 0x37, 0xbf, 0xb7, 0x2a, 0x5d, 0x50, + 0xd2, 0x3e, 0xc, 0x3, 0xff, 0xb2, 0xb5, 0xfd, + 0xb9, 0x75, 0x30, 0xec, 0xa8, 0x64, 0x20, 0x11, + 0x22, 0xbc, 0x55, 0xef, 0x6c, 0x18, 0x24, 0xf7, + 0xff, 0xff, 0x33, 0xa4, 0xc0, 0x3c, 0xbc, 0xe8, + 0x85, 0x66, 0x3c, 0x4c, 0xa1, 0x44, 0x3, 0x25, + 0xda, 0xa1, 0xd5, 0x8, 0x40, 0x3c, 0x20, 0x1f, + 0xfd, 0x64, 0x8b, 0xb5, 0x4c, 0xa1, 0xd9, 0x8b, + 0xa6, 0x1, 0xff, 0xcc, 0x15, 0xad, 0xdf, 0xfb, + 0x21, 0x0, 0x3f, 0xfd, 0x24, 0xc4, 0x5f, 0xf1, + 0x90, 0x80, 0x7f, 0xf0, 0x84, 0x7f, 0xf8, 0x1e, + 0x1, 0xce, 0x24, 0x23, 0xfc, 0x1, 0xff, 0xd9, + 0x4a, 0xee, 0xff, 0xb1, 0xc8, 0x3, 0x1c, 0x6f, + 0x77, 0xef, 0x93, 0x0, 0xff, 0xff, 0x80, 0x7f, + 0xf4, 0x52, 0xbf, 0xff, 0xad, 0x44, 0x3, 0xc5, + 0x1b, 0xff, 0xfb, 0xa4, 0xc0, 0x3f, 0xfc, 0x2, + 0xde, 0xa2, 0x1, 0xe2, 0x8f, 0x94, 0x10, 0xf, + 0xff, 0x39, 0xcd, 0xa0, 0x7, 0xf8, 0x9a, 0xf5, + 0xcc, 0x3, 0xff, 0xc8, 0xb2, 0xe4, 0x0, 0x22, + 0x8, 0x6, 0x24, 0x40, 0x81, 0xc6, 0xd2, 0x88, + 0x7, 0xff, 0x7c, 0xa2, 0xa, 0x0, 0x27, 0xb5, + 0x30, 0xc, 0xdb, 0x34, 0xa2, 0x2, 0xb5, 0xb0, + 0x60, 0x1f, 0xfd, 0xb2, 0x7e, 0x72, 0x0, 0x25, + 0xca, 0x78, 0x7, 0xc4, 0x95, 0x46, 0x10, 0x0, + 0x80, 0x7f, 0xf6, 0xcd, 0xfa, 0xc, 0x0, 0x4f, + 0xc, 0x20, 0x1f, 0xfc, 0x4, 0x8a, 0x89, 0xe8, + 0x30, 0xf, 0xfe, 0xba, 0x4e, 0xc1, 0x80, 0x5, + 0x62, 0x4c, 0x3, 0xff, 0x86, 0x28, 0xec, 0x60, + 0x1f, 0xe2, 0x62, 0x2f, 0xf8, 0xc8, 0x40, 0x3f, + 0xe6, 0xe2, 0x0, 0xa, 0xdd, 0x94, 0x40, 0x3f, + 0xfa, 0x42, 0xb5, 0xbb, 0xff, 0x64, 0x20, 0x7, + 0xfc, 0x4f, 0xf3, 0x2d, 0xa5, 0x10, 0xf, 0xff, + 0x91, 0xb3, 0xc, 0x3, 0xff, 0xae, 0x2f, 0x9f, + 0xff, 0xfc, 0xa, 0x50, 0xf, 0xff, 0x13, 0xf2, + 0x27, 0x70, 0x80, 0x7f, 0xf0, 0x1b, 0x19, 0xbb, + 0x4, 0x3, 0xff, 0xb6, 0x6f, 0x77, 0xa9, 0x88, + 0x3, 0xff, 0x80, 0x6d, 0x33, 0xa1, 0x48, 0x0, + + /* U+5546 "商" */ + 0x0, 0xff, 0xe9, 0x8, 0xf8, 0x3, 0xff, 0xdc, + 0x4f, 0xbd, 0xdb, 0x58, 0x40, 0x3f, 0xfa, 0x82, + 0x3f, 0xfc, 0xdf, 0x10, 0xe, 0x13, 0x11, 0xff, + 0xe7, 0x0, 0x42, 0xd9, 0xdd, 0xff, 0xcc, 0xc7, + 0x20, 0xc, 0x71, 0xbd, 0xdf, 0xfc, 0xdc, 0x83, + 0x0, 0x9c, 0x3, 0xff, 0xe6, 0x2d, 0x7f, 0xff, + 0xf6, 0xc1, 0x80, 0x61, 0x6b, 0xff, 0xff, 0xe2, + 0x63, 0x90, 0x6, 0x16, 0xbf, 0xff, 0xfe, 0x6, + 0xc1, 0x80, 0x7f, 0xf0, 0xc9, 0xa5, 0x0, 0x21, + 0x6f, 0x51, 0x0, 0xff, 0xe0, 0xa, 0xc3, 0x90, + 0x0, 0x52, 0xe1, 0x0, 0x3f, 0xf8, 0xe4, 0xf9, + 0xdd, 0xfd, 0xf6, 0x80, 0x1c, 0x95, 0xfd, 0xdf, + 0xfc, 0xf, 0xa4, 0x0, 0xc2, 0x97, 0xfd, 0xdf, + 0xf6, 0x39, 0x0, 0x7d, 0xe2, 0x3f, 0xfc, 0x0, + 0xf, 0xc2, 0x3f, 0xfc, 0x20, 0xf, 0xc2, 0x3f, + 0xfc, 0x20, 0xf, 0xfe, 0x10, 0xb5, 0xff, 0xfe, + 0xd8, 0x30, 0x8, 0x5a, 0xff, 0xfa, 0xd4, 0x3, + 0x2d, 0x7f, 0xff, 0xdb, 0x6, 0x1, 0xff, 0xc8, + 0x17, 0x0, 0xf8, 0x53, 0xc, 0x2, 0x5f, 0x40, + 0xf, 0x18, 0x80, 0x61, 0x0, 0xf1, 0xbd, 0x4b, + 0xa7, 0x8, 0x7, 0xff, 0x38, 0x52, 0x36, 0x10, + 0x0, 0x2b, 0xec, 0x1, 0xe7, 0x0, 0xe7, 0xe7, + 0x66, 0xcf, 0x34, 0xad, 0x10, 0x73, 0x0, 0xff, + 0xe4, 0x1d, 0x45, 0x67, 0x72, 0xdc, 0xc4, 0x9, + 0xae, 0xc8, 0x1, 0xf1, 0xe2, 0x8, 0x0, 0x96, + 0x26, 0x74, 0x29, 0x0, 0xd, 0xdc, 0x40, 0x1f, + 0xfc, 0x82, 0xff, 0x31, 0x88, 0x8d, 0x5e, 0x73, + 0x65, 0x44, 0x3, 0xf9, 0x6b, 0xf6, 0xed, 0x55, + 0xfa, 0xf3, 0x72, 0x3d, 0xc0, 0x3f, 0xf9, 0x2, + 0xaf, 0xbd, 0xd6, 0x4f, 0xe4, 0xd5, 0x7f, 0xf0, + 0xee, 0x3b, 0x9f, 0xf8, 0x85, 0x54, 0x86, 0x40, + 0x1f, 0xfc, 0xf1, 0x18, 0x0, 0xda, 0xab, 0xff, + 0xcd, 0xc2, 0x0, 0xff, 0xef, 0xad, 0x7f, 0xff, + 0xf0, 0x69, 0x40, 0x3f, 0xfc, 0xa6, 0x20, 0x1f, + 0xfc, 0x11, 0x30, 0xf, 0xff, 0x29, 0x88, 0x7, + 0xff, 0x4, 0x4c, 0x3, 0xff, 0xca, 0xb5, 0xff, + 0xff, 0xc1, 0xa5, 0x0, 0xff, 0xf2, 0x92, 0x2a, + 0xff, 0xf1, 0x10, 0xc8, 0x40, 0xc8, 0xb9, 0x7d, + 0x80, 0x30, 0x81, 0x80, 0x7f, 0xf2, 0x44, 0x91, + 0x35, 0x45, 0x57, 0xff, 0x16, 0x59, 0x67, 0x37, + 0x7a, 0xd8, 0x80, 0x21, 0x53, 0x10, 0xf, 0xfe, + 0x4a, 0x45, 0xde, 0x73, 0x0, 0xff, 0xe2, 0xa, + 0xf2, 0x0, 0x7c, 0x24, 0x68, 0xd1, 0xb2, 0x80, + 0x10, + + /* U+55B7 "喷" */ + 0x0, 0xff, 0xed, 0x8b, 0x5f, 0xfe, 0xa5, 0x0, + 0xff, 0xf1, 0x8, 0xff, 0xf0, 0x88, 0x5c, 0x3, + 0x9, 0x88, 0xff, 0xf0, 0xc0, 0x3e, 0x16, 0xbf, + 0xff, 0xfe, 0x1d, 0x28, 0x4, 0x97, 0xdd, 0xff, + 0xc1, 0xc8, 0x30, 0xc, 0x93, 0xdd, 0xff, 0xc2, + 0xa5, 0x0, 0xff, 0xe6, 0x8, 0x6, 0x7d, 0x54, + 0x4f, 0xfe, 0x9, 0x8, 0x6, 0x13, 0x44, 0xff, + 0xe1, 0x60, 0x80, 0x7f, 0xf0, 0x12, 0x7b, 0xb6, + 0xc1, 0x80, 0x7e, 0x37, 0xab, 0xb5, 0x47, 0x76, + 0x89, 0xbb, 0x55, 0x90, 0x6, 0x49, 0xbb, 0xaa, + 0x3b, 0xb4, 0x55, 0xdc, 0xe8, 0x1, 0xff, 0xc0, + 0x13, 0x11, 0xc6, 0x2e, 0x1, 0xff, 0xc1, 0x59, + 0xaa, 0xd0, 0x80, 0x1, 0x7e, 0xcc, 0xd0, 0x80, + 0x12, 0x4d, 0x56, 0x94, 0x0, 0xff, 0xe9, 0x9b, + 0xe7, 0x77, 0x52, 0x80, 0x64, 0x9e, 0xeb, 0xf3, + 0x77, 0x67, 0xf7, 0x54, 0xa0, 0x19, 0x6f, 0xbb, + 0xd2, 0x80, 0x1f, 0xfc, 0xcf, 0x11, 0xf8, 0x3, + 0xe1, 0x1f, 0xfe, 0x10, 0x7, 0xc2, 0x3f, 0x18, + 0x7, 0xff, 0x30, 0xe3, 0x7f, 0xfa, 0xd4, 0x3, + 0x24, 0xff, 0xff, 0xf0, 0xa9, 0x40, 0x32, 0xd7, + 0xff, 0xa9, 0x0, 0x3f, 0xfa, 0x6f, 0xf1, 0x1b, + 0x54, 0x40, 0x3f, 0xf8, 0x2d, 0xf1, 0x1b, 0xd8, + 0x3, 0xff, 0xb0, 0xb5, 0xf9, 0x51, 0x1a, 0x73, + 0xbf, 0xff, 0xf8, 0x39, 0x51, 0x1a, 0xb3, 0xed, + 0x84, 0x3, 0xff, 0xb4, 0x24, 0x67, 0xff, 0xc8, + 0x21, 0x0, 0xff, 0xf0, 0xbc, 0xe6, 0x7f, 0xf2, + 0x25, 0xc0, 0x3f, 0xf9, 0x2, 0x46, 0x79, 0x79, + 0xc0, 0x3f, 0xf9, 0x62, 0x91, 0x77, 0x9c, 0xc0, + 0x3f, 0xfa, 0x9, 0x19, 0x9a, 0xdc, 0xc0, 0x3f, + 0xf9, 0x84, 0x89, 0xda, 0xc0, 0x1f, 0xfd, 0x11, + 0x22, 0xff, 0x80, 0x3f, 0xf9, 0x2, 0x1, 0xff, + 0xd7, 0x5b, 0xdd, 0xff, 0x4a, 0x80, 0x7f, 0xf1, + 0x8b, 0xc8, 0x2, 0x13, 0x60, 0xf, 0xff, 0x40, + 0x80, 0x79, 0x29, 0x84, 0x2, 0x5c, 0x21, 0x22, + 0x8, 0x4, 0x24, 0x58, 0x4c, 0x3, 0xf0, 0xb5, + 0xff, 0xd4, 0xa0, 0x1f, 0xfc, 0x55, 0xaf, 0xfb, + 0xa5, 0x9, 0x67, 0x2d, 0x84, 0x0, 0x4f, 0xc, + 0xcd, 0xdb, 0xb9, 0x9b, 0xf1, 0xf9, 0xb4, 0xa2, + 0x1, 0xff, 0xd4, 0x23, 0x57, 0x8a, 0xde, 0xda, + 0x63, 0x1, 0x37, 0xbc, 0x83, 0x33, 0x7c, 0xb2, + 0x1, 0xb4, 0x56, 0xf6, 0xdc, 0x32, 0x8, 0x7, + 0xff, 0x2c, 0xde, 0xf7, 0xbf, 0xdb, 0x95, 0xe, + 0xa4, 0x4, 0x8f, 0x59, 0xf9, 0x8, 0x20, 0x10, + 0x9b, 0x4d, 0xf7, 0x2e, 0x58, 0xc4, 0x91, 0xe6, + 0xfb, 0x92, 0x80, 0x1f, 0xfc, 0x83, 0x6e, 0x73, + 0x24, 0x56, 0x89, 0xbc, 0xee, 0x6d, 0xc2, 0x98, + 0x80, 0x7f, 0xf0, 0x45, 0x1a, 0x73, 0xb6, 0x9d, + 0x4, 0x9a, 0x90, 0x3, 0xff, 0x92, 0x2b, 0x5b, + 0xab, 0xa9, 0x76, 0x43, 0x10, 0xf, 0xfe, 0x71, + 0x2c, 0x5f, 0x6c, 0x18, 0x0, + + /* U+56DB "四" */ + 0x0, 0x1c, 0xf7, 0xff, 0xff, 0xb3, 0x60, 0xc0, + 0x3f, 0xff, 0xe0, 0x4, 0x9d, 0xdf, 0xe9, 0x50, + 0xc, 0x2d, 0x5b, 0xbe, 0x94, 0x0, 0xc4, 0xd7, + 0xbb, 0xfe, 0xb6, 0x20, 0xf, 0xfe, 0x30, 0x91, + 0x7f, 0xc0, 0x1c, 0x7c, 0xe4, 0x5f, 0x8, 0x7, + 0x73, 0x11, 0x7f, 0x9b, 0x84, 0x3, 0xff, 0xa2, + 0x22, 0x0, 0xc2, 0x6, 0x1, 0xff, 0xec, 0x22, + 0x38, 0x6, 0x71, 0x10, 0x7, 0xff, 0xb1, 0xf4, + 0xc0, 0x22, 0x34, 0x0, 0xff, 0xf6, 0x1e, 0xa0, + 0x6, 0x7c, 0x20, 0xf, 0xfe, 0x49, 0xbd, 0x4b, + 0x3f, 0x8, 0x7, 0xff, 0x34, 0x56, 0x5c, 0x40, + 0x24, 0xc5, 0x0, 0xff, 0xe1, 0xf8, 0x7, 0x9f, + 0x91, 0xa6, 0xdc, 0xc0, 0x3f, 0xf9, 0x87, 0x30, + 0xa0, 0x11, 0x3c, 0x30, 0x80, 0x7f, 0xf0, 0x88, + 0xd0, 0xcf, 0x26, 0xa0, 0x80, 0xc, 0xe0, 0xf, + 0xfe, 0x38, 0x88, 0xdf, 0x35, 0xc8, 0x2, 0x58, + 0x93, 0x0, 0xff, 0x2e, 0x18, 0x6, 0x49, 0xcc, + 0xd6, 0xc4, 0x0, 0x45, 0x41, 0x0, 0xff, 0xe3, + 0xec, 0xf4, 0x18, 0x80, 0x9, 0xae, 0xca, 0x20, + 0x1f, 0xf0, 0xb6, 0xdc, 0x32, 0xaf, 0xe6, 0x79, + 0xca, 0xa7, 0x0, 0x7f, 0xf2, 0x32, 0x3e, 0x55, + 0x51, 0x98, 0x94, 0x10, 0xf, 0xfe, 0x18, 0xa3, + 0xcd, 0x57, 0xe9, 0x86, 0x31, 0x0, 0xff, 0xe6, + 0x13, 0x55, 0x1c, 0xc4, 0x3, 0xff, 0xfe, 0x1, + 0xff, 0xe3, 0x49, 0xcc, 0xff, 0xef, 0xfc, 0x98, + 0x7, 0xff, 0x18, 0x48, 0xcf, 0xff, 0xbe, 0x42, + 0x1, 0xff, 0xc7, 0x37, 0xaa, 0xff, 0xef, 0xc2, + 0x88, 0x7, 0xff, 0x19, 0xb1, 0x57, 0xff, 0xc1, + 0xa4, 0x1, 0xff, 0x1c, 0x66, 0xee, 0xb4, 0x0, + 0xff, 0xef, 0x93, 0xe7, 0xfe, 0xd8, 0x30, 0x0, + + /* U+56DE "回" */ + 0x0, 0x9, 0x19, 0xff, 0xfb, 0x88, 0x40, 0x32, + 0x46, 0x67, 0xff, 0xba, 0x50, 0x3, 0xff, 0xfe, + 0x0, 0x5a, 0xff, 0xff, 0xef, 0xf4, 0xa0, 0x7, + 0xff, 0x18, 0xc4, 0x3, 0xff, 0xbe, 0x26, 0x1, + 0xff, 0xff, 0x0, 0xff, 0xe3, 0x1c, 0x66, 0xef, + 0xff, 0x3b, 0x1c, 0x80, 0x3f, 0xfa, 0xe2, 0x45, + 0xff, 0xcf, 0x1f, 0x10, 0xf, 0xfe, 0xe1, 0x3d, + 0xf7, 0x7f, 0xf0, 0xa5, 0x0, 0x3f, 0xfc, 0xac, + 0x23, 0xff, 0xc2, 0x31, 0x0, 0xff, 0xff, 0x80, + 0x7f, 0xff, 0xc0, 0x3f, 0xff, 0xe0, 0x1f, 0xfc, + 0x82, 0x7c, 0xee, 0xff, 0xe1, 0x52, 0x80, 0x7f, + 0xf9, 0x44, 0x7f, 0xf8, 0x60, 0x1f, 0xfd, 0xf3, + 0x9e, 0xff, 0xff, 0xe7, 0x6c, 0x18, 0x7, 0xff, + 0xfc, 0x3, 0xff, 0xfe, 0x1, 0xf8, 0x8d, 0x13, + 0xff, 0xc1, 0xae, 0x1, 0xff, 0xc6, 0x48, 0xbb, + 0xff, 0xf0, 0x39, 0x80, 0x7f, 0xf1, 0x84, 0x8c, + 0xff, 0xfb, 0xe4, 0x20, 0x1f, 0xfc, 0x77, 0x9c, + 0xcf, 0xfe, 0xfe, 0xda, 0x0, 0x7f, 0x0, + + /* U+5757 "块" */ + 0x0, 0xff, 0xa, 0xc4, 0xcd, 0xa, 0x20, 0x1f, + 0xfc, 0x71, 0x58, 0xaa, 0xcc, 0x60, 0x1f, 0xfd, + 0x73, 0xd5, 0x66, 0x97, 0x48, 0x3, 0xff, 0x8e, + 0x64, 0x8a, 0xbb, 0x1c, 0x3, 0xff, 0xfe, 0x1, + 0xff, 0xff, 0x0, 0xff, 0xf1, 0x13, 0xef, 0xff, + 0xed, 0x83, 0x0, 0xcb, 0x7f, 0xff, 0xfc, 0x2e, + 0x93, 0x0, 0xff, 0x9, 0x22, 0x7c, 0x46, 0x1, + 0x19, 0x2a, 0x27, 0x18, 0x80, 0x7f, 0xf9, 0xa, + 0xea, 0xef, 0xa5, 0x44, 0x2, 0x15, 0x9b, 0xbe, + 0x87, 0x2, 0x7c, 0xee, 0xfd, 0x8e, 0x40, 0x19, + 0x6b, 0xbb, 0xf6, 0x39, 0x0, 0x7f, 0xf1, 0x78, + 0x8b, 0xe1, 0x0, 0xe1, 0x22, 0xf8, 0xc0, 0x21, + 0x1f, 0xf7, 0x88, 0x7, 0x8, 0xff, 0xbc, 0x3, + 0xff, 0x8a, 0x6f, 0x9b, 0xbd, 0xec, 0x40, 0x11, + 0x37, 0x6e, 0xf4, 0xa8, 0x7, 0xff, 0x8, 0x40, + 0x3f, 0xff, 0x5e, 0x1, 0xff, 0xee, 0x12, 0x2f, + 0xf9, 0xc8, 0xc0, 0x30, 0x91, 0x7f, 0x37, 0x0, + 0x71, 0xb1, 0x14, 0x20, 0x1f, 0xfd, 0x13, 0x9f, + 0xdd, 0xff, 0x52, 0x88, 0x6, 0x49, 0xdd, 0xfd, + 0x6c, 0x40, 0x10, 0xad, 0x6e, 0xbe, 0x4c, 0x3, + 0xff, 0xfe, 0x1, 0xff, 0xc4, 0x32, 0x46, 0x8b, + 0xdf, 0xd4, 0xad, 0xff, 0xfd, 0xd4, 0x80, 0x1f, + 0xe2, 0x7c, 0xff, 0xff, 0xe1, 0x6c, 0x18, 0x7, + 0xff, 0x0, 0x58, 0x4c, 0x2, 0x15, 0x89, 0x74, + 0x20, 0x2c, 0x40, 0xf, 0xe4, 0xe4, 0x0, 0x85, + 0x59, 0x44, 0x0, 0x4f, 0x2a, 0x1, 0xff, 0xc9, + 0x24, 0x68, 0xac, 0xee, 0x5b, 0x8, 0x7, 0x89, + 0x1a, 0x6f, 0xad, 0x80, 0x3e, 0x27, 0x94, 0x0, + 0xcf, 0xd3, 0x26, 0x20, 0x9, 0x65, 0xc8, 0x3, + 0xff, 0x8c, 0x29, 0x12, 0xea, 0x62, 0x1, 0x9, + 0x2b, 0xd6, 0x76, 0xdc, 0xb2, 0x8, 0x7, 0xc2, + 0xd3, 0x6, 0x1, 0x13, 0xd2, 0x1, 0xd5, 0x98, + 0x4, 0x71, 0xce, 0x60, 0x1f, 0xfc, 0x41, 0x69, + 0x41, 0x12, 0x34, 0xde, 0xf6, 0xd4, 0x29, 0x88, + 0x7, 0xf8, 0x52, 0x36, 0x50, 0x2, 0x16, 0x98, + 0x30, 0x8, 0x9b, 0xa0, 0xc0, 0x23, 0x8e, 0x94, + 0x10, 0xf, 0xfe, 0x1a, 0xdf, 0x72, 0xe5, 0x90, + 0x80, 0x3f, 0xf8, 0x42, 0x91, 0xb6, 0xe6, 0x1, + 0x13, 0x54, 0x20, 0x7, 0xc4, 0xfe, 0xe4, 0x1, + 0x13, 0x5e, 0x52, 0x90, 0x7, 0xff, 0x48, 0x4d, + 0xa7, 0x3e, 0xdc, 0xc0, 0x22, 0x5a, 0xc9, 0x41, + 0x0, 0xff, 0x1c, 0x65, 0x29, 0x0, 0x44, 0xb5, + 0xba, 0xa8, 0x42, 0x0, 0xff, 0xe5, 0x93, 0xee, + 0x4b, 0x18, 0x80, 0x4, 0xda, 0xb2, 0x94, 0x40, + 0x3f, 0xf8, 0x62, 0xb5, 0xf4, 0xa4, 0x1, 0x89, + 0x5e, 0x6d, 0x0, 0x3f, 0xf9, 0x44, 0xfd, 0x28, + 0x44, 0x69, 0xcf, 0xc9, 0x51, 0x0, 0xff, 0xe4, + 0x92, 0xd6, 0xea, 0xdd, 0x8, 0xe3, 0xe5, 0x0, + 0x3f, 0xf9, 0x84, 0xd7, 0xba, 0x96, 0x31, 0x0, + 0xff, 0xe8, 0x92, 0x45, 0xee, 0x39, 0x0, 0x70, + + /* U+589E "增" */ + 0x0, 0xff, 0x2d, 0x7f, 0xec, 0x72, 0x0, 0xff, + 0xe4, 0x24, 0x5d, 0xff, 0xf0, 0xa9, 0xcc, 0x3, + 0xff, 0xa4, 0x20, 0x1f, 0xfc, 0x21, 0x6b, 0xdd, + 0x5c, 0xc7, 0x22, 0x7f, 0xf0, 0xd6, 0x3a, 0xc, + 0x3, 0xff, 0xba, 0x2b, 0x70, 0x84, 0x45, 0x3d, + 0x8e, 0xcc, 0xff, 0xa9, 0x88, 0x0, 0x4f, 0xd2, + 0x82, 0x1, 0xff, 0xd8, 0x14, 0xbb, 0x28, 0x80, + 0xe, 0x2d, 0x48, 0x86, 0x7f, 0xf2, 0xcf, 0xc1, + 0x80, 0x9, 0xab, 0x5c, 0xc0, 0x3f, 0xfa, 0x87, + 0x1b, 0x6a, 0x20, 0x2, 0x7f, 0x61, 0x0, 0xff, + 0xe2, 0x13, 0xf4, 0xa0, 0x80, 0x9c, 0x66, 0x20, + 0xc4, 0x3, 0xc2, 0x22, 0x2f, 0x8, 0x7, 0x73, + 0x11, 0x48, 0xf9, 0x87, 0x30, 0xe, 0x26, 0xed, + 0xdf, 0xfe, 0x47, 0xc2, 0x88, 0x7, 0x1b, 0xe7, + 0xd2, 0x88, 0x4, 0x95, 0xbb, 0xd0, 0x80, 0x18, + 0x9a, 0xf7, 0x6b, 0x83, 0x0, 0xf8, 0x44, 0x60, + 0x1f, 0x19, 0x88, 0xb1, 0x80, 0x7e, 0x33, 0x8, + 0x7, 0xc7, 0x32, 0x51, 0x0, 0xc2, 0x1, 0xff, + 0xc5, 0x26, 0x89, 0x63, 0x10, 0x0, 0xbd, 0x75, + 0xaa, 0xaf, 0xf7, 0x66, 0x10, 0x2, 0x46, 0x6e, + 0x4d, 0x2d, 0xce, 0x6d, 0xa0, 0x4, 0x4d, 0x7a, + 0xe6, 0x1, 0xcb, 0x5f, 0xfd, 0x4a, 0x1, 0x8a, + 0x37, 0xfe, 0xd9, 0x76, 0xb4, 0x30, 0xe, 0x11, + 0x2b, 0xc5, 0xa0, 0x7, 0xf1, 0x34, 0xc3, 0xd1, + 0x98, 0x3, 0xe1, 0x61, 0x0, 0xff, 0xec, 0xb9, + 0x2d, 0x18, 0x11, 0x90, 0x7, 0xc4, 0x98, 0x64, + 0xfe, 0xe4, 0x1, 0xff, 0xe1, 0x14, 0x89, 0xbd, + 0x64, 0x2e, 0xb8, 0x51, 0x0, 0x2d, 0x4f, 0x8a, + 0x39, 0x54, 0xca, 0xa5, 0x40, 0x3f, 0xfb, 0xe4, + 0x8c, 0xc5, 0x59, 0x9a, 0x42, 0x0, 0x84, 0xd5, + 0x95, 0x73, 0x34, 0xa6, 0x20, 0x1f, 0xfd, 0x92, + 0x8d, 0xff, 0xff, 0xeb, 0xec, 0x10, 0x7, 0xff, + 0x2b, 0xc4, 0x91, 0xa6, 0xe5, 0x44, 0x0, 0x2b, + 0x37, 0x7f, 0xfd, 0x27, 0x30, 0xf, 0xfe, 0x61, + 0x3e, 0x6d, 0xcb, 0x23, 0x7a, 0x80, 0xc, 0x91, + 0x3f, 0xfa, 0x7a, 0xe0, 0x1f, 0xfc, 0x1, 0x35, + 0x79, 0xb8, 0x50, 0xf, 0xe2, 0x46, 0x8e, 0x60, + 0xf, 0xe6, 0xbf, 0xff, 0xfe, 0x2d, 0xb0, 0x7, + 0xff, 0x14, 0xe7, 0xf2, 0xa1, 0x90, 0x80, 0x21, + 0x35, 0x8a, 0xde, 0xdb, 0x97, 0x42, 0x0, 0xfe, + 0x4f, 0x99, 0xff, 0xe2, 0xfa, 0x0, 0x7f, 0xf1, + 0x4f, 0x5c, 0x40, 0x4d, 0x5e, 0xb3, 0xb9, 0x94, + 0xea, 0x42, 0x1, 0xff, 0xc3, 0x24, 0x66, 0xff, + 0xe2, 0xa1, 0x0, 0x7f, 0xf1, 0x92, 0x3f, 0xb9, + 0x95, 0xa, 0x62, 0x1, 0xff, 0xca, 0x6b, 0xff, + 0xff, 0xe2, 0xdb, 0x0, 0x7f, 0xf1, 0xc4, 0x60, + 0xf, 0xfe, 0x8a, 0x45, 0x57, 0xff, 0x16, 0x10, + 0x3, 0xff, 0xce, 0x46, 0xab, 0xff, 0xc5, 0x32, + 0x0, 0xff, 0xf3, 0xad, 0x7f, 0xff, 0xf1, 0x6d, + 0x84, 0x78, 0xc0, 0x3f, 0x80, + + /* U+5916 "外" */ + 0x0, 0xff, 0xe2, 0x93, 0xe6, 0xe5, 0xd3, 0xa0, + 0x80, 0x7f, 0xf2, 0x16, 0xbb, 0xb6, 0xc1, 0x80, + 0x7f, 0xf5, 0x9, 0x68, 0xc8, 0xd1, 0xfd, 0x84, + 0x3, 0xff, 0x92, 0x23, 0xc6, 0x2e, 0x1, 0xff, + 0xd3, 0x25, 0xb2, 0x0, 0x8a, 0xa8, 0x40, 0x1f, + 0xff, 0x2, 0xaa, 0x18, 0x6, 0x3a, 0xec, 0xcf, + 0xfe, 0x5, 0x42, 0x90, 0x7, 0xff, 0x81, 0x21, + 0x88, 0x3, 0x84, 0x8c, 0xff, 0xf8, 0x2a, 0xd8, + 0x20, 0x1f, 0xfd, 0xe1, 0x68, 0x51, 0x0, 0xa, + 0xc5, 0x57, 0xfa, 0x10, 0x3, 0x8c, 0xa9, 0xd0, + 0x40, 0x3f, 0xfb, 0x22, 0xb7, 0x6, 0x1, 0x1c, + 0x5b, 0xaa, 0xff, 0x20, 0x38, 0x7, 0x12, 0x34, + 0x55, 0xa8, 0x80, 0x7f, 0xf5, 0x92, 0xec, 0xa2, + 0x0, 0x16, 0x86, 0x10, 0xf, 0xf2, 0x69, 0x80, + 0x42, 0x66, 0x20, 0x0, 0xad, 0xd9, 0x88, 0x3, + 0xff, 0xa2, 0x2b, 0x54, 0x51, 0x0, 0x85, 0x31, + 0x40, 0x3f, 0xe4, 0xc4, 0x0, 0x85, 0xe3, 0x39, + 0xc8, 0x0, 0x2b, 0x30, 0x80, 0x1f, 0xfc, 0xe3, + 0x8d, 0xa5, 0x10, 0xe, 0x15, 0xaf, 0xc9, 0x52, + 0x0, 0xf2, 0x73, 0x8, 0x0, 0x5f, 0x50, 0xe, + 0x39, 0xc8, 0x3, 0xff, 0xa2, 0x4f, 0xee, 0x60, + 0x10, 0xac, 0x41, 0x48, 0x0, 0x26, 0xd5, 0xba, + 0xa5, 0x21, 0x5e, 0x50, 0x8, 0x5f, 0x50, 0x3, + 0x1c, 0x7c, 0xa0, 0x80, 0x78, 0x40, 0x3f, 0xf8, + 0xe4, 0xf9, 0x88, 0x54, 0x8d, 0xa7, 0x75, 0x6e, + 0xa9, 0x8c, 0x2, 0x25, 0xad, 0xfb, 0x50, 0x8, + 0x5f, 0x50, 0x3, 0xe2, 0x6a, 0xa3, 0x8, 0x7, + 0x34, 0xd3, 0x10, 0x7, 0xff, 0x14, 0xde, 0xad, + 0xcc, 0x3, 0x89, 0x67, 0x36, 0x54, 0x80, 0x21, + 0x10, 0x4, 0x2f, 0x48, 0x1, 0xfe, 0x14, 0xc5, + 0x0, 0xf1, 0x2c, 0xee, 0x4a, 0x8, 0x7, 0xff, + 0x40, 0x9a, 0xb9, 0xc8, 0x3, 0x92, 0xe0, 0xc0, + 0x3f, 0xf9, 0xa6, 0xd7, 0xdb, 0x4e, 0x82, 0x1, + 0xff, 0xcc, 0x16, 0x86, 0x20, 0x8, 0xa2, 0x54, + 0x40, 0x3f, 0xf9, 0x2b, 0x12, 0xa4, 0x1, 0x89, + 0x62, 0xfb, 0x65, 0x4, 0x3, 0xff, 0x8c, 0x4d, + 0x50, 0x82, 0x0, 0x16, 0x97, 0x20, 0xf, 0xfe, + 0x50, 0x99, 0x9a, 0xb7, 0x54, 0xc6, 0x20, 0x1, + 0x4b, 0x84, 0x10, 0xf, 0xfe, 0x18, 0xa4, 0x7c, + 0xa0, 0x80, 0x5, 0x6e, 0x10, 0x3, 0xff, 0xa4, + 0x4b, 0x39, 0xf9, 0x7b, 0x4c, 0x20, 0x1f, 0xfc, + 0x21, 0x37, 0xdb, 0x72, 0x0, 0x89, 0xf6, 0x94, + 0x40, 0x3f, 0xfa, 0xe2, 0x68, 0x62, 0x1, 0xff, + 0xc1, 0x25, 0x9c, 0xc4, 0x18, 0x4, 0x2b, 0x59, + 0x6, 0x1, 0xff, 0xe7, 0x13, 0x7a, 0xdd, 0x53, + 0x10, 0x4, 0x27, 0x1b, 0x4a, 0x20, 0x1f, 0xfe, + 0x82, 0x78, 0x95, 0x20, 0x8, 0x4d, 0xef, 0xf1, + 0xcc, 0x3, 0xff, 0xd6, 0x4d, 0x7b, 0x8, 0x87, + 0xbf, 0xc8, 0x41, 0x0, 0xff, 0xf5, 0x80, + + /* U+591A "多" */ + 0x0, 0xff, 0xe7, 0x1c, 0x67, 0x6e, 0x5d, 0x42, + 0x8, 0x7, 0xff, 0x9c, 0x52, 0x33, 0xe, 0x62, + 0x46, 0xc7, 0x8a, 0x20, 0x1f, 0xf0, 0x80, 0x7f, + 0xf5, 0xc5, 0x23, 0x3e, 0xdc, 0xc0, 0x3c, 0x4d, + 0x7d, 0xff, 0xff, 0xc0, 0xef, 0xec, 0x95, 0x10, + 0xf, 0xfe, 0x61, 0x23, 0xd6, 0xf5, 0xb9, 0x88, + 0x0, 0x48, 0xbf, 0xf8, 0xa2, 0x1, 0xe1, 0x19, + 0x84, 0x3, 0xff, 0x8a, 0x24, 0x8f, 0x37, 0xdb, + 0x70, 0xa4, 0x1, 0xa, 0x4e, 0xf6, 0xef, 0xff, + 0xf, 0x94, 0x80, 0x38, 0x9f, 0xa0, 0xc0, 0x3f, + 0xf8, 0x22, 0x91, 0x9d, 0xcd, 0xb8, 0x64, 0x10, + 0x12, 0x20, 0x80, 0x42, 0x93, 0xf5, 0x8, 0x40, + 0x1f, 0x85, 0x23, 0x30, 0xe6, 0x0, 0x15, 0xaf, + 0x83, 0x0, 0xff, 0xe1, 0x8a, 0x55, 0x14, 0x40, + 0x91, 0xa6, 0xf7, 0xb7, 0x5d, 0xb4, 0xe8, 0x40, + 0x4a, 0xf7, 0xba, 0xa6, 0x32, 0x48, 0xcf, 0xb7, + 0x30, 0x1, 0x2c, 0xe5, 0x29, 0x0, 0x7f, 0xf1, + 0xc9, 0xaf, 0xbf, 0x6e, 0x59, 0x8, 0x3, 0x12, + 0xc5, 0xee, 0xa9, 0x8c, 0x0, 0x4b, 0x39, 0xb6, + 0xe6, 0x20, 0x4b, 0x3b, 0xaa, 0x62, 0x0, 0xff, + 0xed, 0x89, 0x22, 0x34, 0x84, 0x40, 0x1f, 0x1b, + 0x43, 0xb3, 0xc7, 0xe5, 0xcb, 0x98, 0x7, 0xff, + 0x48, 0x49, 0x19, 0xeb, 0x3b, 0x9b, 0x72, 0xe8, + 0x42, 0x2, 0x8d, 0x17, 0x6a, 0x39, 0x74, 0x21, + 0x22, 0xe, 0x29, 0x80, 0x7f, 0xf1, 0xc4, 0xd5, + 0xe2, 0x6b, 0x37, 0xbf, 0xb6, 0xe6, 0x14, 0xc4, + 0x0, 0x26, 0xaf, 0x59, 0xdf, 0x1f, 0xb3, 0x72, + 0xa2, 0x1, 0xe4, 0x8f, 0xdd, 0xff, 0x77, 0x5b, + 0x4e, 0x82, 0x1, 0x3f, 0xcb, 0xb2, 0x99, 0x8, + 0x4, 0x46, 0xad, 0x13, 0x7d, 0xcc, 0xaa, 0x5, + 0xd6, 0x62, 0x54, 0x80, 0x3f, 0x84, 0x44, 0x5f, + 0xfc, 0x1, 0x18, 0x96, 0xc8, 0xc0, 0x2, 0x91, + 0x6c, 0xc7, 0x9a, 0xcd, 0xff, 0x6e, 0x54, 0xba, + 0x3, 0x56, 0x76, 0xd3, 0xa1, 0x0, 0xd, 0xa7, + 0x3b, 0xff, 0xff, 0x87, 0xb2, 0x82, 0x1, 0x85, + 0xa1, 0x88, 0x3, 0x12, 0xcc, 0xa1, 0x94, 0xc1, + 0x1a, 0x2b, 0x37, 0xf6, 0xe1, 0x4c, 0x40, 0x38, + 0x4d, 0x35, 0xc, 0x40, 0x3f, 0xf8, 0x24, 0xfd, + 0x28, 0x20, 0x1, 0x5b, 0x84, 0x0, 0xff, 0xe0, + 0x1c, 0x7d, 0xcb, 0xa9, 0x90, 0x0, 0x91, 0xa2, + 0xa5, 0x8c, 0x40, 0x4d, 0xef, 0x75, 0x6e, 0x82, + 0x1, 0xf1, 0x35, 0x7c, 0x18, 0x4, 0x4f, 0xb4, + 0xa2, 0x1, 0xff, 0xc1, 0x38, 0xf9, 0x55, 0x3c, + 0xde, 0xfe, 0xdc, 0xba, 0xb4, 0xe7, 0xe4, 0x29, + 0x0, 0x9, 0x22, 0xfe, 0xdc, 0xc9, 0x27, 0x36, + 0x54, 0x80, 0x2, 0x93, 0xf0, 0x60, 0x1f, 0xfc, + 0x62, 0x6a, 0xa4, 0x32, 0x10, 0x7, 0xf0, 0x9b, + 0xd6, 0x62, 0x10, 0x40, 0x2, 0x91, 0x9b, 0x6c, + 0x60, 0x11, 0x35, 0x7d, 0xb1, 0x0, 0x7f, 0xf7, + 0x4, 0x98, 0x8, 0x82, 0x1, 0xf8, 0x9a, 0x73, + 0x12, 0xa2, 0x1, 0xff, 0xd6, 0x12, 0x46, 0x8a, + 0xcd, 0xfe, 0xca, 0x86, 0x31, 0x0, 0x9, 0x2c, + 0x5f, 0x6c, 0xb1, 0x88, 0x7, 0xff, 0x28, 0x4d, + 0x15, 0x9e, 0x26, 0xaf, 0x37, 0xbf, 0xdd, 0xb7, + 0x2e, 0xa6, 0x40, 0x18, 0x91, 0xa2, 0xf7, 0xb6, + 0x9d, 0x4, 0x3, 0xff, 0x9e, 0x6b, 0x15, 0x30, + 0xec, 0xa8, 0x64, 0x20, 0x18, 0x8d, 0x15, 0xe2, + 0xb3, 0xbf, 0x6e, 0x5d, 0x8, 0x3, 0xff, 0xaa, + 0x4d, 0xe, 0x68, 0xac, 0xf3, 0x57, 0x9b, 0xdf, + 0xed, 0xcb, 0xa8, 0x75, 0x31, 0x0, 0xff, 0xea, + 0x80, + + /* U+5927 "大" */ + 0x0, 0xff, 0xea, 0x2d, 0x7f, 0xf5, 0xa8, 0x7, + 0xff, 0xcc, 0xc4, 0x3, 0xff, 0xfe, 0x0, 0x10, + 0xf, 0xff, 0x98, 0x83, 0x80, 0x7f, 0xfe, 0x4c, + 0x44, 0x1, 0x84, 0xd8, 0x3, 0xff, 0xe4, 0x3e, + 0x60, 0x18, 0xf8, 0x40, 0x3f, 0xfa, 0xe2, 0x68, + 0xab, 0xff, 0xcc, 0xb3, 0x10, 0xe, 0xd4, 0x55, + 0xff, 0xe7, 0x21, 0x0, 0x7c, 0x57, 0x55, 0xff, + 0xcd, 0x74, 0x0, 0xe2, 0x59, 0xaa, 0xff, 0xe7, + 0x7a, 0x8, 0x7, 0xe3, 0x0, 0xff, 0xfc, 0x9c, + 0x6f, 0xff, 0xff, 0x2b, 0x1c, 0x80, 0x3f, 0x89, + 0xf3, 0xff, 0xff, 0x97, 0x6c, 0x20, 0x1f, 0xfd, + 0x22, 0xb5, 0x20, 0xf, 0xe2, 0x69, 0x40, 0xf, + 0xff, 0x51, 0x2a, 0x88, 0x3, 0x23, 0xb8, 0xc0, + 0x21, 0x5f, 0x51, 0x0, 0xff, 0xf3, 0x9d, 0xd1, + 0x0, 0x65, 0xe8, 0x99, 0x20, 0x6, 0x49, 0x62, + 0x0, 0xff, 0xf2, 0x13, 0xfb, 0x10, 0x6, 0x5e, + 0x50, 0x15, 0xf6, 0x10, 0x8, 0xe3, 0x9c, 0x80, + 0x3f, 0xfc, 0x2, 0xb1, 0x26, 0x1, 0x89, 0xe1, + 0x0, 0x32, 0x5c, 0x18, 0x6, 0x38, 0xe7, 0x20, + 0xf, 0xfe, 0xe0, 0xad, 0xd9, 0x44, 0x2, 0x27, + 0xe8, 0x20, 0xf, 0x13, 0x74, 0x18, 0x6, 0x38, + 0xe7, 0x20, 0xf, 0xfe, 0xc1, 0xc6, 0xd2, 0x88, + 0x4, 0x2d, 0x30, 0x60, 0x1f, 0xe2, 0x7e, 0x83, + 0x0, 0xc7, 0x19, 0x6c, 0x40, 0x1f, 0xfd, 0x11, + 0x48, 0xcc, 0x39, 0x80, 0x63, 0x7d, 0x94, 0x0, + 0xff, 0xe1, 0x13, 0xf4, 0x18, 0x6, 0x14, 0x9c, + 0xb7, 0x30, 0xf, 0xfe, 0x50, 0xa4, 0x5f, 0xdb, + 0x98, 0x6, 0x37, 0xcc, 0x41, 0x80, 0x7f, 0xf1, + 0x89, 0xf3, 0x10, 0x60, 0x18, 0x52, 0x33, 0x69, + 0xd0, 0x40, 0x3f, 0xf8, 0x4, 0xaf, 0x5b, 0xd6, + 0xe8, 0x20, 0x18, 0xdf, 0x36, 0xc, 0x3, 0xff, + 0x98, 0x6f, 0x98, 0x83, 0x0, 0xe2, 0x58, 0xbe, + 0xda, 0x74, 0x10, 0xe, 0x14, 0xb8, 0x82, 0x90, + 0x6, 0x13, 0x7a, 0xdc, 0x83, 0x10, 0xf, 0xfe, + 0x89, 0xbe, 0x6d, 0x3a, 0x8, 0x7, 0x13, 0xe8, + 0x80, 0x78, 0x52, 0x72, 0x54, 0xd1, 0xeb, 0x7f, + 0x21, 0x48, 0x3, 0xff, 0xb0, 0x4b, 0x17, 0xdb, + 0x4e, 0x88, 0x7e, 0xa5, 0x10, 0x0, + + /* U+5931 "失" */ + 0x0, 0xff, 0xe9, 0x88, 0x88, 0xb0, 0x88, 0x3, + 0xff, 0xc6, 0x6f, 0x76, 0x98, 0x75, 0x31, 0x0, + 0xf1, 0x36, 0xef, 0x98, 0x80, 0x3f, 0xfc, 0x29, + 0x52, 0x88, 0x67, 0x9c, 0x71, 0x0, 0xff, 0xf8, + 0x2f, 0x30, 0x80, 0x42, 0xfa, 0x80, 0x1f, 0xff, + 0x5, 0xf5, 0x0, 0xc2, 0x98, 0xc2, 0x3f, 0x9b, + 0xc4, 0x3, 0xf, 0x88, 0xff, 0xf2, 0x80, 0x3f, + 0xf9, 0x2, 0xbc, 0xa0, 0x1c, 0x2b, 0x5b, 0xdd, + 0xfa, 0xdc, 0x80, 0x31, 0x3e, 0x77, 0x7f, 0xf2, + 0x35, 0xc4, 0x3, 0xff, 0x8a, 0x73, 0x8, 0x1, + 0xff, 0xf6, 0x16, 0x87, 0x20, 0x8, 0x5a, 0xb7, + 0xbb, 0xff, 0x81, 0x6e, 0x40, 0x18, 0x9f, 0x3b, + 0xbf, 0xf9, 0x1a, 0xe2, 0x1, 0xff, 0xc1, 0x26, + 0xa9, 0x40, 0xc, 0x91, 0x5, 0x21, 0x1f, 0xfe, + 0x3, 0x78, 0x7, 0xf, 0x88, 0xff, 0xf2, 0x80, + 0x3f, 0xf8, 0x47, 0x56, 0x80, 0x18, 0xe2, 0x58, + 0x40, 0x3f, 0xf8, 0x43, 0xe6, 0x1, 0xc2, 0x60, + 0x1f, 0xfd, 0x73, 0x8d, 0xeb, 0x87, 0x9e, 0x72, + 0x0, 0xff, 0xe2, 0x39, 0x8, 0x6, 0x70, 0x10, + 0xf, 0xfe, 0xb0, 0x9a, 0xa9, 0x4, 0xb4, 0xdd, + 0x57, 0xff, 0x8d, 0xac, 0x1, 0xcf, 0xea, 0xbf, + 0xfc, 0xf4, 0x20, 0xf, 0x15, 0xc5, 0x57, 0xff, + 0x35, 0x8c, 0x3, 0x8d, 0xaa, 0xbf, 0xf9, 0xf0, + 0x82, 0x1, 0xc3, 0xe2, 0x3f, 0xfc, 0xd0, 0xf, + 0xfe, 0x8, 0x8f, 0xff, 0x31, 0xc0, 0x3e, 0x27, + 0xce, 0xef, 0xfe, 0x55, 0x38, 0x80, 0x7f, 0xc9, + 0x1f, 0xdd, 0xff, 0xca, 0xb6, 0x10, 0xf, 0xfe, + 0x81, 0x34, 0x30, 0x80, 0x42, 0xae, 0xc4, 0x1, + 0x24, 0x5a, 0x88, 0x7, 0xff, 0x94, 0xdf, 0xa4, + 0xc0, 0x31, 0xc4, 0x53, 0x25, 0x10, 0x0, 0xad, + 0xd9, 0x44, 0x3, 0xff, 0xc0, 0x4d, 0x7b, 0x6, + 0x1, 0x89, 0xfd, 0x88, 0x0, 0x97, 0x8, 0x1, + 0xa, 0xd6, 0x4a, 0x88, 0x7, 0xff, 0x64, 0x96, + 0x73, 0x12, 0x82, 0x1, 0xa, 0xd6, 0x41, 0x80, + 0x70, 0xb5, 0x5b, 0x10, 0x4, 0x4d, 0x59, 0x4c, + 0x62, 0x1, 0xff, 0xd0, 0x14, 0x7a, 0xdd, 0x53, + 0x18, 0x80, 0x42, 0x93, 0x94, 0xa2, 0x1, 0xfc, + 0x29, 0x39, 0x4a, 0x20, 0x11, 0x2c, 0xe7, 0xe4, + 0xb1, 0x88, 0x7, 0xff, 0x10, 0x4d, 0x5e, 0x73, + 0xb9, 0x70, 0xa4, 0x1, 0x89, 0x67, 0x3e, 0xd8, + 0x80, 0x3f, 0xf8, 0x62, 0xb5, 0xf6, 0xe8, 0x20, + 0x10, 0x9b, 0x4e, 0x77, 0x32, 0xa5, 0xd5, 0x8, + 0x40, 0x38, 0xe7, 0x31, 0x50, 0xc6, 0x20, 0x18, + 0x91, 0xeb, 0x75, 0x4c, 0x62, 0x1, 0xff, 0xc9, + 0x14, 0x8b, 0xed, 0x96, 0x31, 0x0, 0xc2, 0x6a, + 0xd1, 0x54, 0x84, 0x10, 0xc, 0x73, 0xce, 0x42, + 0x48, 0xd1, 0x59, 0xdb, 0x70, 0xa4, 0x1, 0xff, + 0xd3, 0x26, 0x9c, 0xee, 0x65, 0x43, 0x21, 0x8, + 0x96, 0xa8, 0xa2, 0x1, 0xe3, 0x8d, 0xed, 0xb9, + 0x75, 0x31, 0x0, 0xff, 0xee, 0x89, 0xab, 0xcd, + 0xef, 0x72, 0x90, 0x3, 0x80, + + /* U+59CB "始" */ + 0x0, 0xff, 0xe0, 0x13, 0xe7, 0x6e, 0x5b, 0x98, + 0x7, 0xff, 0x24, 0x9e, 0xf6, 0xea, 0x5d, 0x4, + 0x3, 0xff, 0xa8, 0x98, 0x62, 0x46, 0xe0, 0x20, + 0x1f, 0xfc, 0x81, 0x4b, 0x42, 0x45, 0x6c, 0x20, + 0xf, 0xfe, 0xa1, 0xfa, 0x80, 0x42, 0xa8, 0x40, + 0x1f, 0xfc, 0x84, 0xd3, 0x0, 0xcb, 0xcc, 0x20, + 0x1f, 0xfd, 0x21, 0x55, 0x8, 0x4, 0xb8, 0x60, + 0x1f, 0xfc, 0x84, 0xf4, 0x0, 0xcb, 0xea, 0x1, + 0xf0, 0x8c, 0x1, 0xff, 0xc4, 0x11, 0xf2, 0x61, + 0x80, 0x44, 0x62, 0x3f, 0xe0, 0xf, 0xf9, 0x39, + 0x0, 0x21, 0x6e, 0x50, 0xc, 0x4d, 0x5b, 0xdc, + 0xc8, 0x30, 0xf, 0xfe, 0x1, 0x3e, 0x77, 0x75, + 0x28, 0x6, 0x27, 0xbe, 0xef, 0xef, 0xa5, 0x0, + 0xf9, 0x79, 0x44, 0x0, 0x4d, 0x48, 0x1, 0xc4, + 0xa4, 0x1, 0x13, 0xf4, 0x18, 0x7, 0xff, 0x0, + 0x40, 0x3f, 0xfa, 0x62, 0xbc, 0xa0, 0x11, 0xd5, + 0xc, 0x3, 0xe3, 0x8f, 0x83, 0x0, 0x13, 0xf4, + 0xa0, 0x7, 0xe2, 0x7c, 0xff, 0xad, 0x40, 0x31, + 0xc6, 0xff, 0xf7, 0x41, 0x80, 0x7c, 0x23, 0x13, + 0x4a, 0x0, 0x42, 0xde, 0x8e, 0xf4, 0x45, 0x33, + 0x54, 0x68, 0x8, 0x4, 0x4d, 0x30, 0x60, 0x1f, + 0xf1, 0xe2, 0x0, 0x42, 0x88, 0x20, 0xe, 0x5e, + 0x30, 0x8, 0x4f, 0x2f, 0xba, 0xd8, 0x30, 0xc, + 0x2a, 0xf3, 0x11, 0x3b, 0xcc, 0xd2, 0xac, 0x62, + 0x1, 0xc4, 0xfe, 0xc2, 0x1, 0xf8, 0x51, 0x2, + 0x1, 0x26, 0x18, 0x7, 0x11, 0xa8, 0x6, 0x5f, + 0xc2, 0x0, 0xfc, 0x22, 0x22, 0x8c, 0xc8, 0x92, + 0xa9, 0x98, 0xef, 0x44, 0x26, 0x66, 0x30, 0x8, + 0xe2, 0x4c, 0x3, 0xe4, 0xc3, 0x0, 0x93, 0x14, + 0x3, 0xcd, 0xa6, 0x1, 0x9, 0x11, 0x63, 0xba, + 0xff, 0xee, 0xe6, 0xed, 0x98, 0xbb, 0xaa, 0x93, + 0x28, 0x89, 0xdc, 0xcd, 0x44, 0xa9, 0xac, 0x55, + 0xc, 0x3, 0xc9, 0x8a, 0x1, 0x1e, 0x20, 0x80, + 0x71, 0xea, 0x0, 0x65, 0xf5, 0x1, 0x1c, 0x1, + 0xff, 0xcf, 0x15, 0xac, 0xa7, 0x42, 0x0, 0xf1, + 0xe3, 0x88, 0x6, 0xf1, 0x10, 0x6, 0x3b, 0x71, + 0x0, 0x8f, 0x1c, 0x40, 0x31, 0x3e, 0xff, 0xff, + 0xf4, 0x29, 0x40, 0x3f, 0x15, 0xa8, 0x80, 0x63, + 0x7c, 0xfc, 0x95, 0x6a, 0x51, 0x0, 0x8a, 0xd4, + 0x40, 0x3d, 0xe0, 0x1f, 0xfd, 0x11, 0x0, 0xff, + 0x73, 0x90, 0x81, 0x21, 0x88, 0x9, 0xb5, 0x4b, + 0x10, 0x4, 0x76, 0xc4, 0x1, 0xff, 0xc0, 0x15, + 0xbe, 0xef, 0xfe, 0x1e, 0x39, 0x0, 0x7f, 0xf0, + 0x89, 0xab, 0x7b, 0x99, 0x79, 0xf6, 0xe6, 0x20, + 0x1e, 0x17, 0x0, 0xff, 0xe2, 0x1b, 0x88, 0xff, + 0xf1, 0x3c, 0x3, 0xff, 0x90, 0x22, 0x0, 0xa, + 0xeb, 0x80, 0x7c, 0x29, 0x3f, 0x6c, 0x60, 0x1f, + 0xfe, 0x92, 0x6a, 0xa2, 0x8, 0x0, 0x51, 0x50, + 0x40, 0x2, 0x93, 0xb6, 0xc4, 0x1, 0xff, 0xe3, + 0x14, 0x9e, 0x94, 0x0, 0x89, 0xf6, 0xea, 0xf2, + 0x50, 0x40, 0x2, 0xfc, 0x20, 0x1f, 0x8d, 0xc4, + 0x7f, 0xf8, 0x9e, 0x1, 0xff, 0xc4, 0x14, 0x8b, + 0xfb, 0x63, 0x0, 0x8e, 0x3e, 0xc, 0x2, 0x26, + 0xbc, 0x97, 0x9e, 0x83, 0x0, 0xf8, 0x56, 0xfb, + 0xbf, 0xf8, 0x78, 0xe4, 0x1, 0xff, 0xc2, 0x39, + 0x93, 0xa0, 0x80, 0x5, 0x23, 0x35, 0xc8, 0x3, + 0xf1, 0x34, 0x31, 0x0, 0x7f, 0xf8, 0xe, 0x3e, + 0x15, 0x1e, 0xfe, 0xdc, 0xc4, 0x3, 0xff, 0x98, + 0x2d, 0x9f, 0xff, 0xfc, 0x3d, 0x83, 0x11, 0xe0, + 0xf, 0x0, + + /* U+5B58 "存" */ + 0x0, 0xff, 0xff, 0x80, 0x7f, 0xf1, 0xd6, 0xbf, + 0xdd, 0x97, 0x8, 0x20, 0x1f, 0xfe, 0xe5, 0xf5, + 0x0, 0x9, 0xb0, 0x30, 0x80, 0x7f, 0xfb, 0x57, + 0xd4, 0x3, 0x12, 0xd9, 0x0, 0x7f, 0xf6, 0x96, + 0xff, 0xff, 0xf8, 0xd4, 0xa0, 0x1c, 0x4f, 0x9f, + 0xff, 0xfd, 0x4d, 0x72, 0x0, 0xff, 0xfe, 0xad, + 0x6e, 0xff, 0xf0, 0x72, 0x10, 0x3, 0x85, 0xab, + 0x77, 0xff, 0xb1, 0x8c, 0x40, 0x1c, 0x24, 0x5f, + 0xfc, 0x6, 0xa9, 0x40, 0xc, 0x71, 0x5, 0x22, + 0xff, 0xec, 0x8, 0x80, 0x3f, 0xf8, 0xa7, 0x12, + 0xc2, 0x1, 0xb, 0xfb, 0x8, 0x24, 0x66, 0x7f, + 0xf4, 0x2e, 0x54, 0x80, 0x3f, 0xf8, 0xe4, 0xfe, + 0xe4, 0x1, 0xa, 0xd4, 0x18, 0x4, 0x46, 0x7f, + 0xfd, 0x14, 0x6b, 0xb2, 0x0, 0x7f, 0xf1, 0x9, + 0xfa, 0xc, 0x2, 0x15, 0xab, 0x40, 0xe, 0x78, + 0xbb, 0xff, 0xe3, 0xc2, 0x88, 0x7, 0x8e, 0x32, + 0x50, 0x3, 0xff, 0x82, 0x29, 0x3f, 0x6, 0x1, + 0x8e, 0x6d, 0x4, 0x3, 0xc2, 0x68, 0x9f, 0xfc, + 0x46, 0x2f, 0x95, 0x10, 0x8, 0x9a, 0xf5, 0xc8, + 0x3, 0xff, 0x80, 0x29, 0x1b, 0x6c, 0x40, 0x1e, + 0x71, 0x0, 0xff, 0xe5, 0x12, 0x34, 0x5e, 0x4a, + 0x8, 0x0, 0xdf, 0x31, 0x28, 0x20, 0x1f, 0xf1, + 0x35, 0x65, 0xb9, 0x80, 0x7f, 0xf5, 0x5b, 0x65, + 0xd0, 0x40, 0x52, 0x77, 0x20, 0xc4, 0x3, 0xff, + 0x82, 0x97, 0xa, 0x40, 0x10, 0xa2, 0xa0, 0x80, + 0x7f, 0x9, 0xa2, 0x7f, 0xf1, 0x4c, 0x80, 0x39, + 0x4c, 0x99, 0x13, 0xff, 0x84, 0x42, 0x9, 0x16, + 0xa2, 0x4d, 0x5f, 0x70, 0x66, 0x0, 0xfe, 0x49, + 0xbb, 0xff, 0xe2, 0xc2, 0x0, 0x72, 0x3d, 0xdf, + 0xff, 0x15, 0x40, 0x2, 0xb5, 0xdb, 0x2a, 0x20, + 0x1f, 0xfc, 0x11, 0x22, 0xff, 0xe3, 0x8, 0x80, + 0x3c, 0x24, 0x5f, 0xfc, 0x33, 0x17, 0x0, 0xff, + 0xe5, 0xa4, 0x6e, 0xff, 0xf1, 0x69, 0xc0, 0x39, + 0x6b, 0x77, 0xff, 0x87, 0x90, 0x60, 0x1f, 0xff, + 0xf0, 0xf, 0xff, 0xf8, 0x7, 0xff, 0x48, 0x4c, + 0x3, 0xff, 0xd8, 0x73, 0xdf, 0xff, 0xa9, 0x40, + 0x31, 0xeb, 0x0, 0x7f, 0xf9, 0x4e, 0x9c, 0x40, + 0x3f, 0x9, 0x1a, 0xc7, 0xb1, 0x0, 0x7f, 0xf4, + 0x4a, 0x37, 0xff, 0x5b, 0x8, 0x7, 0xfc, 0x73, + 0xfd, 0xd7, 0xff, 0x76, 0xe5, 0x39, 0x88, 0x7, + 0xff, 0x1c, + + /* U+5B9A "定" */ + 0x0, 0xff, 0xe9, 0xb, 0x57, 0x76, 0xd8, 0x30, + 0xf, 0xff, 0xa0, 0x8f, 0x18, 0xb8, 0x7, 0xff, + 0x64, 0x4d, 0x57, 0xff, 0x96, 0xfe, 0xc0, 0x18, + 0x4b, 0x15, 0x7f, 0xf9, 0xa6, 0x20, 0x1f, 0xe4, + 0x8a, 0xaf, 0xfe, 0x5c, 0xb1, 0x0, 0x72, 0x3d, + 0x57, 0xff, 0x36, 0x54, 0x3, 0xff, 0x8a, 0x24, + 0x67, 0xff, 0xe0, 0x21, 0x0, 0xff, 0xe5, 0x94, + 0xfe, 0x67, 0xff, 0x82, 0x5c, 0x3, 0xff, 0xfe, + 0x1, 0xff, 0xcb, 0x39, 0xef, 0xff, 0xfe, 0xce, + 0xc1, 0x80, 0x7f, 0xf2, 0x12, 0x73, 0x37, 0xb1, + 0x0, 0x7f, 0xf8, 0x16, 0xf3, 0x3a, 0x14, 0x3, + 0xfc, 0x24, 0x67, 0x88, 0x40, 0xe3, 0x37, 0x7f, + 0xf8, 0x38, 0xe6, 0x1, 0xcb, 0x3b, 0xbf, 0xfc, + 0x2f, 0x93, 0x1, 0x23, 0x3e, 0x21, 0x0, 0xff, + 0xe4, 0x9, 0x17, 0xff, 0xf, 0x9c, 0x3, 0x9, + 0x91, 0x7f, 0xf1, 0x4, 0x3, 0xff, 0xa2, 0x2d, + 0x9f, 0xdc, 0xdb, 0x72, 0x0, 0xff, 0xf9, 0x17, + 0x90, 0x8, 0x88, 0x4, 0x80, 0x3f, 0xf8, 0x42, + 0x64, 0x5f, 0xfc, 0x81, 0x0, 0xff, 0xe6, 0xa, + 0x90, 0x80, 0x44, 0x6a, 0x1, 0xff, 0xc4, 0x59, + 0xdd, 0xff, 0xe3, 0xda, 0x80, 0x7f, 0xf2, 0xd7, + 0xd4, 0x3, 0xf, 0x90, 0x7, 0xff, 0xc5, 0x35, + 0xc4, 0x3, 0x1d, 0x49, 0x80, 0x7f, 0xf0, 0x85, + 0xaf, 0xff, 0xff, 0x8f, 0x4a, 0x1, 0xff, 0xc9, + 0x3d, 0x71, 0x0, 0xf1, 0x3f, 0xb9, 0x0, 0x7f, + 0xfa, 0xc5, 0xa1, 0x84, 0x2, 0x34, 0x40, 0x80, + 0xe, 0x3e, 0x54, 0x40, 0x3f, 0xfc, 0xe7, 0x10, + 0x40, 0x8, 0x5a, 0x2e, 0xad, 0x44, 0x0, 0x4d, + 0x5f, 0x92, 0xde, 0xe0, 0x1f, 0xfd, 0xf1, 0x49, + 0xe6, 0x10, 0x8, 0xe6, 0xd0, 0x5, 0x6b, 0x25, + 0x48, 0x0, 0x26, 0xd0, 0xc6, 0x1, 0x85, 0x75, + 0xd9, 0x8a, 0xb2, 0x26, 0x33, 0xf9, 0x13, 0xfc, + 0x64, 0x1, 0xc7, 0x1b, 0x6c, 0x40, 0x11, 0x3f, + 0xb9, 0x0, 0x71, 0x35, 0x6e, 0xa9, 0xd0, 0x40, + 0x3f, 0x1b, 0x44, 0xca, 0xaa, 0xbb, 0xd9, 0x9f, + 0x5d, 0xff, 0x4d, 0x88, 0x7, 0x15, 0xa1, 0x88, + 0xa, 0x4f, 0xc1, 0x80, 0x7f, 0xc4, 0xb1, 0x7d, + 0xcd, 0xba, 0x87, 0x64, 0x32, 0x28, 0x46, 0x0, + 0xff, 0xe4, 0xa, 0xd9, 0x80, 0x70, 0x9c, 0x66, + 0x5b, 0x6c, 0x40, 0x1f, 0xfc, 0x61, 0x24, 0x57, + 0x89, 0xbc, 0xdd, 0xbb, 0xaf, 0xff, 0xfe, 0x47, + 0x41, 0x80, 0x60, + + /* U+5BA2 "客" */ + 0x0, 0xff, 0xea, 0x8, 0xfc, 0x1, 0xff, 0xf4, + 0x39, 0xce, 0xed, 0x4c, 0x20, 0x1f, 0xfd, 0xa1, + 0x1f, 0xfe, 0x63, 0x89, 0x80, 0x67, 0x13, 0x11, + 0xff, 0xe6, 0x80, 0x7f, 0x85, 0xb3, 0xbb, 0xff, + 0x99, 0x6c, 0x20, 0x18, 0xe3, 0x7b, 0xbf, 0xf9, + 0x98, 0xe4, 0x1, 0xff, 0xff, 0x0, 0xff, 0xe0, + 0x24, 0xff, 0xff, 0xf0, 0x32, 0x15, 0x4c, 0xf1, + 0x39, 0xdf, 0xff, 0xfc, 0xbe, 0x83, 0x0, 0xff, + 0xea, 0x8a, 0xd6, 0xc2, 0xa9, 0x9e, 0xb8, 0x3, + 0xff, 0x8a, 0x22, 0x0, 0xff, 0xe6, 0x9a, 0x99, + 0xf1, 0x0, 0x78, 0x9a, 0xfe, 0x94, 0x40, 0x38, + 0x9f, 0x3b, 0xff, 0xff, 0x87, 0xdd, 0x64, 0x20, + 0x80, 0x9, 0x4c, 0xf3, 0x91, 0x80, 0x7e, 0x15, + 0x9c, 0xcd, 0x8, 0x0, 0x36, 0x9d, 0xd4, 0xa0, + 0x80, 0x42, 0x6a, 0xbf, 0xfc, 0x44, 0x20, 0xf, + 0x9f, 0x98, 0x40, 0x56, 0x73, 0x35, 0x28, 0x80, + 0x7f, 0xf0, 0x44, 0xda, 0x2f, 0xb2, 0x58, 0x80, + 0x3e, 0x11, 0x7, 0xc5, 0x57, 0xfa, 0xfc, 0xd8, + 0x80, 0x31, 0x35, 0x51, 0x88, 0x3, 0xff, 0x94, + 0x4f, 0x9d, 0x92, 0xe8, 0x20, 0x24, 0xb1, 0x79, + 0x70, 0x82, 0x4, 0xb5, 0x98, 0x96, 0x20, 0x1, + 0x2c, 0x67, 0xd3, 0x10, 0x0, 0x9a, 0xbe, 0x50, + 0x40, 0x3f, 0xf9, 0x84, 0xfd, 0x2a, 0x68, 0xf5, + 0xbf, 0xb4, 0xe8, 0x68, 0xf7, 0xf4, 0xc4, 0x2, + 0x6d, 0x3b, 0xfe, 0xda, 0x73, 0x10, 0x14, 0x9c, + 0xd9, 0x52, 0x0, 0xff, 0xe8, 0x93, 0x56, 0x5c, + 0x29, 0x8, 0x7, 0xe3, 0x6f, 0x53, 0x10, 0xf, + 0xf8, 0x48, 0x79, 0x14, 0xc8, 0x3, 0xff, 0xb6, + 0x48, 0xd1, 0x59, 0xbf, 0xb9, 0x2e, 0x62, 0x0, + 0x24, 0x66, 0x29, 0x88, 0x0, 0x4d, 0x5e, 0x2b, + 0x37, 0xfb, 0x6e, 0xa1, 0xd9, 0x50, 0xcc, 0x42, + 0x1, 0xff, 0xc0, 0x13, 0x45, 0x67, 0x9a, 0xbc, + 0xdf, 0xf6, 0xdc, 0xba, 0x99, 0x0, 0x4, 0xda, + 0x2b, 0x7b, 0x6e, 0x65, 0x59, 0xdc, 0xdb, 0x97, + 0x53, 0x10, 0x8, 0x49, 0x15, 0xe2, 0x6a, 0xf3, + 0x1b, 0xdf, 0xee, 0xb6, 0x20, 0xc, 0x4d, 0xb9, + 0x75, 0x30, 0xca, 0x86, 0x40, 0x1f, 0xc2, 0x6a, + 0xc7, 0xbf, 0x17, 0x55, 0xf5, 0xc7, 0x61, 0x3, + 0x29, 0x90, 0x7, 0xc2, 0x1, 0xf1, 0x34, 0x31, + 0x0, 0x62, 0x6f, 0x84, 0x34, 0x67, 0x89, 0xac, + 0xc4, 0x20, 0x7, 0x84, 0xd1, 0x57, 0xff, 0x90, + 0x86, 0x40, 0x1c, 0x2d, 0xbf, 0xee, 0xdc, 0xbc, + 0xf8, 0x30, 0xf, 0xc6, 0xf7, 0x97, 0x30, 0xec, + 0xa6, 0x62, 0x10, 0xc, 0x4d, 0x7b, 0xbf, 0xfc, + 0xc8, 0x40, 0xf, 0xe1, 0x23, 0x43, 0x20, 0xf, + 0xfe, 0x8f, 0x31, 0x17, 0xff, 0x34, 0x40, 0x3f, + 0xff, 0xe0, 0x1f, 0xfd, 0xc2, 0x9f, 0xcc, 0xff, + 0xe6, 0x42, 0x0, 0x7f, 0xf8, 0x4, 0x8c, 0xff, + 0xf9, 0x84, 0x20, 0x1f, 0xfd, 0xf2, 0x7c, 0xff, + 0xff, 0xe5, 0xf4, 0xa0, 0x7, 0xff, 0x24, + + /* U+5BB6 "家" */ + 0x0, 0xff, 0xea, 0x8, 0xf8, 0x3, 0xff, 0xe8, + 0x2d, 0x5d, 0xdb, 0x20, 0x80, 0x3f, 0xfb, 0x42, + 0x3f, 0xfc, 0xc3, 0x17, 0x0, 0xe1, 0x61, 0x1f, + 0xfe, 0x70, 0x7, 0xfc, 0x71, 0xfd, 0xdf, 0xfc, + 0xad, 0x83, 0x0, 0xc4, 0xd7, 0xdd, 0xff, 0xcc, + 0xf8, 0x40, 0xf, 0xff, 0xf8, 0x7, 0xff, 0x4, + 0x5b, 0x3f, 0xff, 0xfc, 0x14, 0xa0, 0x1f, 0xff, + 0xf0, 0xf, 0xfe, 0x48, 0x81, 0x46, 0xff, 0xff, + 0xf6, 0x3a, 0x50, 0x3, 0xff, 0x92, 0x73, 0xdf, + 0xf7, 0x41, 0x87, 0x89, 0x17, 0xf0, 0x88, 0x3, + 0xff, 0x88, 0x22, 0x22, 0xf8, 0xc5, 0xc0, 0xb, + 0x5f, 0xfb, 0xa5, 0x0, 0x3f, 0xf8, 0xe4, 0xf9, + 0xbb, 0xdf, 0x34, 0x84, 0x1, 0xe2, 0x48, 0xcd, + 0x94, 0x0, 0x85, 0xf7, 0x7f, 0xa0, 0xc0, 0x51, + 0x98, 0x60, 0x1f, 0xfc, 0xc1, 0x24, 0x58, 0xac, + 0xed, 0xb8, 0x63, 0x10, 0x8, 0xe7, 0x2d, 0xcc, + 0x9b, 0x50, 0x0, 0x2f, 0x48, 0x1, 0xf1, 0xb5, + 0xfd, 0xcc, 0xb3, 0x65, 0x44, 0x3, 0xfe, 0x13, + 0x56, 0x8a, 0xbd, 0xee, 0x6d, 0xd3, 0xa9, 0x88, + 0x8d, 0x5d, 0x48, 0x2, 0x39, 0xd8, 0x30, 0x9, + 0xf9, 0x0, 0x2, 0xdc, 0xa0, 0x26, 0xf7, 0xb9, + 0x28, 0x20, 0x1, 0x35, 0xc7, 0x10, 0xf, 0xfe, + 0x3, 0x7c, 0x3a, 0xa1, 0x8, 0x9, 0xab, 0xce, + 0x77, 0x32, 0xa9, 0xc8, 0x60, 0x18, 0xdf, 0x65, + 0x0, 0x53, 0x90, 0x2, 0x5b, 0xef, 0xc8, 0x42, + 0x0, 0x12, 0x45, 0xfe, 0x42, 0x90, 0x7, 0xff, + 0x0, 0x56, 0xea, 0x21, 0x57, 0xbf, 0xd9, 0x50, + 0xe2, 0x91, 0x7b, 0xab, 0x63, 0x13, 0x31, 0x0, + 0x5, 0xaa, 0x4c, 0x56, 0x18, 0x40, 0x2, 0x30, + 0x12, 0x3d, 0xee, 0xad, 0xd0, 0x40, 0x3f, 0xf8, + 0xc2, 0x8e, 0xe5, 0x50, 0xab, 0xcd, 0xef, 0x6d, + 0x3a, 0x11, 0x16, 0x33, 0xf3, 0x10, 0xa0, 0x10, + 0xb4, 0xa8, 0x9c, 0x5a, 0x0, 0x61, 0x7e, 0x94, + 0x20, 0xf, 0xfe, 0x48, 0x9b, 0x4d, 0xef, 0x73, + 0x2a, 0x19, 0x8, 0x4d, 0xa7, 0x3b, 0x69, 0xcc, + 0xcd, 0x50, 0xa0, 0x1c, 0xbc, 0xe0, 0x2b, 0xe, + 0x40, 0x1, 0x5a, 0xd8, 0x30, 0xf, 0xfe, 0x48, + 0x8c, 0xa8, 0x42, 0x4, 0x8f, 0x37, 0xdc, 0xc9, + 0x63, 0x3, 0x6a, 0xdd, 0x4a, 0x90, 0x7, 0xcb, + 0xe8, 0x0, 0x38, 0xe6, 0x20, 0x8, 0xdf, 0x6d, + 0x88, 0x3, 0xff, 0x8e, 0x4f, 0xd7, 0x6d, 0xfd, + 0xb8, 0x64, 0x11, 0x1b, 0x56, 0x76, 0x4a, 0x90, + 0x12, 0xc6, 0x5b, 0x88, 0x4, 0x24, 0x40, 0xc, + 0x73, 0xf2, 0x82, 0x0, 0x14, 0x9c, 0xb7, 0x31, + 0x0, 0xff, 0xe2, 0x92, 0x20, 0x80, 0x91, 0xa6, + 0xfb, 0x99, 0x2a, 0x60, 0x26, 0xd3, 0xba, 0xa7, + 0x37, 0x0, 0xfc, 0x20, 0x1c, 0x4d, 0x7a, 0xe6, + 0x1, 0xa, 0x46, 0x7e, 0x4b, 0x18, 0x80, 0x7f, + 0x11, 0xab, 0xcd, 0xef, 0x6d, 0xcb, 0x20, 0x80, + 0x9b, 0x4e, 0x7e, 0x4b, 0x10, 0x4, 0x2a, 0x62, + 0x1, 0x9, 0x10, 0x40, 0x3f, 0x1c, 0x6e, 0x4a, + 0x90, 0x4, 0x26, 0xd3, 0xd0, 0x80, 0x1e, 0x38, + 0xfc, 0xa8, 0x64, 0x21, 0x1, 0x36, 0x8b, 0xde, + 0xd8, 0x41, 0x1, 0x1c, 0x48, 0xf5, 0x8, 0x1, + 0xa, 0x62, 0x0, 0x7f, 0xc2, 0x6d, 0x5b, 0xaa, + 0x73, 0x13, 0x8f, 0x94, 0x0, 0xf1, 0xc4, 0xb1, + 0x99, 0x5e, 0xb3, 0xb9, 0x92, 0xe8, 0x40, 0x6d, + 0xdb, 0xdd, 0xdb, 0x70, 0x82, 0x0, 0x14, 0x88, + 0x28, 0x7, 0xff, 0x14, 0x96, 0x33, 0xb1, 0xc8, + 0x3, 0xfc, 0x93, 0x98, 0xa8, 0x53, 0x10, 0xf, + 0x89, 0x10, 0x20, 0x1f, 0x9, 0x23, 0xd6, 0x5b, + 0x10, 0x7, 0xff, 0xa4, 0xe3, 0xbf, 0xfe, 0xed, + 0xb8, 0x52, 0x0, 0xff, 0xeb, 0x0, + + /* U+5BB9 "容" */ + 0x0, 0xff, 0xea, 0x9, 0x17, 0x8, 0x7, 0xff, + 0xd0, 0xe7, 0x37, 0x75, 0x30, 0x7, 0xff, 0x68, + 0x47, 0xff, 0x9a, 0xe2, 0x1, 0xce, 0x24, 0x23, + 0xff, 0xcd, 0x0, 0xff, 0x96, 0xfb, 0xbf, 0xf9, + 0x96, 0xc2, 0x1, 0x8e, 0x37, 0xbb, 0xff, 0x99, + 0x90, 0x60, 0x1f, 0xff, 0xf0, 0xf, 0xfe, 0x1, + 0x46, 0xff, 0xff, 0xf4, 0xfb, 0xaf, 0xff, 0xfa, + 0x90, 0x3, 0xff, 0xa6, 0x4d, 0x7d, 0xfd, 0xb6, + 0xe8, 0x20, 0x1f, 0xf1, 0x35, 0x7f, 0x7e, 0x42, + 0x90, 0x7, 0xff, 0x35, 0xb5, 0x57, 0x8c, 0xc0, + 0x11, 0x35, 0x64, 0xa0, 0x80, 0x81, 0xa2, 0x4, + 0x3, 0xfc, 0x2d, 0xcc, 0x0, 0x13, 0x7a, 0xdd, + 0x53, 0x18, 0x80, 0x1b, 0x15, 0x7b, 0x44, 0x3, + 0xf8, 0xde, 0xab, 0x42, 0x1a, 0xce, 0x62, 0x54, + 0x40, 0x4, 0xb5, 0x90, 0x60, 0x2, 0x46, 0x6e, + 0x53, 0x11, 0x24, 0x67, 0xdc, 0x20, 0x80, 0x9, + 0x67, 0x3e, 0xdc, 0x1a, 0xab, 0x42, 0x90, 0x7, + 0xff, 0x0, 0x52, 0x2f, 0xb6, 0x98, 0xc4, 0x0, + 0x4d, 0x59, 0x4a, 0x20, 0x29, 0x3f, 0x73, 0x3d, + 0x59, 0x89, 0x41, 0x1, 0x47, 0xbf, 0xc8, 0x41, + 0x0, 0xa, 0x46, 0x62, 0x94, 0x80, 0x3f, 0xf8, + 0x44, 0xd5, 0x6e, 0x82, 0x1, 0xa, 0x46, 0x6c, + 0xa8, 0x80, 0x9, 0xea, 0x8c, 0x40, 0x1f, 0x89, + 0xaf, 0x25, 0x4, 0x0, 0x26, 0xf7, 0xf6, 0xe6, + 0x1, 0x12, 0xd4, 0xa8, 0x80, 0x7f, 0xf0, 0x9, + 0xaa, 0xd8, 0xc9, 0x67, 0x3e, 0xdc, 0xc0, 0x2, + 0x71, 0x98, 0x84, 0x10, 0x0, 0xad, 0x77, 0x31, + 0xcc, 0x2, 0x26, 0xbc, 0xa6, 0x30, 0x8, 0x52, + 0x33, 0x10, 0xaa, 0x8c, 0xb5, 0x10, 0xf, 0xfe, + 0x10, 0xa4, 0xe6, 0xd3, 0x18, 0x80, 0x9, 0x67, + 0x30, 0xe6, 0x20, 0x1, 0x5a, 0xca, 0x51, 0x11, + 0xc6, 0x62, 0xc, 0x40, 0x4, 0xb3, 0x9b, 0x4c, + 0x40, 0x11, 0xbd, 0x51, 0xcc, 0x3, 0xff, 0x98, + 0x4d, 0x3b, 0xaa, 0x62, 0x0, 0x9, 0xbd, 0xfd, + 0x29, 0x0, 0x7c, 0x6f, 0x98, 0xa6, 0x31, 0x0, + 0x12, 0xce, 0xf5, 0xc2, 0x90, 0x7, 0xff, 0x2c, + 0x91, 0xef, 0x75, 0x2c, 0x40, 0x11, 0x35, 0x66, + 0xc2, 0x8, 0x7, 0xff, 0x4, 0x96, 0x77, 0x29, + 0x8c, 0x2, 0x14, 0x7a, 0xde, 0xb8, 0x63, 0x10, + 0xf, 0xf8, 0x51, 0xa7, 0x3b, 0x6e, 0x10, 0x80, + 0x3e, 0x26, 0xad, 0xef, 0xff, 0xfe, 0x3f, 0x6d, + 0x31, 0x80, 0x7e, 0x14, 0x79, 0xce, 0xe6, 0x53, + 0xa0, 0x80, 0x63, 0x99, 0x98, 0xc4, 0x0, 0x28, + 0xa8, 0x20, 0x1f, 0x8, 0xff, 0xf3, 0x0, 0x3e, + 0x14, 0x78, 0x63, 0x10, 0x8, 0x4d, 0x81, 0x84, + 0x3, 0x1c, 0x7c, 0xaa, 0xa2, 0xf7, 0xae, 0xd8, + 0x40, 0x19, 0x6b, 0xfb, 0xbf, 0xf9, 0x9f, 0x4a, + 0x1, 0xc5, 0x6f, 0x39, 0xdb, 0x71, 0xa, 0xe7, + 0x20, 0xf, 0x89, 0xaa, 0x8e, 0x84, 0x1, 0xff, + 0xe6, 0x24, 0x77, 0x29, 0x0, 0x7f, 0xff, 0xc0, + 0x3f, 0xf9, 0x4b, 0x5f, 0xff, 0xfc, 0xea, 0x50, + 0xf, 0xff, 0xf8, 0x7, 0xff, 0x6d, 0x27, 0xbf, + 0xff, 0xf9, 0xb4, 0xa0, 0x1f, 0xfc, 0x90, + + /* U+5BBD "宽" */ + 0x0, 0xff, 0xeb, 0x89, 0x19, 0x0, 0x7f, 0xfc, + 0xce, 0x33, 0xbf, 0xb7, 0x3d, 0xc8, 0x3, 0xff, + 0xe2, 0x58, 0xa0, 0x1c, 0x53, 0xa, 0x20, 0x1f, + 0xfd, 0x52, 0x7d, 0xff, 0xff, 0xe5, 0xf5, 0xb0, + 0x80, 0x70, 0xad, 0x77, 0xff, 0xff, 0x2b, 0x60, + 0xc0, 0x3f, 0xf8, 0x82, 0x45, 0xff, 0xe1, 0x11, + 0x0, 0x7f, 0xf2, 0xda, 0xb7, 0x7f, 0xb2, 0x6e, + 0xfa, 0x7f, 0x77, 0xfe, 0xf9, 0xbb, 0xd3, 0xfb, + 0xbf, 0xba, 0xd4, 0x3, 0xff, 0x94, 0x60, 0x1f, + 0xe4, 0xe9, 0x9e, 0xe7, 0x0, 0xff, 0x12, 0xc4, + 0xce, 0xf4, 0x10, 0xf, 0xe1, 0x0, 0xff, 0xe1, + 0x99, 0xa9, 0x9a, 0x7c, 0xc5, 0x7f, 0xfe, 0xa5, + 0x0, 0xe5, 0xaf, 0xff, 0xf6, 0xc1, 0x80, 0x64, + 0x9e, 0xff, 0xfa, 0xf3, 0xc, 0xd9, 0x70, 0x80, + 0x3f, 0xa, 0x3c, 0xcd, 0xd, 0x9a, 0x89, 0xf8, + 0xc4, 0x3, 0x84, 0xd1, 0x3f, 0xe2, 0x10, 0xc, + 0x26, 0x89, 0xf8, 0xf5, 0xe6, 0x74, 0x20, 0x80, + 0x7f, 0xf1, 0x11, 0xee, 0xff, 0x43, 0x80, 0x72, + 0x45, 0xdf, 0xfa, 0xac, 0x80, 0x32, 0x4d, 0xdf, + 0xe8, 0x40, 0xf, 0xfe, 0xb2, 0xdd, 0xfa, 0x54, + 0x3, 0xfe, 0x4f, 0xbb, 0xd2, 0xe0, 0x1f, 0xfd, + 0x75, 0xaf, 0xff, 0xbb, 0x6e, 0xfb, 0x3b, 0xff, + 0xfd, 0xdb, 0x97, 0x7b, 0x37, 0xff, 0xdd, 0x28, + 0x1, 0xff, 0xd5, 0x12, 0x2f, 0xfe, 0x88, 0x80, + 0x7f, 0xf7, 0x5, 0xfb, 0x77, 0xf6, 0x74, 0xcf, + 0xbf, 0x37, 0x7f, 0xd0, 0x80, 0x1f, 0xfe, 0x64, + 0x8b, 0xbe, 0xab, 0x20, 0xf, 0xff, 0x91, 0x80, + 0x7f, 0xfe, 0x8b, 0x98, 0x3, 0xc4, 0x89, 0xc4, + 0x1, 0xff, 0xeb, 0x25, 0x42, 0x0, 0xe1, 0x48, + 0xbb, 0xa6, 0x88, 0x3, 0xff, 0x88, 0x46, 0x42, + 0x1, 0xff, 0xc7, 0x7e, 0x99, 0xd1, 0xa4, 0x1, + 0xa, 0x4f, 0xc1, 0x80, 0x63, 0x87, 0x40, 0xf, + 0xf9, 0xe7, 0x33, 0x6d, 0xa0, 0x0, 0x52, 0x37, + 0xb9, 0x6e, 0x40, 0x1f, 0xfc, 0x32, 0x46, 0x6e, + 0x53, 0x58, 0xcf, 0xb6, 0x20, 0x8, 0x52, 0x79, + 0xb4, 0x3, 0xff, 0x80, 0x24, 0x67, 0xc4, 0x1, + 0x85, 0xc0, 0x2, 0xde, 0x1, 0xff, 0xc4, 0x23, + 0x57, 0x9b, 0xde, 0xda, 0x73, 0x10, 0x8, 0x9a, + 0xb2, 0xd8, 0x84, 0x4, 0x3, 0x19, 0x30, 0x7, + 0xff, 0x8, 0x53, 0x4c, 0x2, 0x6e, 0x30, 0xe, + 0x25, 0x68, 0x9a, 0xbd, 0xef, 0xdc, 0xa8, 0x64, + 0x20, 0x8, 0x4d, 0xa7, 0x3b, 0x65, 0x48, 0x3, + 0x31, 0x10, 0x2, 0x15, 0xbf, 0xee, 0xff, 0xe1, + 0x52, 0x80, 0x47, 0x88, 0x20, 0x1c, 0x63, 0xea, + 0xca, 0x84, 0x20, 0x10, 0x9a, 0xbc, 0x56, 0x77, + 0x32, 0x58, 0xc4, 0x3, 0xf1, 0xcf, 0x42, 0x99, + 0x8, 0x0, 0x47, 0xff, 0x82, 0x2, 0x23, 0x58, + 0xf7, 0x20, 0xf, 0xa, 0x4f, 0x4c, 0x42, 0xaf, + 0x7b, 0xfb, 0x2a, 0x1d, 0x4c, 0x40, 0x3f, 0xf8, + 0x62, 0x6f, 0x59, 0xbd, 0xff, 0xff, 0xc4, 0xee, + 0x65, 0x39, 0x80, 0x70, + + /* U+5BC6 "密" */ + 0x0, 0xff, 0xe9, 0x9c, 0x77, 0xfe, 0xa5, 0x0, + 0xff, 0xf9, 0xb8, 0x80, 0x70, 0x98, 0x80, 0x7f, + 0xf5, 0xc5, 0xf3, 0xff, 0xff, 0x99, 0x6c, 0x20, + 0x19, 0x27, 0xbf, 0xff, 0xf9, 0x94, 0xa0, 0x1f, + 0xff, 0xf0, 0xf, 0xfe, 0xa, 0x57, 0xff, 0xff, + 0x3, 0x21, 0xd, 0x5e, 0xb3, 0xbf, 0xff, 0xf9, + 0x96, 0xc2, 0x1, 0xff, 0xd7, 0x35, 0xd6, 0x35, + 0x7a, 0xce, 0xe6, 0x4b, 0x18, 0x80, 0x71, 0xbd, + 0xe5, 0x3a, 0x90, 0x80, 0x7f, 0xf2, 0xc9, 0x4c, + 0xf1, 0x0, 0x80, 0x78, 0x51, 0x9d, 0x7, 0xfb, + 0x9b, 0x50, 0xa4, 0x26, 0xd3, 0x94, 0xc4, 0x46, + 0xbd, 0x84, 0x35, 0xac, 0x60, 0xe, 0x7e, 0x53, + 0x3c, 0x42, 0x1, 0xfc, 0x2b, 0x39, 0x97, 0x72, + 0x3b, 0xf6, 0x98, 0x80, 0xb6, 0x23, 0x4a, 0x81, + 0x2b, 0xd6, 0xf5, 0xbb, 0xa3, 0x7f, 0xb6, 0x50, + 0x40, 0x9e, 0xf2, 0x1d, 0xd5, 0xba, 0xb4, 0x45, + 0xe6, 0x68, 0x40, 0xf, 0xfe, 0x8, 0xac, 0x49, + 0x0, 0x44, 0xa4, 0x1, 0xff, 0xc2, 0x12, 0x29, + 0x62, 0x58, 0xc0, 0x4, 0xf7, 0x90, 0x82, 0xf, + 0xcc, 0x44, 0x48, 0xcc, 0x4a, 0x8, 0x7, 0xff, + 0x4, 0x52, 0x36, 0xd4, 0x40, 0x9, 0x12, 0x60, + 0x1f, 0xc2, 0x48, 0xf5, 0xbd, 0x92, 0xa4, 0x2, + 0x6f, 0x5b, 0xa8, 0x43, 0x45, 0x33, 0x24, 0x66, + 0x20, 0xc4, 0xd, 0xaf, 0x25, 0x44, 0x3, 0xf1, + 0xc6, 0x5b, 0x98, 0x81, 0x35, 0xd2, 0x88, 0x7, + 0xf1, 0xc6, 0x5c, 0x29, 0x0, 0x9b, 0x4e, 0x7e, + 0x42, 0x90, 0x4, 0xfd, 0x59, 0xbd, 0x26, 0x67, + 0xcd, 0x83, 0x0, 0x13, 0x56, 0xb9, 0x80, 0x78, + 0xe7, 0xa1, 0x51, 0xaf, 0x25, 0x0, 0x91, 0xa2, + 0xbd, 0xc4, 0x3, 0xfc, 0x4a, 0xc1, 0xf5, 0x13, + 0x35, 0x55, 0x96, 0xa0, 0x12, 0xe1, 0x80, 0x46, + 0xfb, 0x4a, 0x20, 0x4a, 0x42, 0x1, 0xf8, 0x4f, + 0xf0, 0x76, 0xb3, 0xb9, 0xb7, 0x2e, 0xa6, 0x20, + 0x23, 0x0, 0x7c, 0x48, 0xac, 0xdf, 0x2a, 0xc6, + 0x20, 0x27, 0x10, 0x50, 0xf, 0xa, 0xd7, 0xf6, + 0xca, 0x90, 0x7, 0x13, 0x56, 0xdd, 0x43, 0xb2, + 0x18, 0x80, 0x92, 0x34, 0x5e, 0xf7, 0x6f, 0xee, + 0x6e, 0xae, 0x19, 0x57, 0x3d, 0x66, 0xef, 0xbb, + 0xfb, 0x1c, 0xc0, 0x3f, 0xc2, 0x20, 0xf, 0xe2, + 0x69, 0x83, 0x1, 0x35, 0x79, 0xce, 0xe6, 0xdc, + 0xba, 0x10, 0x80, 0x61, 0x11, 0x11, 0xf9, 0xd5, + 0x71, 0x81, 0x91, 0x78, 0x40, 0x3f, 0xfa, 0x4, + 0xf9, 0xfd, 0x90, 0x17, 0x9d, 0xfd, 0x28, 0x1, + 0xff, 0xd6, 0x39, 0xef, 0xfd, 0x48, 0x1, 0xff, + 0xff, 0x0, 0xff, 0xff, 0x80, 0x7f, 0xf2, 0x4, + 0xc0, 0x3f, 0xf8, 0x2e, 0x1, 0xf1, 0x88, 0x7, + 0xff, 0x1, 0xc0, 0x3f, 0xfa, 0xeb, 0x7f, 0xff, + 0xfc, 0xb, 0x61, 0x0, 0xc9, 0x3d, 0xff, 0xff, + 0xc0, 0xb6, 0x10, 0xf, 0xff, 0xf8, 0x7, 0xff, + 0x49, 0xaf, 0xff, 0xff, 0xad, 0x6c, 0x20, 0x1f, + 0xfc, 0x40, + + /* U+5BF8 "寸" */ + 0x0, 0xff, 0xef, 0x9, 0x17, 0x8, 0x7, 0xff, + 0xc5, 0x2f, 0x77, 0xa9, 0x84, 0x3, 0xff, 0xfe, + 0x1, 0xff, 0xff, 0x0, 0xff, 0xff, 0x80, 0x91, + 0x9f, 0xff, 0x6c, 0x40, 0x39, 0xf9, 0x4c, 0xff, + 0xf8, 0x44, 0x1, 0x13, 0x7e, 0x67, 0xff, 0x6a, + 0x10, 0x3, 0x8d, 0xef, 0x33, 0xff, 0x83, 0xb6, + 0x60, 0x1f, 0xff, 0xb2, 0x7d, 0xff, 0xff, 0xed, + 0x52, 0x80, 0x71, 0xcf, 0x7f, 0xff, 0xf0, 0x7a, + 0x4c, 0x3, 0xff, 0xbe, 0x20, 0x1e, 0x70, 0xf, + 0xfe, 0x90, 0x9b, 0xd5, 0xca, 0x8, 0x7, 0xff, + 0xbc, 0x56, 0xb2, 0x15, 0x1a, 0xf5, 0xc8, 0x3, + 0xff, 0xda, 0x2b, 0x56, 0xa2, 0x1, 0x1c, 0x65, + 0x28, 0x80, 0x7f, 0xfb, 0x5, 0x2b, 0x60, 0xc0, + 0x21, 0x5a, 0xd7, 0x20, 0xf, 0xff, 0x69, 0xbe, + 0xca, 0x0, 0x63, 0x8e, 0x72, 0x0, 0xff, 0xf6, + 0x8b, 0x54, 0xa0, 0x6, 0x38, 0x95, 0x10, 0xf, + 0xff, 0x68, 0xb4, 0xc1, 0x0, 0xa3, 0xfb, 0x88, + 0x7, 0xff, 0xbc, 0x9f, 0x3b, 0x97, 0x8, 0x40, + 0x1f, 0xff, 0x21, 0x10, 0x7, 0xff, 0xfc, 0x3, + 0xff, 0x80, 0x20, 0x1f, 0xfe, 0x83, 0x57, 0x73, + 0x37, 0xf9, 0xe3, 0x90, 0x3, 0xc6, 0x20, 0x1f, + 0xfd, 0xf2, 0x3b, 0x89, 0x9f, 0xf4, 0x3a, 0x8, + 0x6, 0x3d, 0x70, 0xf, 0xff, 0x0, 0xbd, 0x20, + 0x7, 0xf0, 0x88, 0x88, 0x6a, 0xd3, 0xb8, 0xc4, + 0x1, 0xff, 0xe1, 0x16, 0xbf, 0xff, 0xee, 0xe6, + 0xeb, 0x2a, 0x58, 0x80, 0x3f, 0xf9, 0x40, + + /* U+5BF9 "对" */ + 0x0, 0xff, 0xf4, 0x89, 0xaa, 0xe4, 0x31, 0x0, + 0xff, 0xf9, 0xad, 0x57, 0xc4, 0x1, 0xff, 0xff, + 0x0, 0xff, 0x84, 0x91, 0x3f, 0xf9, 0x2a, 0xb2, + 0x10, 0x80, 0x7f, 0xf7, 0xca, 0xea, 0xef, 0xff, + 0x91, 0x55, 0x5e, 0xe9, 0x84, 0x3, 0xff, 0xbd, + 0xca, 0x67, 0xff, 0xc6, 0x21, 0x0, 0xe5, 0x21, + 0x0, 0xff, 0xee, 0x9b, 0xde, 0x67, 0xff, 0x17, + 0x6d, 0x40, 0x31, 0xf3, 0x2c, 0xe6, 0x7f, 0xf1, + 0x65, 0xc0, 0x30, 0xbf, 0x66, 0x7a, 0xc, 0x3, + 0xff, 0x9c, 0xbe, 0xa0, 0x19, 0x4c, 0xe2, 0x33, + 0xff, 0xe2, 0x90, 0x80, 0x70, 0x91, 0x9f, 0x89, + 0xc0, 0x3f, 0xe1, 0x22, 0x0, 0x7f, 0xc2, 0x6a, + 0x20, 0x11, 0xf3, 0xa, 0x45, 0x57, 0xff, 0x15, + 0xcc, 0x3, 0x91, 0xea, 0xbd, 0x2a, 0x1, 0xf8, + 0x96, 0xb3, 0x72, 0xdc, 0xc0, 0x3f, 0x26, 0x98, + 0x6, 0x53, 0x20, 0x23, 0x55, 0xff, 0xe2, 0xe2, + 0x80, 0x61, 0x2b, 0x55, 0xf1, 0x88, 0x7, 0xc2, + 0xda, 0xc4, 0x2, 0x91, 0x98, 0x83, 0x0, 0xc9, + 0x8a, 0x1, 0x97, 0x10, 0x3, 0xe2, 0x32, 0x0, + 0xff, 0xeb, 0x8a, 0x46, 0xe3, 0x98, 0x4, 0x6f, + 0x98, 0x84, 0x5d, 0x70, 0xc, 0x98, 0xa0, 0x19, + 0x23, 0x7f, 0x73, 0x9c, 0x80, 0x3f, 0xfb, 0x2, + 0x71, 0x98, 0x73, 0x0, 0x8d, 0xee, 0x98, 0x40, + 0x24, 0xd7, 0x0, 0xe4, 0xd7, 0x10, 0x1, 0xc4, + 0xb0, 0x80, 0x7f, 0xf6, 0x8e, 0x36, 0xd8, 0x80, + 0x3f, 0x1e, 0x38, 0x80, 0x79, 0x62, 0x6, 0x1, + 0x24, 0x41, 0x0, 0x3f, 0xfb, 0x62, 0x93, 0xce, + 0x40, 0x1e, 0x2d, 0x41, 0x0, 0xf8, 0x9a, 0x18, + 0x40, 0x2, 0xde, 0xa0, 0x1f, 0xfd, 0xc3, 0xb5, + 0x20, 0xf, 0xa, 0xd6, 0xb9, 0x80, 0x7c, 0x94, + 0xc2, 0x1, 0x24, 0xb0, 0x80, 0x7f, 0xf6, 0x5, + 0xbd, 0xc8, 0x2, 0x23, 0x30, 0x80, 0x47, 0x1d, + 0x26, 0x1, 0xe3, 0xa9, 0x55, 0x3d, 0x73, 0x8, + 0x7, 0xff, 0x58, 0x9a, 0xa4, 0xc0, 0x22, 0x6e, + 0xcd, 0xa6, 0x10, 0x8, 0x9b, 0xa0, 0xc0, 0x38, + 0x9e, 0xa9, 0xa, 0x40, 0x1f, 0xfd, 0x62, 0x7e, + 0x94, 0x0, 0x85, 0xa6, 0x46, 0x2, 0x93, 0x4c, + 0x40, 0x11, 0x22, 0x8, 0x3, 0xff, 0xbc, 0x2b, + 0x59, 0x6, 0x1, 0xa, 0xd4, 0xa0, 0x7, 0x92, + 0x25, 0x96, 0x33, 0xe, 0x40, 0x1f, 0xfd, 0xa1, + 0x37, 0xbf, 0xa5, 0x10, 0x8, 0xdf, 0x69, 0x0, + 0x3f, 0x85, 0x26, 0x9c, 0xc0, 0x3f, 0x9, 0xaa, + 0xfe, 0x6d, 0x40, 0xc, 0x62, 0x20, 0xf, 0xfe, + 0xa, 0xd5, 0x10, 0x40, 0x2, 0x71, 0x98, 0x83, + 0x0, 0xff, 0xe7, 0x2f, 0x55, 0x7d, 0x2c, 0x40, + 0x19, 0xf0, 0x80, 0x3f, 0xf8, 0x29, 0x39, 0x4c, + 0xb1, 0xb8, 0xe6, 0x1, 0xff, 0xd0, 0x17, 0xd3, + 0x0, 0xc2, 0x31, 0x1a, 0xb4, 0xe5, 0x20, 0x7, + 0xfc, + + /* U+5BFC "导" */ + 0x0, 0xfc, 0x23, 0xff, 0xe4, 0x0, 0xff, 0xe3, + 0x9c, 0xff, 0x77, 0xff, 0x8e, 0x50, 0x3, 0xff, + 0x9a, 0x24, 0x5f, 0xfd, 0x61, 0x10, 0x7, 0xff, + 0x4d, 0x23, 0x77, 0xff, 0xae, 0xc2, 0x1, 0xff, + 0xd2, 0x71, 0x10, 0x7, 0xff, 0x55, 0xc4, 0x3, + 0xff, 0xa6, 0x71, 0xdf, 0xff, 0xfd, 0x5b, 0x61, + 0x0, 0xff, 0xe9, 0x89, 0x17, 0xff, 0x70, 0xc5, + 0xc0, 0x3f, 0xf9, 0x89, 0x19, 0xbb, 0xff, 0xdb, + 0xca, 0x4a, 0xa4, 0x3a, 0x98, 0x80, 0x7f, 0x8b, + 0x88, 0x3, 0x2e, 0xb2, 0x11, 0x4, 0x60, 0xf, + 0xfe, 0x88, 0x88, 0x8d, 0xa2, 0x55, 0x4f, 0x12, + 0x86, 0x1, 0xfe, 0x15, 0xa4, 0x10, 0x0, 0xa4, + 0x5e, 0xeb, 0xba, 0xff, 0xff, 0xe8, 0xf7, 0x37, + 0x25, 0x44, 0x0, 0x29, 0x4a, 0x40, 0x1f, 0xf1, + 0x35, 0xfe, 0x54, 0xbb, 0x2a, 0x91, 0x3f, 0xfb, + 0xa, 0xa6, 0x79, 0xbc, 0xb6, 0x20, 0xf, 0xfe, + 0x18, 0x9a, 0xb4, 0x4d, 0x52, 0xef, 0xff, 0x99, + 0x1a, 0x20, 0x18, 0xfe, 0xee, 0xaa, 0x4c, 0x32, + 0x10, 0x7, 0xf8, 0x47, 0xff, 0xb8, 0xd8, 0x89, + 0xc6, 0x62, 0x11, 0xff, 0xe0, 0x80, 0x72, 0x47, + 0xf7, 0x7f, 0xf6, 0xa9, 0x44, 0x3, 0x24, 0x6f, + 0x77, 0xff, 0x3, 0x5c, 0x40, 0x3f, 0xfe, 0xce, + 0x20, 0x19, 0x27, 0xbf, 0xff, 0x6c, 0xa8, 0x80, + 0x5, 0x27, 0x7f, 0xff, 0xf9, 0x16, 0xc2, 0x1, + 0x92, 0x7f, 0xff, 0xf8, 0x36, 0xc2, 0x1, 0xff, + 0xc2, 0x32, 0x33, 0x0, 0x5, 0x27, 0x31, 0x6, + 0x20, 0x1f, 0xfe, 0xb1, 0x49, 0xcb, 0x73, 0x0, + 0x9, 0xbe, 0xd3, 0x10, 0x7, 0xff, 0xb0, 0x52, + 0x33, 0xe, 0x40, 0x1, 0x49, 0xe7, 0x20, 0xf, + 0xff, 0x71, 0xc6, 0x4a, 0x12, 0x47, 0xb9, 0x0, + 0x7f, 0xf0, 0x4c, 0x40, 0x38, 0xc0, 0x3f, 0xfb, + 0x62, 0xd7, 0xb6, 0xe6, 0x7, 0x1b, 0xff, 0xfe, + 0xb5, 0x0, 0xc4, 0x6c, 0x1, 0xff, 0xe3, 0x3a, + 0x52, 0x0, 0xfc, 0x24, 0x43, 0x46, 0x9e, 0x83, + 0x0, 0xff, 0xe3, 0x0, + + /* U+5C0F "小" */ + 0x0, 0xff, 0xe9, 0x8a, 0x3c, 0xcf, 0x31, 0x0, + 0x7f, 0xfc, 0xce, 0xd9, 0xbb, 0xd8, 0x3, 0xff, + 0xfe, 0x1, 0xff, 0xff, 0x0, 0xff, 0xff, 0x80, + 0x7f, 0xff, 0xc4, 0x8c, 0x80, 0x3f, 0xf9, 0xe4, + 0xf9, 0xfe, 0xed, 0xc8, 0x40, 0xf, 0xfe, 0x79, + 0xbd, 0xf7, 0x37, 0x3d, 0xc8, 0x3, 0xff, 0x9a, + 0xf8, 0x60, 0x1, 0x21, 0xf6, 0x0, 0xff, 0xe7, + 0x9a, 0x10, 0x6, 0x28, 0x82, 0x88, 0x7, 0xff, + 0x29, 0x31, 0x40, 0x31, 0x2a, 0x10, 0x7, 0xff, + 0x40, 0xe2, 0x6, 0x1, 0x96, 0x24, 0xc0, 0x3f, + 0xf9, 0x7, 0xae, 0x20, 0x10, 0xad, 0x98, 0x7, + 0xff, 0x48, 0x5a, 0x18, 0x40, 0x22, 0x78, 0x61, + 0x0, 0xff, 0xe2, 0x9d, 0xb8, 0x80, 0x42, 0xf6, + 0x60, 0x1f, 0xfd, 0x54, 0xb9, 0x30, 0xc, 0x91, + 0x3, 0x0, 0xff, 0xe1, 0xa5, 0x30, 0x80, 0x42, + 0xfa, 0x60, 0x1f, 0xfd, 0x72, 0x78, 0x51, 0x0, + 0x85, 0xa1, 0x84, 0x3, 0xfe, 0x15, 0xf6, 0x10, + 0x8, 0x5e, 0x90, 0x3, 0xff, 0xb4, 0x92, 0xc4, + 0x1, 0x92, 0x9c, 0x40, 0x3f, 0x8a, 0x61, 0x0, + 0x31, 0xcd, 0x98, 0x7, 0xff, 0x70, 0xea, 0x84, + 0x1, 0x8e, 0xd8, 0x80, 0x3c, 0x4f, 0xce, 0x40, + 0x19, 0x65, 0x88, 0x3, 0xff, 0xbc, 0x4b, 0x46, + 0x1, 0x8a, 0x94, 0x80, 0x21, 0x59, 0x83, 0x0, + 0xc9, 0x36, 0xa2, 0x1, 0xff, 0xe0, 0x25, 0x42, + 0x0, 0xc5, 0x68, 0x20, 0x1, 0x5a, 0xc9, 0x63, + 0x49, 0x93, 0x8, 0x7, 0xff, 0x8c, 0xad, 0x4, + 0x46, 0xd1, 0x28, 0x20, 0x18, 0x4d, 0xa7, 0x2d, + 0x88, 0x3, 0xff, 0xcc, 0x73, 0xdc, 0xc9, 0x75, + 0x20, 0xf, 0xff, 0xf8, 0x7, 0xff, 0x14, 0x4d, + 0x57, 0xc8, 0x92, 0xaa, 0x70, 0x80, 0x30, 0x80, + 0x7f, 0xf9, 0xc5, 0xfe, 0xea, 0xb5, 0xdd, 0x54, + 0x74, 0x10, 0xc, 0xb8, 0xa0, 0x1f, 0xfe, 0x64, + 0xe4, 0x0, 0xfc, 0x22, 0x24, 0x43, 0x4e, 0x5a, + 0x88, 0x7, 0xff, 0x9d, 0x2b, 0xff, 0xf7, 0x73, + 0x6e, 0xd2, 0xc6, 0x1, 0xff, 0xd6, + + /* U+5C3A "尺" */ + 0x0, 0xff, 0xe0, 0x8, 0xff, 0xf9, 0xc0, 0x3f, + 0xf9, 0x9, 0x1f, 0xdd, 0xff, 0xe3, 0xf8, 0x30, + 0xf, 0xff, 0xf8, 0x7, 0xff, 0x2c, 0x5a, 0xff, + 0xff, 0xfa, 0xbb, 0x6, 0x1, 0xff, 0xd7, 0x70, + 0xf, 0xfe, 0xa9, 0x8b, 0x80, 0x7f, 0xff, 0xc0, + 0x3f, 0xff, 0xe0, 0x1f, 0xfc, 0xa1, 0x0, 0xff, + 0xff, 0x80, 0xb6, 0xef, 0xff, 0x5b, 0xe1, 0x0, + 0x3f, 0xf9, 0xe6, 0x1, 0xf0, 0x91, 0x7f, 0xf5, + 0x44, 0x40, 0x1f, 0xfc, 0xf1, 0x0, 0xf0, 0xac, + 0x5d, 0xff, 0xf0, 0xe1, 0x0, 0x38, 0xda, 0xae, + 0xff, 0xf8, 0x75, 0x64, 0x1, 0xff, 0xc6, 0x13, + 0x10, 0xe, 0x3d, 0x54, 0x4f, 0xfe, 0x1b, 0xfa, + 0x80, 0x63, 0x23, 0x54, 0x4f, 0xfe, 0x19, 0x8, + 0x7, 0xff, 0x18, 0xf9, 0x80, 0x38, 0x44, 0x60, + 0x1f, 0xfc, 0x44, 0xe6, 0x10, 0x9, 0x29, 0x88, + 0x3, 0xff, 0xac, 0xc2, 0x40, 0x1c, 0xc6, 0x20, + 0x1f, 0xfc, 0x54, 0xa7, 0x10, 0x8, 0xe6, 0xcc, + 0x3, 0xff, 0xa8, 0x46, 0x80, 0x1c, 0x7a, 0x80, + 0x1f, 0xfc, 0x73, 0xb9, 0x30, 0x8, 0x5b, 0xa5, + 0x0, 0x3f, 0xfa, 0x22, 0xb6, 0x40, 0x18, 0x55, + 0x4, 0x3, 0xff, 0x90, 0x4f, 0xee, 0x40, 0x11, + 0x35, 0x4a, 0x8, 0x7, 0xff, 0x34, 0x5e, 0xcc, + 0x3, 0x93, 0xc, 0x3, 0xff, 0x96, 0x71, 0xcc, + 0x40, 0x10, 0xb5, 0x6c, 0x20, 0x80, 0x7f, 0xf2, + 0x49, 0xa8, 0xc0, 0x30, 0xb4, 0xa8, 0x7, 0xff, + 0x38, 0xe7, 0x9c, 0xc0, 0x21, 0x37, 0xbc, 0xa6, + 0x20, 0xf, 0xfe, 0x2a, 0x44, 0x98, 0x6, 0x29, + 0xb3, 0x0, 0xff, 0xe8, 0x9c, 0x6e, 0x39, 0x80, + 0x62, 0x59, 0xdd, 0x5c, 0x31, 0x88, 0x7, 0xe1, + 0x5a, 0xa2, 0x88, 0x4, 0x2b, 0x2c, 0x40, 0x1f, + 0xfd, 0x41, 0x38, 0xcc, 0x42, 0x8, 0x6, 0x24, + 0x79, 0xce, 0xe5, 0xb9, 0x0, 0x63, 0x30, 0x80, + 0x62, 0x6a, 0xa2, 0x8, 0x7, 0xff, 0x64, 0xde, + 0xfb, 0x6a, 0x14, 0x84, 0x2, 0x14, 0xe6, 0x20, + 0xc, 0x4d, 0x7f, 0x71, 0x3d, 0x28, 0x1, 0xff, + 0xe0, 0x25, 0x7a, 0xde, 0xda, 0xa6, 0xda, 0x88, + 0x4, + + /* U+5DE5 "工" */ + 0x0, 0xc2, 0x6a, 0xbf, 0xfe, 0xb3, 0x10, 0xf, + 0xf2, 0xd5, 0x7f, 0xfb, 0x25, 0x0, 0x3f, 0xf8, + 0x2, 0x1, 0xff, 0xf6, 0x49, 0xef, 0xff, 0xfe, + 0x4e, 0xc1, 0x0, 0x72, 0xdf, 0xff, 0xff, 0x2e, + 0x94, 0x3, 0xff, 0xfe, 0x1, 0xff, 0xff, 0x0, + 0xff, 0xff, 0x80, 0x7f, 0xff, 0xc0, 0x3f, 0xff, + 0xe0, 0x1f, 0xff, 0xf0, 0xf, 0xff, 0xf8, 0x7, + 0xff, 0xfc, 0x3, 0xff, 0xfe, 0x1, 0xff, 0xff, + 0x0, 0xff, 0xe2, 0x88, 0xff, 0xf3, 0xfc, 0x3, + 0xe2, 0x11, 0xff, 0xe7, 0x80, 0x63, 0x8f, 0xee, + 0xff, 0xe6, 0xe3, 0x90, 0x7, 0x2c, 0xf7, 0x7f, + 0xf3, 0xbe, 0x4c, 0x3, 0xff, 0xf6, 0x73, 0x9b, + 0xbf, 0xff, 0x1c, 0x83, 0x0, 0x0, + + /* U+5DE6 "左" */ + 0x0, 0xff, 0xff, 0x80, 0x7f, 0xf2, 0x89, 0xf7, + 0xfe, 0xec, 0x72, 0x0, 0xff, 0xf9, 0x3e, 0x90, + 0x4, 0x2e, 0x44, 0x0, 0xff, 0xf8, 0x9e, 0xb8, + 0x6, 0x23, 0x70, 0xf, 0xff, 0x92, 0x99, 0x0, + 0x67, 0xd2, 0x0, 0xff, 0xef, 0xb, 0x67, 0xff, + 0xff, 0x16, 0x50, 0x3, 0x96, 0xbf, 0xff, 0xfa, + 0xbb, 0x6, 0x1, 0xf8, 0x40, 0x3f, 0xfe, 0x6, + 0x1, 0xfc, 0x2d, 0xdb, 0xbf, 0xfc, 0x2c, 0x73, + 0x0, 0xc2, 0xb5, 0xbb, 0xff, 0xd7, 0xc9, 0x30, + 0xf, 0xc2, 0x45, 0xff, 0xc3, 0x62, 0x30, 0x8, + 0x5f, 0x94, 0x8b, 0xff, 0xb0, 0x20, 0x1f, 0xfc, + 0xc4, 0xf5, 0x0, 0x85, 0xf5, 0x0, 0x3f, 0xfe, + 0x29, 0xa8, 0x1, 0xb, 0xea, 0x0, 0x7f, 0xfc, + 0x53, 0x5c, 0x40, 0x21, 0x79, 0xdd, 0xff, 0xec, + 0xca, 0x0, 0x7f, 0xf2, 0x45, 0x7d, 0x84, 0x0, + 0x4a, 0xa3, 0x22, 0xff, 0xed, 0x18, 0x80, 0x7f, + 0xf2, 0x5, 0xa5, 0x0, 0x24, 0xb8, 0x87, 0x5d, + 0xff, 0xf0, 0x29, 0x88, 0x3, 0xa, 0xcd, 0xdf, + 0xff, 0x12, 0x50, 0x3, 0xff, 0x8e, 0x73, 0x46, + 0x0, 0x16, 0xf6, 0x22, 0x1a, 0x27, 0xff, 0x7, + 0xc4, 0x3, 0x19, 0x22, 0x7f, 0xf1, 0x4c, 0x40, + 0x3f, 0xf8, 0xa4, 0xd0, 0xe4, 0x0, 0x26, 0xb4, + 0x0, 0xff, 0xf7, 0x8a, 0xc4, 0x10, 0x2, 0x4b, + 0x92, 0x0, 0xff, 0xf7, 0xa4, 0x5a, 0x88, 0x0, + 0x5b, 0xd8, 0x40, 0x3f, 0xfd, 0xa4, 0xd7, 0x4c, + 0x20, 0x1, 0x5b, 0x84, 0x0, 0xff, 0xf6, 0xa, + 0x4f, 0xca, 0x8, 0x0, 0x56, 0xec, 0xa2, 0x1, + 0xff, 0xec, 0x39, 0x93, 0x10, 0x4, 0x4d, 0x56, + 0xa2, 0x0, 0x12, 0x2f, 0xfe, 0x4f, 0x0, 0x78, + 0x58, 0x8b, 0xff, 0x8e, 0x20, 0x1c, 0x71, 0xce, + 0x42, 0x93, 0xf2, 0x82, 0x1, 0x2d, 0xee, 0xff, + 0xf2, 0x31, 0xcc, 0x3, 0x13, 0x5e, 0xef, 0xff, + 0x1e, 0xd0, 0x3, 0xc7, 0x19, 0xf6, 0xc4, 0x1, + 0xff, 0xf1, + + /* U+5E74 "年" */ + 0x0, 0xff, 0xff, 0x80, 0x7f, 0xf0, 0x8e, 0x37, + 0xb7, 0x2a, 0x10, 0x40, 0x3f, 0xfe, 0x29, 0x2c, + 0x42, 0x46, 0x80, 0xe2, 0x1, 0xff, 0xef, 0x27, + 0x85, 0x10, 0x8, 0x5f, 0x40, 0xcf, 0xff, 0xb4, + 0x40, 0x1f, 0xfc, 0x71, 0x58, 0x81, 0x80, 0x70, + 0xb5, 0x66, 0x7f, 0xf6, 0xed, 0x0, 0x3f, 0xf8, + 0x82, 0x97, 0x65, 0x0, 0xff, 0xf2, 0x8, 0x7, + 0xff, 0x10, 0x56, 0xa8, 0xa2, 0x1, 0x1c, 0x6f, + 0xff, 0xff, 0xe, 0xd8, 0x3, 0x96, 0xbf, 0xff, + 0xf8, 0xfd, 0x28, 0x1, 0xff, 0xc0, 0x38, 0xda, + 0x41, 0x0, 0x8e, 0x39, 0xc8, 0x3, 0xff, 0xd6, + 0x6f, 0x98, 0x73, 0x0, 0x85, 0x2b, 0x5c, 0x80, + 0x3f, 0xfd, 0xa6, 0xb2, 0xc4, 0x2, 0x71, 0x94, + 0x17, 0xff, 0xff, 0xc7, 0xb6, 0x0, 0xe5, 0xaf, + 0xff, 0xfe, 0x35, 0xb0, 0x80, 0x7f, 0xc4, 0xb3, + 0xbd, 0xf8, 0xe4, 0x20, 0x20, 0x1f, 0xfe, 0x27, + 0x0, 0xff, 0xe2, 0x88, 0x80, 0x3f, 0xc2, 0xd5, + 0xbb, 0xff, 0xc0, 0x95, 0x0, 0xe4, 0x8d, 0xdf, + 0xfe, 0x3b, 0x8, 0x7, 0xff, 0x3c, 0xc5, 0x88, + 0xbf, 0xf8, 0x26, 0x1, 0xc2, 0x45, 0xff, 0xc7, + 0x10, 0xf, 0xff, 0xf8, 0x7, 0xff, 0xfc, 0x3, + 0x84, 0xd5, 0x7f, 0xd8, 0xc0, 0x18, 0xcc, 0x8a, + 0xbf, 0xfc, 0xc, 0x50, 0xe, 0x6c, 0x55, 0xff, + 0xe5, 0xa1, 0x0, 0x71, 0x55, 0xd5, 0x7f, 0x31, + 0x0, 0x61, 0x48, 0xaa, 0xff, 0xe0, 0x39, 0x80, + 0x71, 0xb5, 0x57, 0xff, 0x2f, 0xd0, 0x3, 0xdc, + 0xa6, 0x7f, 0xfd, 0x22, 0x10, 0xf, 0x9, 0x19, + 0xff, 0xf2, 0x88, 0xc0, 0x38, 0xde, 0xf3, 0x3f, + 0xfa, 0x52, 0xe0, 0x1c, 0xb7, 0xb9, 0x9f, 0xfc, + 0xa9, 0x50, 0xf, 0xff, 0xf8, 0x7, 0xff, 0xfc, + 0x3, 0xff, 0xfe, 0x1, 0xff, 0xf6, + + /* U+5E8F "序" */ + 0x0, 0xff, 0xeb, 0x11, 0xaa, 0xe4, 0x31, 0x0, + 0xff, 0xf9, 0xa4, 0x55, 0x78, 0x80, 0x3f, 0xff, + 0xe0, 0x1f, 0xfd, 0x52, 0x6a, 0xcc, 0xff, 0xe6, + 0x5a, 0x80, 0x61, 0x7e, 0xcc, 0xff, 0xe6, 0x42, + 0x0, 0x7f, 0xdc, 0xe6, 0x7f, 0xfc, 0xc2, 0x10, + 0xe, 0x12, 0x33, 0xff, 0xe6, 0x90, 0x7, 0xff, + 0x15, 0x22, 0xef, 0xff, 0xcf, 0xe, 0x1, 0xff, + 0xc4, 0x12, 0x44, 0xff, 0xee, 0xaa, 0x91, 0x3f, + 0x8c, 0x40, 0x3f, 0xf9, 0x67, 0x1d, 0xff, 0xff, + 0xd5, 0xee, 0xad, 0xd0, 0x40, 0x3f, 0xfa, 0x23, + 0xc8, 0x67, 0xff, 0xce, 0x21, 0x0, 0xf8, 0x5f, + 0xc0, 0x3f, 0xf8, 0xc2, 0x1, 0xff, 0xc0, 0x26, + 0xac, 0xcf, 0x74, 0xd4, 0x76, 0xe6, 0x7f, 0xb7, + 0xe9, 0x80, 0x40, 0x30, 0x9c, 0x66, 0x21, 0x4, + 0x3, 0xff, 0xae, 0x2b, 0x59, 0x53, 0x7b, 0xdc, + 0xb9, 0x75, 0x32, 0x47, 0xbf, 0xc9, 0x52, 0x1, + 0x37, 0xac, 0xc3, 0x98, 0x7, 0xff, 0x28, 0xc0, + 0x3f, 0xf8, 0x82, 0xb7, 0xb4, 0xea, 0x42, 0x24, + 0x68, 0xac, 0xdb, 0x84, 0x10, 0x14, 0x8b, 0xfc, + 0x85, 0x20, 0xf, 0xfe, 0x90, 0x80, 0x7f, 0xf0, + 0x44, 0xd6, 0x2b, 0x7f, 0x6a, 0x14, 0xc4, 0x3, + 0xc2, 0xda, 0x6a, 0x40, 0x1f, 0xc2, 0x30, 0x7, + 0xff, 0x9, 0xc4, 0x40, 0x11, 0x80, 0x93, 0xef, + 0xff, 0xff, 0xf, 0xb6, 0xa1, 0x4c, 0x40, 0x3e, + 0x25, 0x8b, 0xdf, 0xff, 0xee, 0xeb, 0x69, 0x88, + 0x3, 0xfc, 0x26, 0x1, 0x87, 0xcc, 0x5, 0x88, + 0xbf, 0xf8, 0xe2, 0x1, 0xe1, 0x22, 0xff, 0x84, + 0x3, 0xe1, 0xd4, 0x20, 0xf, 0xe1, 0x36, 0x0, + 0xce, 0x42, 0x4d, 0x7b, 0xbf, 0xfc, 0x6c, 0x83, + 0x0, 0xc7, 0x19, 0xbb, 0xfb, 0x21, 0x4, 0x3, + 0x24, 0xf3, 0x90, 0x7, 0xf9, 0x7c, 0x80, 0x31, + 0x8, 0x7, 0xff, 0x68, 0x9a, 0xad, 0x44, 0x5, + 0x26, 0x98, 0x80, 0x3f, 0xe1, 0x35, 0x10, 0x8, + 0xfd, 0x40, 0x3f, 0xfb, 0x9, 0x1f, 0x28, 0x20, + 0x4d, 0xb6, 0xc2, 0x1, 0xff, 0xc1, 0x5d, 0x30, + 0x8, 0x51, 0x44, 0x3, 0xff, 0xb0, 0xb7, 0x66, + 0x45, 0x9f, 0x93, 0x0, 0xff, 0xe1, 0xa7, 0x20, + 0x6, 0x5d, 0x30, 0xf, 0xfe, 0xc8, 0x9b, 0x4d, + 0xd3, 0x10, 0x7, 0xff, 0xc, 0x5b, 0xd4, 0x40, + 0x24, 0xe4, 0x0, 0xff, 0xe0, 0x88, 0xff, 0xc5, + 0xc2, 0x1, 0xff, 0xd6, 0x4d, 0x40, 0x8, 0x5b, + 0xd4, 0x40, 0x3f, 0xf8, 0x4, 0xd9, 0xdd, 0xfd, + 0x8e, 0x40, 0x10, 0xa9, 0x8, 0x7, 0xff, 0x3d, + 0x6f, 0x69, 0x96, 0x6d, 0x0, 0x3f, 0xf8, 0x44, + 0xb4, 0x40, 0x1f, 0x8, 0x88, 0xd1, 0xa3, 0x61, + 0x0, 0x3f, 0xf9, 0xc0, + + /* U+5EA6 "度" */ + 0x0, 0xff, 0xea, 0x89, 0x19, 0xf1, 0x8, 0x7, + 0xff, 0xcd, 0x23, 0x33, 0xb9, 0x84, 0x3, 0xff, + 0xfe, 0x1, 0xff, 0xd5, 0x27, 0xcf, 0xff, 0xfe, + 0x5d, 0x28, 0x7, 0x1c, 0x77, 0xff, 0xff, 0x32, + 0x94, 0x3, 0xff, 0x80, 0x20, 0x1f, 0xff, 0xf1, + 0x6b, 0xff, 0xff, 0x6d, 0x43, 0xbd, 0x15, 0xbf, + 0xff, 0xfc, 0x2d, 0xa8, 0x77, 0xa2, 0xb7, 0xff, + 0xfa, 0x94, 0x3, 0xff, 0x8c, 0xe0, 0x1f, 0xe1, + 0xc9, 0x77, 0xa7, 0x44, 0x3, 0xff, 0x84, 0xd9, + 0x2e, 0xf4, 0xe0, 0x80, 0x7f, 0xf4, 0x8d, 0xaa, + 0xbf, 0x7a, 0x8, 0x4, 0x2b, 0xf5, 0x5f, 0xfc, + 0x28, 0x41, 0x0, 0x85, 0x3e, 0xab, 0xf9, 0xcc, + 0x3, 0xff, 0x8e, 0xfe, 0xab, 0xf8, 0xc8, 0x3, + 0x88, 0xd5, 0x7f, 0xf8, 0x46, 0x40, 0x1c, 0x46, + 0xab, 0xfd, 0xac, 0x1, 0xff, 0x78, 0x7, 0xc9, + 0x1b, 0xbf, 0xa9, 0x44, 0x2, 0x16, 0xad, 0xdf, + 0xfe, 0x15, 0x28, 0x6, 0x15, 0xad, 0xdf, 0xeb, + 0x50, 0xf, 0xfe, 0x40, 0x91, 0x7e, 0x63, 0x0, + 0xe1, 0x62, 0x2f, 0xfe, 0x10, 0x98, 0x80, 0x63, + 0x62, 0x2f, 0xe1, 0x0, 0xff, 0x84, 0x3, 0xff, + 0x98, 0x2b, 0x15, 0x5f, 0xfc, 0x28, 0x41, 0x0, + 0xff, 0xe8, 0x98, 0x6, 0x10, 0xf, 0xfe, 0x31, + 0x22, 0xaf, 0xff, 0x8, 0xc8, 0x3, 0xff, 0xa0, + 0xe2, 0x20, 0x8, 0xc0, 0x40, 0x3f, 0xc7, 0x3d, + 0xff, 0xff, 0xce, 0xe9, 0x30, 0xf, 0xfe, 0x48, + 0x98, 0x6, 0x1e, 0x30, 0x48, 0xbb, 0xff, 0xed, + 0x66, 0x2e, 0x58, 0xc4, 0x3, 0xff, 0x84, 0x26, + 0xc0, 0x19, 0xcc, 0x40, 0x4d, 0x13, 0xff, 0xb4, + 0x66, 0x46, 0xd5, 0x0, 0xff, 0xe1, 0xaf, 0x90, + 0x4, 0x24, 0x20, 0x5, 0xbf, 0xfe, 0xeb, 0x62, + 0x0, 0x85, 0x23, 0x3b, 0xff, 0xff, 0x85, 0xb4, + 0xa4, 0x1, 0x85, 0x2a, 0x8c, 0x20, 0x1f, 0xfc, + 0x12, 0x35, 0x10, 0x9, 0x7d, 0x0, 0x3f, 0x85, + 0x22, 0xa, 0x40, 0x29, 0x19, 0xb2, 0xa4, 0x1, + 0xf0, 0xa3, 0xde, 0x52, 0x90, 0x0, 0x9a, 0xa8, + 0xa2, 0x1, 0xff, 0xc3, 0x7d, 0x30, 0x8, 0x8d, + 0x0, 0x3f, 0xf8, 0x2, 0xb5, 0x94, 0xc6, 0x0, + 0x36, 0xad, 0xec, 0x97, 0x8a, 0xde, 0xb8, 0x41, + 0x1, 0x48, 0xcc, 0x4a, 0x8, 0x7, 0xff, 0xc, + 0x5b, 0x94, 0x3, 0x3e, 0x10, 0x7, 0xff, 0xc, + 0x56, 0x3e, 0x54, 0x40, 0x21, 0x36, 0x87, 0x52, + 0x0, 0xc4, 0xf5, 0x2e, 0x62, 0x1, 0xff, 0xc5, + 0x26, 0xb4, 0x0, 0x85, 0xa5, 0x0, 0x2, 0x22, + 0x34, 0x55, 0x33, 0xc4, 0xd5, 0xe7, 0x7f, 0x64, + 0xa8, 0x80, 0x70, 0x8c, 0x1, 0xe2, 0x7b, 0xdf, + 0xed, 0xcb, 0x98, 0x83, 0xb2, 0xa2, 0xc, 0x84, + 0x3, 0x37, 0x88, 0x80, 0x7, 0x36, 0x60, 0x12, + 0xc6, 0x62, 0xea, 0x93, 0xe, 0xca, 0x86, 0x20, + 0x1, 0x35, 0x68, 0xab, 0xde, 0xee, 0xdb, 0x97, + 0x64, 0x21, 0x0, 0x9, 0x1a, 0x33, 0xba, 0x26, + 0xae, 0xa1, 0xc0, 0x39, 0x23, 0x3e, 0xea, 0x18, + 0x80, 0x32, 0x5c, 0x32, 0x2b, 0x3c, 0x4d, 0x5e, + 0x6e, 0xbb, 0xfb, 0x2a, 0x5d, 0x50, 0x84, 0x2, + 0x12, 0x46, 0x89, 0xbd, 0xef, 0xdc, 0xc5, 0x52, + 0x61, 0xd9, 0x51, 0xae, 0x94, 0x40, 0x0, + + /* U+5F00 "开" */ + 0x0, 0x96, 0x77, 0x7f, 0xfd, 0xb6, 0xc4, 0x1, + 0xf8, 0x8b, 0xff, 0xdc, 0xc2, 0x1, 0xf9, 0x27, + 0x33, 0xff, 0x81, 0x8, 0x1, 0xc9, 0x19, 0x9f, + 0xfc, 0x49, 0x51, 0x0, 0xc4, 0xd5, 0x99, 0xfe, + 0xe6, 0x20, 0xf, 0x84, 0x8c, 0xff, 0xf8, 0x22, + 0x1, 0xc2, 0x67, 0xff, 0xc5, 0x52, 0x30, 0xc, + 0x3c, 0x86, 0x7f, 0xf0, 0x80, 0x7f, 0xff, 0xc0, + 0x3f, 0xff, 0xe0, 0x1f, 0xff, 0xf0, 0xf, 0xff, + 0x68, 0x91, 0x7f, 0xf1, 0x4, 0x3, 0x84, 0x8b, + 0xff, 0x8a, 0xc2, 0x60, 0x18, 0x7c, 0x8b, 0xff, + 0x84, 0x20, 0x11, 0x4f, 0xee, 0xff, 0xf0, 0xa5, + 0x0, 0x39, 0x27, 0x77, 0xff, 0x89, 0x4c, 0x20, + 0x18, 0x9f, 0x37, 0x7f, 0xf8, 0x19, 0x6, 0x1, + 0xff, 0xfb, 0x28, 0xdf, 0xff, 0xfe, 0xe, 0x30, + 0x80, 0x63, 0x9e, 0xff, 0xff, 0xe2, 0x63, 0x90, + 0x6, 0x38, 0xef, 0xff, 0xfe, 0x7, 0x49, 0x80, + 0x7f, 0xf1, 0x49, 0x14, 0x40, 0x21, 0x55, 0x8, + 0x7, 0xff, 0xb4, 0x53, 0xc, 0x3, 0x2f, 0x90, + 0x7, 0xff, 0xb4, 0x9a, 0xd0, 0x3, 0x26, 0xb8, + 0x80, 0x7f, 0xfa, 0xc5, 0x62, 0x48, 0x3, 0x27, + 0x38, 0x80, 0x7f, 0xfa, 0x85, 0x6a, 0xd4, 0x40, + 0x21, 0x6f, 0x51, 0x0, 0xff, 0xf4, 0x9, 0xc6, + 0xd2, 0x8, 0x4, 0x4d, 0xb2, 0x80, 0x1f, 0xfe, + 0x72, 0x6a, 0xcc, 0x39, 0x80, 0x62, 0x7e, 0x93, + 0x0, 0xff, 0xf3, 0x9c, 0x7c, 0xa9, 0x0, 0x62, + 0x6b, 0xc8, 0x30, 0xf, 0xff, 0x49, 0xc6, 0x5b, + 0x11, 0x16, 0x73, 0x65, 0x4, 0x3, 0xff, 0xda, + 0x29, 0x3b, 0xaa, 0x63, 0x0, 0xff, 0xe9, 0x9c, + 0x6f, 0xfe, 0xc7, 0x10, 0xf, 0xfe, 0x28, + + /* U+5F0F "式" */ + 0x0, 0xff, 0xed, 0x8, 0xfc, 0x1, 0xff, 0xf0, + 0x16, 0xae, 0xed, 0xf0, 0x80, 0x11, 0x35, 0x6f, + 0x5c, 0x20, 0x80, 0x7f, 0xfb, 0xc9, 0xfd, 0xc8, + 0x51, 0xef, 0xed, 0xcc, 0x3, 0xff, 0xd8, 0x4b, + 0x3b, 0x92, 0x82, 0x2, 0x91, 0x96, 0xc2, 0x1, + 0xff, 0xed, 0x36, 0xbc, 0x94, 0x34, 0x99, 0x30, + 0x80, 0x79, 0x6b, 0xff, 0xff, 0xab, 0xd2, 0x80, + 0x18, 0x5a, 0xff, 0xff, 0xb6, 0x50, 0xd2, 0x77, + 0xfd, 0xb0, 0x60, 0x11, 0x88, 0x7, 0xff, 0xdd, + 0xe7, 0x33, 0xff, 0xaf, 0x2a, 0x20, 0x18, 0xde, + 0xf3, 0x3f, 0xf8, 0x9d, 0x26, 0x1, 0x9, 0x19, + 0xff, 0xf5, 0xd4, 0x8c, 0x3, 0xbd, 0x8c, 0xff, + 0xf8, 0xa2, 0x1, 0xff, 0xdd, 0x1f, 0x10, 0xc, + 0x3e, 0x20, 0x1f, 0xfc, 0xd2, 0x34, 0x4f, 0xfe, + 0x81, 0x90, 0x0, 0xc5, 0xc0, 0x31, 0x8b, 0x80, + 0x7f, 0xf3, 0xe, 0xba, 0xef, 0xff, 0xa1, 0xb4, + 0x60, 0x26, 0x20, 0x18, 0x4c, 0x40, 0x3f, 0xf9, + 0x83, 0xe2, 0x3f, 0xf0, 0x7, 0xc2, 0x3f, 0xf1, + 0x0, 0x61, 0x30, 0xe, 0x13, 0x0, 0xff, 0xe6, + 0x13, 0xe7, 0x77, 0xf6, 0xb9, 0x0, 0x65, 0xbe, + 0xef, 0xf6, 0x41, 0x80, 0x1c, 0x48, 0x3, 0x37, + 0x10, 0x7, 0xff, 0xbc, 0xf5, 0x80, 0x31, 0x1b, + 0x80, 0x7f, 0xfc, 0x18, 0xc8, 0x3, 0x2e, 0x18, + 0x7, 0xff, 0xbc, 0xf1, 0xc0, 0x30, 0xa2, 0x8, + 0x3, 0xf8, 0x91, 0x2, 0x1, 0xff, 0xdd, 0x11, + 0x0, 0x49, 0xe8, 0x1, 0x8a, 0x94, 0x80, 0x3f, + 0x3f, 0x5f, 0x6d, 0xb1, 0x80, 0x7f, 0xf2, 0xdb, + 0x55, 0x9e, 0x26, 0xaf, 0x37, 0xbf, 0xe8, 0x30, + 0x9, 0x35, 0x0, 0x31, 0x55, 0xc, 0x3, 0xe3, + 0x10, 0x1, 0x27, 0xb8, 0x7, 0x9, 0x1a, 0x2b, + 0x3c, 0x42, 0x6b, 0xd8, 0x80, 0x31, 0xbd, 0x4c, + 0x3b, 0x2a, 0x19, 0x8, 0x6, 0x70, 0x8, 0x5b, + 0xd4, 0x40, 0x22, 0x7f, 0x72, 0x0, 0xc7, 0xcc, + 0x1, 0x17, 0x30, 0x0, 0xa3, 0x7b, 0x72, 0xea, + 0x61, 0xdc, 0xca, 0x62, 0x1, 0xc2, 0x46, 0x8a, + 0xd1, 0x35, 0x79, 0xdf, 0xee, 0x94, 0x0, 0xe4, + 0x89, 0x30, 0xc, 0x71, 0x97, 0xe, 0xe8, 0x62, + 0x0, 0xa, 0x20, 0x80, 0x5, 0x68, 0x20, 0x18, + 0x49, 0x15, 0x9e, 0x26, 0xf3, 0x7b, 0xfb, 0x72, + 0xea, 0x5d, 0x95, 0xc, 0x40, 0x3f, 0xe2, 0x7e, + 0x94, 0x10, 0x8, 0x51, 0xe2, 0x8, 0x20, 0x2, + 0x6a, 0x30, 0xc, 0x71, 0x9b, 0xdf, 0xee, 0xdb, + 0xa9, 0x87, 0x64, 0x32, 0x10, 0xf, 0xfe, 0x71, + 0x35, 0xfd, 0xba, 0x99, 0x8, 0x9, 0x1a, 0xcf, + 0xc1, 0x80, 0x40, + + /* U+5F53 "当" */ + 0x0, 0xff, 0xe7, 0x12, 0x27, 0x19, 0x0, 0x7f, + 0xf5, 0x48, 0x82, 0x1, 0xff, 0xc3, 0x3a, 0xa5, + 0xde, 0xea, 0x30, 0xf, 0xfe, 0x11, 0x22, 0xa1, + 0x88, 0x7, 0xc6, 0xf7, 0xbf, 0xba, 0xa6, 0x10, + 0xf, 0xfe, 0xc2, 0x5d, 0x52, 0xf3, 0xb9, 0x4a, + 0x20, 0x11, 0xa1, 0x80, 0x64, 0x9a, 0x61, 0x0, + 0xff, 0xea, 0xa, 0xfb, 0x8, 0x4, 0x2f, 0xca, + 0x20, 0x18, 0xe3, 0x98, 0x80, 0x24, 0x9a, 0x51, + 0x0, 0xff, 0xe8, 0x93, 0x4a, 0x0, 0x63, 0x88, + 0x20, 0x7, 0xe3, 0x98, 0x50, 0xc, 0x91, 0x24, + 0x1, 0xff, 0xce, 0x15, 0x89, 0x30, 0x8, 0x9f, + 0xd8, 0x40, 0x3f, 0xe5, 0x97, 0x20, 0x8, 0x9a, + 0x14, 0x3, 0xff, 0x98, 0x73, 0xa, 0x20, 0x1, + 0x69, 0x83, 0x0, 0xff, 0xe1, 0x1d, 0x51, 0x9, + 0x1a, 0x39, 0xc0, 0x3f, 0xf9, 0x64, 0xc2, 0x30, + 0xa, 0xdc, 0x20, 0x7, 0xff, 0x14, 0x9e, 0xf6, + 0xe5, 0x90, 0x80, 0x3f, 0xf9, 0x64, 0xb3, 0x9d, + 0xfd, 0x4a, 0x20, 0x1f, 0xfc, 0x6, 0xbf, 0xff, + 0xfe, 0x46, 0x38, 0x80, 0x62, 0x7c, 0xff, 0xff, + 0xe4, 0x74, 0x98, 0x7, 0xff, 0xd5, 0xe2, 0xef, + 0xff, 0xbf, 0x4c, 0x40, 0x1f, 0xfc, 0x1, 0x34, + 0x4f, 0xff, 0x7, 0x8, 0x7, 0xff, 0xf8, 0xe3, + 0x37, 0x7f, 0xfb, 0x9f, 0x26, 0x1, 0xff, 0xc3, + 0x12, 0x2f, 0xfe, 0xe8, 0x88, 0x3, 0xff, 0x86, + 0x57, 0xb7, 0x7f, 0xfd, 0xca, 0x62, 0x0, 0xff, + 0xe1, 0x9, 0x1a, 0x27, 0xff, 0x77, 0x84, 0x3, + 0xff, 0xf6, 0x48, 0x9f, 0xfe, 0x2e, 0x10, 0xf, + 0xf1, 0xd5, 0x2e, 0xff, 0xfc, 0x14, 0xc4, 0x1, + 0xff, 0xc0, 0x30, 0xf, 0xff, 0x69, 0xc6, 0xff, + 0xff, 0xf8, 0x3a, 0xc, 0x3, 0xf8, + + /* U+5F84 "径" */ + 0x0, 0xff, 0xff, 0x80, 0x7f, 0xf0, 0x9, 0xf3, + 0xb9, 0x95, 0xa, 0x40, 0x1f, 0xfe, 0xf1, 0x59, + 0xf8, 0x31, 0x11, 0xb8, 0x88, 0x80, 0x9f, 0x3b, + 0xbf, 0xfa, 0x7f, 0xd9, 0x4c, 0x60, 0x1f, 0xfc, + 0x31, 0x59, 0xca, 0x62, 0x0, 0xa, 0x4f, 0xca, + 0x0, 0x7, 0xc4, 0x7f, 0xfa, 0x80, 0x26, 0x20, + 0x40, 0x1f, 0xf0, 0x9b, 0xdf, 0xd3, 0x10, 0x0, + 0x52, 0x72, 0xd8, 0x80, 0x31, 0xc6, 0xff, 0xb6, + 0x54, 0x84, 0x9, 0xf3, 0xff, 0xff, 0x85, 0xb0, + 0x60, 0x18, 0x9e, 0x58, 0x40, 0x3e, 0x14, 0x8b, + 0xfc, 0x84, 0x10, 0x1, 0x35, 0x65, 0xb1, 0x9, + 0x10, 0x40, 0x3f, 0x12, 0x68, 0x88, 0x9, 0xfa, + 0x50, 0x3, 0xfc, 0x4f, 0xd0, 0x60, 0x1, 0x59, + 0x82, 0x0, 0xff, 0x89, 0x44, 0x0, 0x4b, 0x19, + 0xb2, 0xa4, 0x4, 0xfb, 0xb7, 0x73, 0x20, 0xc0, + 0x38, 0x9f, 0xa0, 0xc0, 0x4, 0xd7, 0x90, 0x62, + 0x1, 0x13, 0x5e, 0x41, 0x80, 0x9, 0xaa, 0xd0, + 0x3, 0xfe, 0x14, 0xba, 0x9a, 0xdd, 0x53, 0x98, + 0x4, 0x71, 0xf0, 0x60, 0x1, 0x49, 0x91, 0x80, + 0x7c, 0x4f, 0xb6, 0xc4, 0x0, 0x37, 0xcc, 0x54, + 0xde, 0x4a, 0x8, 0xa, 0xd6, 0x4a, 0x8, 0x7, + 0xff, 0x8, 0x51, 0x94, 0x80, 0x31, 0x35, 0xeb, + 0x90, 0x0, 0x9f, 0x69, 0x44, 0x3, 0xfc, 0x29, + 0x39, 0x48, 0x20, 0x2, 0x56, 0x41, 0x0, 0x1c, + 0x65, 0x28, 0x80, 0x7f, 0xf2, 0xc9, 0x6b, 0x25, + 0x4, 0x0, 0x4f, 0xf0, 0x60, 0x1f, 0xfc, 0x2, + 0x47, 0x9d, 0xb4, 0x10, 0xf, 0xe3, 0x8f, 0xb8, + 0x63, 0x10, 0xf, 0xfe, 0x31, 0xbd, 0xe5, 0x28, + 0x80, 0x73, 0xe9, 0x0, 0x70, 0x9a, 0xb4, 0x4d, + 0xef, 0x6d, 0xc3, 0x18, 0x81, 0x2b, 0xd6, 0x5c, + 0xb1, 0x88, 0x0, 0x91, 0xe7, 0x3b, 0x9b, 0x73, + 0xc, 0xa6, 0x40, 0x1c, 0x4d, 0x5b, 0x90, 0x82, + 0x1, 0xff, 0xc1, 0x38, 0xde, 0xca, 0x97, 0x64, + 0x21, 0x11, 0x23, 0xd6, 0x76, 0xd4, 0x29, 0xa3, + 0x4e, 0x76, 0xd3, 0xa1, 0x0, 0x42, 0x48, 0xcf, + 0x35, 0xb2, 0xc4, 0x2, 0xb1, 0x5, 0x20, 0x8, + 0x9a, 0x18, 0x80, 0x3f, 0x8e, 0x61, 0x8d, 0x15, + 0xe6, 0xf7, 0xb9, 0xb7, 0xa, 0x62, 0x4f, 0x9f, + 0xfa, 0xd4, 0x9, 0x62, 0xf7, 0xfb, 0x2a, 0x19, + 0x8, 0x8b, 0x74, 0xc4, 0x2, 0xb7, 0x64, 0x13, + 0x7c, 0xc4, 0xaf, 0x0, 0x7f, 0xc2, 0xb3, 0x97, + 0x50, 0xc8, 0x42, 0x1, 0xff, 0xcb, 0x13, 0x57, + 0x9b, 0xdd, 0x52, 0x88, 0x7, 0xa, 0xdf, 0x64, + 0x18, 0x80, 0x7f, 0xff, 0xc0, 0x3f, 0xf8, 0x49, + 0x3d, 0xff, 0xff, 0xc0, 0xd8, 0x30, 0xc, 0x95, + 0xff, 0xff, 0xc1, 0xa5, 0x0, 0xff, 0xff, 0x80, + 0x7f, 0xf4, 0x92, 0x7b, 0xff, 0xff, 0x81, 0xb0, + 0x60, 0x19, 0x2b, 0xff, 0xff, 0x83, 0x4a, 0x1, + 0xff, 0xff, 0x0, 0xff, 0xff, 0x80, 0x7f, 0xf2, + 0x85, 0x6f, 0xbb, 0xff, 0x8b, 0x90, 0x60, 0x19, + 0x2b, 0xbb, 0xff, 0x89, 0x90, 0x40, 0x1f, 0xfc, + 0xd3, 0x1, 0x1f, 0xfe, 0x30, 0x7, 0xe1, 0x1f, + 0xfe, 0x28, 0x8, 0x7, 0xff, 0x30, 0x5a, 0xff, + 0xff, 0xfb, 0xdb, 0x6, 0x0, + + /* U+6025 "急" */ + 0x0, 0xff, 0xe3, 0x8a, 0xd6, 0xf6, 0xe5, 0xc2, + 0x8, 0x7, 0xff, 0xbc, 0x52, 0xec, 0xa4, 0x24, + 0x6e, 0x0, 0x32, 0x2f, 0xfe, 0x20, 0x80, 0x7f, + 0xf7, 0x9, 0xaa, 0x8a, 0x20, 0x1c, 0x6f, 0x7b, + 0xbf, 0xfc, 0x5f, 0xc9, 0x52, 0x0, 0xff, 0xea, + 0x8a, 0xcf, 0xca, 0x8, 0x0, 0x4d, 0x57, 0xff, + 0x88, 0x84, 0x1, 0xc2, 0x33, 0x10, 0x7, 0xff, + 0x48, 0x9a, 0xbe, 0x98, 0x80, 0x4, 0xb5, 0xf9, + 0x55, 0xff, 0xc2, 0x9d, 0x72, 0x0, 0xc9, 0x3f, + 0x6, 0x1, 0xff, 0xce, 0x13, 0x69, 0xdd, 0x4a, + 0x88, 0x6, 0x10, 0x69, 0xdc, 0xcf, 0xfe, 0x16, + 0xea, 0xc, 0x3, 0xb, 0x57, 0x66, 0x7f, 0xad, + 0xcc, 0x3, 0xff, 0x82, 0x2d, 0xb9, 0x2c, 0x40, + 0x1f, 0x84, 0x8c, 0xff, 0xf8, 0xa4, 0x20, 0x1e, + 0x12, 0x33, 0xff, 0xe0, 0x2f, 0x0, 0x7f, 0xf0, + 0x85, 0xb6, 0x94, 0x44, 0xb3, 0x9d, 0xff, 0xff, + 0xdb, 0xa5, 0x0, 0xff, 0xe5, 0xa, 0xd7, 0x72, + 0x98, 0xc4, 0x3, 0xff, 0xf6, 0x2f, 0x9f, 0xff, + 0xfd, 0x9a, 0x50, 0xf, 0xfe, 0x99, 0xa2, 0xaf, + 0xff, 0x64, 0xc8, 0x3, 0xff, 0xa4, 0x29, 0x15, + 0x5f, 0xfd, 0x98, 0x40, 0xf, 0xfe, 0x81, 0x35, + 0x66, 0x7f, 0xf6, 0xe5, 0xc0, 0x3f, 0xfa, 0x22, + 0xe6, 0x7f, 0xfd, 0xb2, 0x10, 0xf, 0xfe, 0x81, + 0x3e, 0xff, 0xff, 0xf0, 0x3a, 0x94, 0x40, 0x3c, + 0x4b, 0x39, 0xdf, 0xff, 0xfc, 0x6e, 0x93, 0x0, + 0xff, 0xe5, 0x89, 0x8, 0x7, 0xf8, 0x52, 0x61, + 0x8c, 0x40, 0x22, 0x59, 0xcc, 0x52, 0x90, 0x7, + 0xf0, 0x9b, 0x43, 0xa0, 0x80, 0x7f, 0xf2, 0xc5, + 0xb7, 0x5d, 0xcc, 0x84, 0x3, 0x8d, 0xee, 0xb2, + 0xd6, 0x73, 0xf6, 0x58, 0x80, 0x22, 0x5b, 0xb2, + 0x0, 0x78, 0xa3, 0x31, 0x2f, 0x17, 0x90, 0x82, + 0x1, 0xff, 0xc7, 0x48, 0x81, 0x80, 0x5, 0xf9, + 0x40, 0x2, 0x62, 0x31, 0x8b, 0x80, 0x4, 0x9a, + 0x77, 0x52, 0xcb, 0x19, 0x28, 0x4, 0x50, 0x0, + 0xa3, 0xe5, 0x4, 0x0, 0x4f, 0x7b, 0x6, 0x20, + 0x1f, 0xfc, 0x11, 0x49, 0x93, 0x8, 0x0, 0x5b, + 0xd8, 0x40, 0x3f, 0xf8, 0xa4, 0xd3, 0x4e, 0x40, + 0x1, 0x5e, 0xde, 0xdb, 0x71, 0x6b, 0xd8, 0x30, + 0x8, 0xdf, 0x69, 0x88, 0x3, 0xf0, 0xac, 0xe5, + 0xb1, 0x0, 0x49, 0x10, 0x40, 0xf, 0xe1, 0x31, + 0x0, 0xff, 0xe1, 0xaf, 0x10, 0x9, 0x30, 0x8, + 0x0, 0xdf, 0x69, 0x44, 0x0, 0x29, 0x3c, 0xe4, + 0x1, 0xc2, 0xba, 0xa6, 0x1, 0x13, 0x5d, 0x30, + 0x80, 0x62, 0xf2, 0x0, 0xcb, 0x5f, 0xee, 0xef, + 0xfb, 0xfd, 0x6c, 0x20, 0x1, 0x54, 0x20, 0xc, + 0x2b, 0x54, 0x62, 0x0, 0x8, 0x7b, 0x8, 0x6, + 0x14, 0x8c, 0xc5, 0xd6, 0x62, 0x50, 0x40, 0x3c, + 0x2d, 0xf2, 0xa6, 0x42, 0x20, 0x0, 0x8f, 0xfc, + 0x1, 0x9, 0x24, 0x54, 0x98, 0x7, 0xe4, 0x9f, + 0xcc, 0x7e, 0x42, 0x8, 0x0, + + /* U+606F "息" */ + 0x0, 0xff, 0xff, 0x80, 0x7f, 0xf4, 0xa, 0x37, + 0xfd, 0xb9, 0x6e, 0x82, 0x1, 0xff, 0xf0, 0x3a, + 0x52, 0x0, 0x11, 0x80, 0xb0, 0x80, 0x7f, 0xf7, + 0xce, 0x37, 0xff, 0xff, 0x85, 0x8e, 0x40, 0x1c, + 0x93, 0xbf, 0xff, 0xfc, 0x5d, 0x82, 0x0, 0xff, + 0xe9, 0x89, 0xa2, 0x7f, 0xf4, 0x88, 0x40, 0x3f, + 0xfb, 0x22, 0xff, 0x77, 0xff, 0xd3, 0x50, 0xf, + 0xfe, 0xc8, 0xb6, 0x7f, 0xff, 0xf4, 0xa5, 0x0, + 0x3f, 0xfb, 0x42, 0x68, 0x9f, 0xfd, 0x22, 0x10, + 0xf, 0xfe, 0xc8, 0xbf, 0xdd, 0xff, 0xf4, 0xd4, + 0x3, 0xff, 0xb2, 0x29, 0x33, 0xff, 0xd3, 0xd5, + 0x0, 0xff, 0xed, 0x12, 0xb3, 0x7f, 0xf4, 0x90, + 0x40, 0x3f, 0xfb, 0x22, 0xd7, 0xff, 0xff, 0xd1, + 0xe9, 0x40, 0xf, 0xff, 0xf8, 0x7, 0xff, 0x58, + 0x5a, 0xff, 0xff, 0xfa, 0x3d, 0x28, 0x1, 0xff, + 0xd3, 0x1d, 0x45, 0x5f, 0xfe, 0x22, 0x19, 0x91, + 0x57, 0xff, 0x94, 0x9a, 0x1, 0xff, 0xcd, 0x25, + 0x9a, 0xaf, 0xfe, 0xc, 0x60, 0x31, 0x99, 0x43, + 0x26, 0xab, 0xff, 0x8f, 0x2a, 0x40, 0x1f, 0xfc, + 0x93, 0x79, 0x75, 0x32, 0x0, 0x84, 0xd5, 0xdf, + 0x29, 0x99, 0x75, 0x84, 0x5, 0x67, 0x36, 0x50, + 0x40, 0x3f, 0xc4, 0xb3, 0x9b, 0x6e, 0x40, 0x1f, + 0xfc, 0x71, 0x68, 0x83, 0x45, 0x6d, 0xa0, 0x0, + 0xd2, 0x62, 0x34, 0xa0, 0x1b, 0xde, 0x53, 0x10, + 0x0, 0x9a, 0xf6, 0xc, 0x3, 0xe2, 0x59, 0x63, + 0x24, 0x8c, 0xb7, 0x20, 0xf, 0xfe, 0x19, 0x35, + 0x20, 0x4, 0x4d, 0x48, 0x1, 0xff, 0xc3, 0x25, + 0x9f, 0x94, 0x10, 0x17, 0xf0, 0x10, 0xf, 0x13, + 0xe6, 0x1c, 0xc0, 0x2, 0x91, 0x96, 0xc4, 0x1, + 0xfe, 0x27, 0xe8, 0x30, 0x8, 0xea, 0x86, 0x1, + 0xff, 0xc7, 0x26, 0xac, 0xdf, 0xb7, 0x31, 0x4, + 0x9e, 0xca, 0x96, 0x33, 0x46, 0xdb, 0x10, 0x0, + 0x52, 0x7e, 0xc, 0x3, 0x85, 0x27, 0xe0, 0xc0, + 0x22, 0x7f, 0x72, 0x0, 0xc6, 0x1, 0xe2, 0xe5, + 0x10, 0xf, 0x84, 0x88, 0x20, 0x18, 0xf1, 0x4, + 0xd5, 0xb1, 0x80, 0x2, 0x93, 0xf0, 0x60, 0x11, + 0x3f, 0x41, 0x80, 0x70, 0xb0, 0x80, 0xe, 0x3e, + 0xc, 0x3, 0xc2, 0x6c, 0x1, 0x85, 0xaf, 0xbf, + 0xff, 0xf8, 0x78, 0xe4, 0x1, 0x26, 0x20, 0x7, + 0x13, 0xf4, 0x18, 0xa, 0x2e, 0x10, 0x4, 0x29, + 0x17, 0xf9, 0x8d, 0x72, 0x0, 0xfe, 0x4b, 0xb3, + 0xa9, 0x88, 0x80, 0x3f, 0xf8, 0xc2, 0x46, 0xd5, + 0x2c, 0x20, 0x1f, 0x13, 0xef, 0x72, 0xe1, 0x4, + 0x0, + + /* U+6210 "成" */ + 0x0, 0xff, 0xff, 0x80, 0x7f, 0xf5, 0x8e, 0x3b, + 0xff, 0x63, 0x8, 0xa, 0x4e, 0xf6, 0xd3, 0xa0, + 0x80, 0x7f, 0xfc, 0x45, 0x71, 0x4c, 0x49, 0x62, + 0xfb, 0x69, 0x8c, 0x3, 0xff, 0xda, 0x29, 0x19, + 0xdb, 0x4c, 0x60, 0x2, 0x59, 0xcd, 0x83, 0x0, + 0xff, 0xe1, 0x89, 0x19, 0xff, 0xf3, 0xd4, 0x80, + 0x38, 0x79, 0x4c, 0xf8, 0x5a, 0xa2, 0x9c, 0xc4, + 0xd, 0x74, 0xc, 0xc4, 0x20, 0x1f, 0xe1, 0x6e, + 0xcc, 0xff, 0xe7, 0xca, 0x88, 0x6, 0x27, 0xbc, + 0xcf, 0xd7, 0x4e, 0x62, 0x6, 0xf5, 0x99, 0x73, + 0x8, 0x7, 0xff, 0xfc, 0x3, 0xff, 0x84, 0xd7, + 0xff, 0xff, 0xc9, 0xb6, 0x0, 0xe5, 0xaf, 0xff, + 0xfe, 0x46, 0x38, 0x80, 0x7f, 0xf7, 0x18, 0x48, + 0x3, 0x31, 0x8, 0x7, 0xe1, 0x34, 0x32, 0x10, + 0xf, 0xfe, 0x69, 0x88, 0xff, 0xf1, 0x40, 0x38, + 0xb9, 0x80, 0x31, 0x79, 0x0, 0x7c, 0x53, 0xd7, + 0x9b, 0xdc, 0x83, 0x0, 0xff, 0xe5, 0x2d, 0x77, + 0x7f, 0xf0, 0xf2, 0xc, 0x3, 0x11, 0x4, 0x2, + 0x12, 0x60, 0xf, 0x1d, 0x31, 0x0, 0x44, 0xd4, + 0x60, 0x1f, 0xfc, 0x23, 0x0, 0xff, 0xe9, 0xb7, + 0x10, 0x6, 0x7d, 0x20, 0xc, 0x92, 0xc2, 0x1, + 0x1d, 0xc9, 0x0, 0x7f, 0xf2, 0x85, 0xaf, 0xff, + 0xfb, 0x18, 0x40, 0x3f, 0xc4, 0x6c, 0x1, 0x88, + 0xdc, 0x0, 0x4f, 0xa, 0x20, 0x12, 0xcb, 0x8, + 0x7, 0xff, 0x18, 0x40, 0x38, 0x5c, 0x3, 0xf9, + 0xc0, 0x3f, 0xf8, 0x2b, 0x88, 0x1, 0x97, 0x15, + 0x53, 0x6, 0x1, 0x13, 0xca, 0x80, 0x7f, 0xf1, + 0xfc, 0x3, 0x8c, 0x3, 0xff, 0x80, 0x62, 0x1, + 0xc2, 0x1, 0xc2, 0x98, 0x40, 0x10, 0xbd, 0xd9, + 0x0, 0x22, 0x7e, 0x83, 0x0, 0xff, 0xe3, 0xb0, + 0x90, 0x6, 0x1e, 0x20, 0xf, 0xe1, 0x10, 0x7, + 0x78, 0x7, 0xc4, 0x68, 0x20, 0x10, 0x8c, 0x0, + 0x27, 0xe8, 0x30, 0xf, 0xfe, 0x48, 0x98, 0x7, + 0x31, 0x8, 0x7, 0xe2, 0xd6, 0x0, 0xc2, 0x23, + 0x0, 0xf9, 0x7c, 0x80, 0x3c, 0x4f, 0xd0, 0x60, + 0x1e, 0x48, 0xa6, 0x31, 0x0, 0xff, 0x1e, 0xb8, + 0x6, 0x22, 0x31, 0xc6, 0x6e, 0x66, 0xdd, 0x39, + 0x0, 0x66, 0x21, 0x0, 0xe3, 0x7d, 0x93, 0x0, + 0xf0, 0xf8, 0x80, 0x7e, 0x13, 0x59, 0xcf, 0x93, + 0x0, 0xf8, 0x54, 0xc8, 0x3, 0x3e, 0x11, 0xeb, + 0x11, 0x9e, 0x20, 0xc, 0x27, 0x12, 0x80, 0x11, + 0x35, 0xec, 0x18, 0x7, 0xe3, 0x9b, 0x30, 0xf, + 0x9, 0xb8, 0x4, 0x62, 0x20, 0xf, 0x93, 0x10, + 0x3, 0x27, 0xa0, 0x1, 0x6f, 0x73, 0x3d, 0xbd, + 0xd6, 0x39, 0x8a, 0x3d, 0xe4, 0xa0, 0x80, 0x5, + 0x26, 0xe5, 0x0, 0x21, 0x6f, 0x72, 0x0, 0xc5, + 0xc4, 0x1, 0x36, 0x90, 0x7, 0x13, 0xca, 0x80, + 0x63, 0xc4, 0x0, 0xc2, 0x46, 0x7e, 0x21, 0x19, + 0x22, 0xfe, 0xe1, 0x4, 0x0, 0x29, 0x39, 0x6c, + 0x8d, 0xe, 0x40, 0x11, 0xc6, 0x5c, 0x33, 0xcb, + 0x8, 0x0, 0xf1, 0xc0, 0x38, 0xee, 0x4c, 0x3, + 0x24, 0xb0, 0x80, 0x7f, 0xf0, 0x8e, 0x64, 0xe8, + 0x20, 0x11, 0x2c, 0xe5, 0xb1, 0x0, 0x63, 0x8e, + 0x73, 0x0, 0x85, 0x1e, 0x61, 0x44, 0x0, 0x74, + 0xc4, 0x1, 0xc7, 0x76, 0x63, 0x2, 0x78, 0x51, + 0x0, 0xff, 0xe1, 0x9c, 0x7c, 0xa1, 0x24, 0x66, + 0x29, 0x88, 0x3, 0xf8, 0xe3, 0x31, 0x2c, 0x64, + 0x20, 0x24, 0x6d, 0x5c, 0xc2, 0x1, 0xf1, 0x2c, + 0xe6, 0xfc, 0x98, 0x7, 0xff, 0x1c, 0x9a, 0xf6, + 0xdc, 0xc4, 0x3, 0xff, 0x86, 0x6d, 0x39, 0xbd, + 0xfd, 0xb9, 0x2a, 0x40, 0x1e, + + /* U+6237 "户" */ + 0x0, 0xff, 0xff, 0x80, 0x7f, 0xf1, 0x85, 0x62, + 0xf3, 0xb9, 0x8e, 0x40, 0x1f, 0xfe, 0x91, 0x19, + 0x4c, 0x44, 0x73, 0x46, 0x1, 0xff, 0xe9, 0x4a, + 0x71, 0x0, 0x85, 0xa9, 0x0, 0x3f, 0xfa, 0x62, + 0x48, 0x9f, 0xfc, 0x87, 0xe5, 0x10, 0x8, 0xcb, + 0x15, 0x13, 0xff, 0x8a, 0x62, 0x1, 0xff, 0x15, + 0x52, 0xef, 0xff, 0x91, 0x8, 0x20, 0x11, 0x23, + 0xd5, 0xdf, 0xff, 0x16, 0x50, 0x3, 0xff, 0x8e, + 0x24, 0x67, 0xff, 0xd5, 0x21, 0x0, 0xff, 0xe6, + 0x93, 0x7e, 0x67, 0xff, 0x57, 0x9c, 0x40, 0x3f, + 0xff, 0xe0, 0x1e, 0x10, 0xf, 0xff, 0xd3, 0x8, + 0xff, 0xf5, 0x5c, 0xc0, 0x3f, 0xf8, 0xce, 0x1, + 0xe2, 0x7b, 0xee, 0xff, 0xea, 0xda, 0x88, 0x7, + 0xff, 0x1c, 0x40, 0x3f, 0xfe, 0x2, 0x60, 0x1c, + 0x95, 0xff, 0xff, 0xd6, 0xb6, 0x10, 0xf, 0xfe, + 0x20, 0x93, 0x0, 0x61, 0x26, 0x0, 0xff, 0xeb, + 0x37, 0xba, 0xae, 0xd6, 0x0, 0xff, 0x17, 0x90, + 0x6, 0x2e, 0x20, 0xf, 0xfe, 0xb1, 0x34, 0xd5, + 0x67, 0x30, 0xf, 0xe1, 0x53, 0x10, 0x8, 0x54, + 0xc4, 0x3, 0xff, 0xd0, 0x9a, 0x80, 0x19, 0x31, + 0x0, 0x3f, 0xfd, 0x9, 0x88, 0x1, 0x8f, 0x10, + 0x3, 0xff, 0xce, 0x2b, 0xec, 0x1, 0x92, 0x9c, + 0x40, 0x3f, 0xfc, 0xc9, 0x16, 0x80, 0x19, 0x39, + 0xc4, 0x3, 0xff, 0xca, 0x71, 0x2c, 0x20, 0x11, + 0x3c, 0x28, 0x80, 0x7f, 0xf9, 0x8e, 0xa5, 0xd0, + 0x44, 0xd3, 0x6, 0x1, 0xff, 0xe9, 0x24, 0x8b, + 0xff, 0x4a, 0x0, 0x7f, 0xfa, 0x0, + + /* U+624B "手" */ + 0x0, 0xff, 0xef, 0x89, 0x19, 0x91, 0x59, 0xe2, + 0x6f, 0x37, 0x56, 0xc4, 0x1, 0xff, 0xca, 0x11, + 0x88, 0x86, 0x72, 0x21, 0x54, 0xcd, 0x3b, 0xa2, + 0x29, 0x95, 0x52, 0xed, 0x9b, 0xae, 0xff, 0xbb, + 0x73, 0x17, 0x53, 0xe, 0xc8, 0x64, 0x44, 0x9c, + 0x94, 0x10, 0xf, 0xfe, 0x20, 0xbe, 0x77, 0x5b, + 0xac, 0xca, 0xed, 0x54, 0x99, 0xa2, 0xe, 0xf3, + 0x31, 0x54, 0x88, 0x32, 0x20, 0x80, 0x70, 0x91, + 0x99, 0x15, 0x9e, 0x26, 0xb3, 0x7b, 0x92, 0x82, + 0x1, 0xff, 0xc4, 0x14, 0x41, 0x89, 0x14, 0x67, + 0x22, 0x4a, 0xb3, 0x34, 0xef, 0x43, 0xa1, 0x0, + 0x61, 0x5a, 0xef, 0xfb, 0xb7, 0x31, 0x75, 0x30, + 0xec, 0xa6, 0x42, 0x1, 0xff, 0xc9, 0x38, 0xce, + 0xdd, 0xb3, 0x2b, 0xba, 0xaa, 0x99, 0xa2, 0x27, + 0x9d, 0x10, 0xe, 0x36, 0x10, 0xf, 0xff, 0xf8, + 0x7, 0xff, 0x5c, 0x48, 0xcf, 0xff, 0x92, 0xbc, + 0x20, 0x18, 0x4d, 0x4c, 0xff, 0xf9, 0x44, 0x20, + 0x1f, 0xfc, 0x21, 0x6e, 0xcc, 0xff, 0xe4, 0xdb, + 0x90, 0x7, 0x2c, 0xe6, 0x7f, 0xf2, 0xbe, 0x4c, + 0x3, 0xff, 0x84, 0x2e, 0x23, 0xff, 0xc9, 0x0, + 0xff, 0x8, 0xff, 0xf2, 0x80, 0x3f, 0xf8, 0x82, + 0xd7, 0xdd, 0xff, 0xca, 0x93, 0x0, 0xc2, 0xd9, + 0xdd, 0xff, 0xca, 0xd8, 0x30, 0xf, 0xff, 0xf8, + 0x7, 0xff, 0xfc, 0x2, 0x5a, 0xff, 0xff, 0xe7, + 0x74, 0x98, 0x6, 0x16, 0xcf, 0xff, 0xfe, 0x77, + 0x49, 0x80, 0x7f, 0xff, 0xc0, 0x9, 0x19, 0x9f, + 0xfc, 0xeb, 0x72, 0x0, 0xe5, 0x9c, 0xcf, 0xfe, + 0x76, 0xd9, 0x80, 0x70, 0x91, 0x9f, 0xff, 0x39, + 0x78, 0x40, 0x30, 0x9a, 0x99, 0xff, 0xf3, 0xc8, + 0x3, 0xff, 0xfe, 0x1, 0xff, 0xff, 0x0, 0xff, + 0xff, 0x80, 0x7f, 0xc2, 0x46, 0x62, 0x2f, 0xe3, + 0x4c, 0x20, 0xe, 0x10, 0xf, 0xff, 0x2a, 0xde, + 0xe6, 0xef, 0xf6, 0x52, 0x88, 0x6, 0x4d, 0x30, + 0xf, 0xff, 0x22, 0x5b, 0x10, 0x7, 0xe1, 0x11, + 0x10, 0xd5, 0xeb, 0x69, 0x40, 0x3f, 0xfc, 0xc5, + 0x1b, 0xff, 0xfb, 0xb9, 0xba, 0xca, 0x85, 0x20, + 0xf, 0xfe, 0xb0, + + /* U+6253 "打" */ + 0x0, 0xff, 0xe0, 0xad, 0x77, 0x6c, 0x72, 0x0, + 0xff, 0xf9, 0x98, 0x8f, 0xbc, 0x40, 0x3f, 0xff, + 0xe0, 0x18, 0xa3, 0x7f, 0xff, 0xfb, 0x16, 0xc2, + 0x1, 0xff, 0xff, 0x1, 0x23, 0x3f, 0x93, 0x9c, + 0x3, 0x19, 0x29, 0x9f, 0xc1, 0x5d, 0x99, 0xff, + 0xc4, 0xb7, 0x30, 0xe, 0x48, 0xcc, 0xff, 0x4b, + 0x88, 0x4, 0x2f, 0x39, 0x9f, 0x5b, 0x98, 0x6, + 0x15, 0x9c, 0xcf, 0x6d, 0x89, 0x9f, 0xff, 0x15, + 0x79, 0xc0, 0x38, 0x4c, 0xff, 0xe2, 0x10, 0xe, + 0x31, 0x22, 0xf8, 0x44, 0x1, 0xf0, 0x91, 0x7c, + 0x20, 0x1f, 0xfe, 0x1, 0x5a, 0xdd, 0xfb, 0xa1, + 0x0, 0x31, 0x3e, 0xef, 0xd9, 0x6, 0x1, 0xff, + 0xff, 0x0, 0xff, 0xff, 0x80, 0x7f, 0xfa, 0x8c, + 0x5c, 0x91, 0x5a, 0x26, 0x9c, 0xc0, 0x3f, 0xfc, + 0xe4, 0x6b, 0xec, 0x1, 0x85, 0xaf, 0x6e, 0xa5, + 0xd9, 0x6d, 0x44, 0x3, 0xff, 0xbc, 0x2b, 0x17, + 0x9b, 0xdf, 0xb9, 0x4c, 0x40, 0x1f, 0xc2, 0x68, + 0xd1, 0x28, 0x20, 0x1f, 0xfd, 0xe1, 0x2, 0x43, + 0x21, 0x0, 0xff, 0xa, 0xdf, 0x7f, 0x65, 0xcb, + 0xa9, 0x0, 0x7f, 0xf8, 0x13, 0x9d, 0xa2, 0x6f, + 0x37, 0xa5, 0x0, 0x31, 0x93, 0x88, 0x7, 0xff, + 0xa0, 0x52, 0x25, 0xd9, 0xc, 0x84, 0x3, 0xff, + 0xfe, 0x1, 0xff, 0xff, 0x0, 0xff, 0xff, 0x80, + 0x7f, 0xfb, 0x4, 0x60, 0x0, 0x90, 0xb8, 0x7, + 0x84, 0x3, 0xff, 0x84, 0x48, 0x9f, 0x8c, 0xc8, + 0xf8, 0xc0, 0x18, 0x4d, 0xc0, 0x3f, 0xf8, 0xeb, + 0x5d, 0xcf, 0xf7, 0x6c, 0x18, 0x6, 0x6d, 0x20, + 0xf, 0xfe, 0x10, 0xed, 0x5d, 0xfb, 0x31, 0x72, + 0xa4, 0x1, 0x97, 0xc8, 0x3, 0xff, 0x8e, 0x9a, + 0x80, 0x1c, 0x24, 0x68, 0xf5, 0x45, 0x0, 0xff, + 0xe1, 0x9d, 0x30, 0x80, 0x7f, 0x9, 0x1a, 0xc5, + 0xd3, 0x8, 0x7, 0xff, 0x1c, 0x5a, 0xff, 0xfb, + 0xb7, 0x2e, 0x14, 0x40, 0x3f, 0xf8, 0xa7, 0x1f, + 0xdd, 0xf7, 0xfb, 0xb7, 0x29, 0xd0, 0x40, 0x3f, + 0xf8, 0x80, + + /* U+62A4 "护" */ + 0x0, 0xff, 0xe0, 0x24, 0xf7, 0x6c, 0x72, 0x0, + 0xff, 0xe4, 0x89, 0x23, 0xcd, 0x4a, 0x88, 0x7, + 0xff, 0x48, 0x4c, 0x47, 0xbc, 0x40, 0x3f, 0xf9, + 0x26, 0xb1, 0x6, 0x56, 0xad, 0x62, 0x0, 0xff, + 0xf7, 0x13, 0xf4, 0x18, 0x4, 0x73, 0x26, 0x10, + 0xf, 0xff, 0x71, 0x3f, 0xb0, 0x80, 0x5, 0xfd, + 0x44, 0x3, 0xff, 0x88, 0x26, 0x89, 0xf6, 0x88, + 0x6, 0x32, 0x54, 0x4e, 0x31, 0x0, 0xa, 0xd6, + 0x67, 0xff, 0x7, 0xd0, 0x0, 0x26, 0x2b, 0x1b, + 0x99, 0xfd, 0x4a, 0x20, 0x10, 0xbc, 0x5d, 0xfc, + 0xe8, 0x1, 0x85, 0x66, 0xef, 0xa1, 0xc4, 0x0, + 0x4c, 0x67, 0xff, 0xc2, 0x21, 0x1, 0x22, 0x19, + 0xff, 0xf0, 0x18, 0x80, 0x38, 0xc4, 0x8b, 0xe1, + 0x0, 0xf8, 0x48, 0xb8, 0x4c, 0x3, 0xf8, 0x56, + 0x77, 0x7f, 0xf8, 0xd8, 0xe6, 0x1, 0xfe, 0x15, + 0xad, 0xdf, 0xad, 0x40, 0x31, 0x3e, 0xef, 0xa9, + 0x44, 0x3, 0xf8, 0xd4, 0x8b, 0xff, 0x8f, 0xce, + 0x1, 0xff, 0xff, 0x0, 0xff, 0xff, 0x80, 0x7f, + 0xf0, 0x8c, 0xd6, 0xf1, 0x57, 0xb4, 0xc2, 0x6, + 0x1, 0xe1, 0x6c, 0xff, 0xff, 0xe3, 0x74, 0xa0, + 0x7, 0xff, 0x8, 0x49, 0x15, 0xa3, 0x9c, 0x3, + 0xa, 0x3c, 0x3a, 0xa1, 0x27, 0x10, 0x7, 0xff, + 0x79, 0x6b, 0xbf, 0xb6, 0xea, 0x5d, 0x8, 0x3, + 0x84, 0x91, 0x9e, 0x6f, 0x64, 0xc0, 0x21, 0x0, + 0xc2, 0xb5, 0xbb, 0xff, 0xc6, 0xc8, 0x30, 0xf, + 0xf3, 0x91, 0x80, 0x61, 0x24, 0x32, 0x0, 0xc4, + 0xdd, 0x73, 0xc, 0x86, 0x20, 0x1, 0xe3, 0x0, + 0xc6, 0x4e, 0x45, 0xff, 0xc6, 0x34, 0xb6, 0x6d, + 0x66, 0x1, 0x8a, 0xa6, 0xb3, 0x7f, 0xb6, 0xe5, + 0xc0, 0x3f, 0xf8, 0x8c, 0x62, 0x1, 0x87, 0x8c, + 0x3, 0xff, 0x8e, 0x6f, 0x33, 0x9d, 0x4, 0x3, + 0x12, 0x29, 0x90, 0x7, 0xff, 0x24, 0x88, 0xe0, + 0x18, 0x54, 0x84, 0x3, 0xff, 0xda, 0x2b, 0x64, + 0x1, 0x97, 0xd0, 0x3, 0xff, 0xda, 0x2d, 0x66, + 0x1, 0x8f, 0x10, 0x3, 0xff, 0xda, 0x73, 0x46, + 0x1, 0x92, 0x98, 0x80, 0x3f, 0xfb, 0x2, 0x45, + 0xc6, 0x4c, 0x1, 0xe1, 0x0, 0x92, 0x79, 0xc8, + 0x3, 0x2f, 0x30, 0x80, 0x7f, 0xf6, 0x5, 0xfb, + 0x77, 0x64, 0x18, 0x6, 0x7d, 0x20, 0x27, 0x86, + 0x20, 0x8, 0x52, 0x6d, 0x40, 0x3f, 0xfb, 0x42, + 0xf6, 0x60, 0x18, 0x48, 0xd5, 0xee, 0xca, 0x0, + 0x27, 0xdb, 0x73, 0x25, 0xba, 0x61, 0x0, 0xff, + 0xee, 0xb, 0xe7, 0xfe, 0xed, 0xca, 0x84, 0x10, + 0xe, 0x14, 0x8c, 0xda, 0x51, 0x0, 0xff, 0xec, + 0x80, + + /* U+62E9 "择" */ + 0x0, 0xff, 0x8e, 0x37, 0xba, 0xd8, 0x30, 0xf, + 0xff, 0xa9, 0x88, 0xc6, 0x2e, 0x1, 0xf0, 0xb5, + 0xff, 0xff, 0xf5, 0x36, 0xdc, 0xc0, 0x3f, 0xff, + 0x6, 0x24, 0x40, 0xf, 0xfe, 0xa8, 0xb5, 0xff, + 0xba, 0xd4, 0x40, 0x21, 0x5a, 0xef, 0xff, 0xf7, + 0x52, 0x88, 0x6, 0x48, 0xb5, 0x10, 0xf, 0xe2, + 0x34, 0x4f, 0x29, 0x0, 0x61, 0x23, 0x44, 0xf1, + 0x8, 0x6, 0x14, 0xba, 0x51, 0x1, 0x5a, 0xd8, + 0x30, 0xf, 0x1c, 0x6d, 0x28, 0x80, 0x12, 0x64, + 0xc2, 0x1, 0xfe, 0x2a, 0xeb, 0xbf, 0x4a, 0x88, + 0x6, 0x48, 0xbb, 0xf9, 0x40, 0x3c, 0x29, 0x74, + 0xc4, 0x0, 0x37, 0xdb, 0x64, 0x59, 0xdc, 0x73, + 0x0, 0x1c, 0x65, 0xb1, 0x0, 0x7f, 0xf0, 0x79, + 0xcc, 0xfc, 0x42, 0x1, 0xc2, 0x46, 0x7e, 0xe7, + 0x0, 0xfc, 0x29, 0x39, 0x4a, 0x20, 0x29, 0x37, + 0x4c, 0x40, 0x3, 0x7c, 0xc3, 0x98, 0x7, 0xff, + 0xc, 0x9a, 0xb3, 0x3d, 0xcc, 0x20, 0x10, 0xbc, + 0xe6, 0x79, 0xcc, 0x3, 0xf8, 0x91, 0xf0, 0x40, + 0x3f, 0xc2, 0x2, 0xa8, 0x20, 0x1f, 0xfd, 0xf1, + 0x34, 0x68, 0xac, 0xed, 0xb9, 0x64, 0x10, 0x25, + 0x78, 0x74, 0x20, 0x13, 0x69, 0xbe, 0xe6, 0x54, + 0x32, 0x99, 0x8, 0x7, 0xff, 0x48, 0xe3, 0x7f, + 0xb2, 0xe5, 0xd4, 0xc4, 0x9, 0x1e, 0xb3, 0xb6, + 0xa1, 0xe2, 0xf7, 0xae, 0x14, 0xc4, 0x4, 0xd5, + 0xe6, 0xb3, 0x7b, 0x94, 0xa2, 0x1, 0xff, 0xc6, + 0x12, 0xd7, 0x9a, 0xcd, 0xae, 0xb5, 0x22, 0x23, + 0x45, 0x66, 0xfe, 0xdc, 0x29, 0xac, 0xee, 0xeb, + 0x73, 0x47, 0xac, 0xee, 0x65, 0x4b, 0xa9, 0x88, + 0x92, 0x2d, 0x44, 0x3, 0xc2, 0x68, 0xaf, 0x10, + 0x51, 0x0, 0xc8, 0xd0, 0xca, 0x64, 0x9c, 0x95, + 0xba, 0xb9, 0x75, 0x32, 0x0, 0xf0, 0x99, 0x16, + 0x6f, 0x10, 0xe, 0x13, 0x56, 0x8a, 0xce, 0xe5, + 0xb0, 0x80, 0x72, 0xd7, 0xf6, 0x5d, 0x43, 0xa1, + 0x0, 0x70, 0x9a, 0xbc, 0xd6, 0x7c, 0x10, 0x2d, + 0x77, 0x7f, 0xf0, 0x29, 0x40, 0x31, 0x3e, 0x77, + 0x7f, 0xd0, 0x80, 0x1f, 0xc9, 0xa6, 0x1, 0x11, + 0xaa, 0x18, 0x6, 0x17, 0x8a, 0x86, 0x53, 0x20, + 0xe, 0x11, 0xff, 0xe0, 0x0, 0x7f, 0x8, 0xff, + 0xf0, 0x0, 0x3f, 0xc2, 0xdb, 0xae, 0xfd, 0xca, + 0x84, 0x10, 0xf, 0xfe, 0x1a, 0xd7, 0xff, 0xfd, + 0xd2, 0x80, 0x18, 0x5b, 0x3f, 0xff, 0xe9, 0x40, + 0xf, 0xf0, 0x88, 0x84, 0x3, 0xff, 0xae, 0x26, + 0x20, 0x18, 0xc4, 0x3, 0xff, 0xc4, 0x71, 0xbd, + 0xdf, 0xfc, 0x2f, 0xa5, 0x0, 0xc4, 0xf9, 0xdd, + 0xff, 0xc3, 0xd8, 0x30, 0xf, 0xfe, 0x89, 0x88, + 0xff, 0xf0, 0x80, 0x3f, 0xc2, 0x3f, 0xfc, 0x33, + 0x0, 0xff, 0xe8, 0x9c, 0x77, 0xff, 0xff, 0xb, + 0xa5, 0x0, 0x30, 0xb6, 0x7f, 0xff, 0xf0, 0xfa, + 0xc, 0x3, 0xff, 0x80, 0x2c, 0x40, 0x1e, 0x70, + 0xf, 0xfe, 0x50, 0x98, 0x80, 0x63, 0x10, 0xf, + 0xfe, 0x69, 0xcf, 0x7f, 0xdd, 0x4a, 0x20, 0x11, + 0x71, 0x0, 0x7f, 0xfb, 0xf, 0x5c, 0x40, 0x30, + 0x91, 0xac, 0xfb, 0x88, 0x7, 0xff, 0xb5, 0x27, + 0xbf, 0xf7, 0x6e, 0x53, 0x18, 0x7, 0xff, 0x35, + 0x6b, 0xff, 0x6c, 0x18, 0x7, 0xff, 0x20, + + /* U+6309 "按" */ + 0x0, 0xff, 0xe0, 0x8, 0x88, 0xb0, 0x80, 0x7f, + 0xf3, 0x44, 0x7e, 0x0, 0xff, 0xea, 0xb, 0x6e, + 0xf5, 0xa8, 0x7, 0xff, 0x2d, 0x2f, 0xbb, 0x7c, + 0x18, 0x7, 0xff, 0xfc, 0x3, 0xff, 0xfe, 0x1, + 0xff, 0xdd, 0x59, 0xcc, 0xff, 0xe1, 0x4a, 0x0, + 0x61, 0x7e, 0xcc, 0xff, 0xe1, 0xdb, 0x98, 0x6, + 0x12, 0x44, 0xfd, 0xc2, 0x1, 0x9b, 0x51, 0x3e, + 0xd2, 0x33, 0xff, 0xe1, 0x10, 0x80, 0x70, 0x91, + 0x9f, 0xff, 0xd, 0x78, 0x3, 0x8a, 0xea, 0xef, + 0xd4, 0xc4, 0x1, 0x8d, 0xee, 0xfd, 0xe6, 0x1, + 0xc6, 0xf7, 0x7f, 0xfc, 0xe8, 0x40, 0xf, 0xfe, + 0x7, 0x29, 0x9f, 0xc2, 0x1, 0xc2, 0x46, 0x7c, + 0x84, 0x20, 0x1c, 0xfc, 0x89, 0xc1, 0xb5, 0x75, + 0x31, 0x80, 0x89, 0xff, 0xc0, 0x32, 0x10, 0xf, + 0xf1, 0xbd, 0xe6, 0x7b, 0x64, 0xc0, 0x32, 0x46, + 0x67, 0x5c, 0x60, 0x8f, 0x8c, 0x3, 0x2f, 0x38, + 0x80, 0x93, 0xf2, 0x80, 0x7f, 0xf0, 0x1c, 0x4c, + 0x46, 0x31, 0x0, 0xff, 0xe8, 0x8b, 0x57, 0x76, + 0xa5, 0x0, 0x97, 0x94, 0x40, 0x25, 0xe6, 0x10, + 0xf, 0xfe, 0x1, 0xc6, 0xf7, 0x5b, 0x6, 0x1, + 0xff, 0xd0, 0x49, 0xde, 0xef, 0xea, 0x40, 0xe, + 0x5b, 0xee, 0xff, 0xe4, 0xdb, 0x8, 0x7, 0xff, + 0x1d, 0xfa, 0x6a, 0xf7, 0xb9, 0x4e, 0x42, 0x3f, + 0xc0, 0x1f, 0x84, 0x7f, 0xf9, 0x4e, 0x20, 0x1e, + 0x13, 0x46, 0x78, 0xaa, 0x8c, 0x3, 0x12, 0x32, + 0xa1, 0x8, 0x8a, 0x73, 0x77, 0xb2, 0xc, 0x3, + 0xa, 0xd6, 0xef, 0xfa, 0x54, 0x3, 0x8e, 0x33, + 0x77, 0x98, 0x40, 0x2, 0xf9, 0xd9, 0x73, 0xe, + 0xa8, 0x40, 0x1c, 0x26, 0xaf, 0x35, 0x9d, 0x8e, + 0x64, 0x58, 0xd7, 0xc, 0x2, 0x17, 0x95, 0x22, + 0xfe, 0xe, 0x70, 0xc, 0x48, 0xa6, 0x45, 0x84, + 0x40, 0x10, 0xa2, 0x8, 0x2, 0x13, 0x55, 0x18, + 0x80, 0x64, 0x9a, 0x86, 0x53, 0x10, 0xf, 0xb, + 0x52, 0x0, 0x42, 0xd4, 0x60, 0x1f, 0xc2, 0x88, + 0x20, 0x8, 0x52, 0xc8, 0x3, 0xfe, 0x39, 0xfd, + 0xef, 0xec, 0xab, 0xb1, 0x0, 0x7f, 0xf1, 0x49, + 0xa8, 0xc0, 0x31, 0x8b, 0x18, 0x80, 0x7c, 0x73, + 0x66, 0x1, 0xb, 0xe9, 0x80, 0x7f, 0xf0, 0x44, + 0x88, 0x20, 0x1f, 0xfc, 0xb3, 0xaa, 0x10, 0x7, + 0x13, 0x56, 0x77, 0x32, 0x9d, 0x51, 0xe1, 0xc8, + 0x2, 0x38, 0xb4, 0x0, 0xff, 0xee, 0xb, 0x83, + 0x98, 0x81, 0x2b, 0xb1, 0x88, 0x0, 0x4d, 0x62, + 0xae, 0x10, 0x2, 0x16, 0x86, 0x20, 0xf, 0xfe, + 0xe8, 0xa4, 0x56, 0x77, 0xed, 0x44, 0xe7, 0x6d, + 0x29, 0x0, 0x7f, 0xb, 0xc4, 0x14, 0x80, 0x3f, + 0xfc, 0x82, 0x6b, 0x17, 0x94, 0xa4, 0x1, 0x84, + 0x88, 0x1, 0x9, 0xbd, 0x6f, 0x5b, 0xa0, 0x80, + 0x7f, 0xf1, 0x4f, 0xc4, 0x3, 0xff, 0x82, 0x24, + 0x68, 0xaf, 0x15, 0x7b, 0xd9, 0x4e, 0x82, 0x1, + 0x12, 0xce, 0x7e, 0xeb, 0xad, 0xd0, 0x40, 0x21, + 0x48, 0xbf, 0xb7, 0x30, 0xf, 0xb, 0x5f, 0xff, + 0x6b, 0x90, 0x4, 0x44, 0x60, 0xc, 0x71, 0xbd, + 0xb9, 0x75, 0xe, 0xa8, 0x40, 0x1, 0x24, 0x79, + 0xce, 0xda, 0x63, 0x10, 0x0, 0xa4, 0x5f, 0x64, + 0xa8, 0x80, 0x42, 0x97, 0x63, 0x0, 0xe1, 0x7d, + 0x40, 0xe, 0x12, 0x35, 0x89, 0x91, 0x80, 0x63, + 0x8e, 0x62, 0x12, 0x34, 0x67, 0x9a, 0xce, 0xe6, + 0xdc, 0x31, 0x88, 0x7, 0xff, 0x0, 0xda, 0xbe, + 0xdd, 0x16, 0xb6, 0xc, 0x3, 0xc2, 0xd7, 0xff, + 0xdd, 0xb9, 0x4e, 0x82, 0x1, 0xf1, 0xce, 0xf6, + 0xe5, 0xcc, 0x32, 0x98, 0x80, 0x7f, 0xf2, 0x85, + 0x22, 0xe9, 0x44, 0x3, 0x0, + + /* U+6321 "挡" */ + 0x0, 0xff, 0x8e, 0x37, 0xbb, 0x42, 0x0, 0x7f, + 0xf2, 0xcd, 0xf3, 0x77, 0x41, 0x80, 0x7f, 0xf4, + 0x8c, 0x47, 0x80, 0x3f, 0xf8, 0x2, 0x66, 0x21, + 0x0, 0xfd, 0xe4, 0x58, 0xc5, 0xc0, 0x3e, 0x12, + 0x33, 0x8, 0x7, 0xff, 0x55, 0x27, 0xb9, 0x98, + 0xe6, 0x10, 0xf, 0xfe, 0x48, 0xb7, 0x66, 0x3b, + 0xf6, 0xc, 0x3, 0xff, 0xa2, 0x98, 0x80, 0x11, + 0xd3, 0x10, 0x7, 0xff, 0x1c, 0x5f, 0xc, 0x2, + 0x25, 0xb3, 0x0, 0xc2, 0x67, 0xf2, 0x90, 0x7, + 0x11, 0x9f, 0xc4, 0x20, 0xbe, 0xa0, 0x11, 0x55, + 0xc, 0x3, 0xff, 0x8c, 0x9a, 0x80, 0x11, 0xd5, + 0xc, 0x3, 0x14, 0xf6, 0x67, 0xa5, 0x44, 0x3, + 0x24, 0x66, 0x7a, 0xd4, 0x0, 0xbc, 0xa0, 0x11, + 0x2d, 0x90, 0x7, 0xff, 0xc, 0x57, 0x90, 0x2, + 0x3a, 0x62, 0x0, 0xf7, 0xb1, 0x17, 0x84, 0x3, + 0xe1, 0x22, 0xf0, 0xb8, 0x4, 0x9e, 0xa0, 0x11, + 0x2a, 0x88, 0x3, 0xff, 0x82, 0x2f, 0x28, 0x0, + 0x15, 0x96, 0x10, 0xf, 0x13, 0xde, 0xef, 0xce, + 0x20, 0x19, 0xab, 0x77, 0xd0, 0x60, 0x19, 0x3d, + 0xda, 0x2b, 0x98, 0x80, 0x3f, 0xf8, 0x24, 0xa, + 0x84, 0x6d, 0x2a, 0x1, 0xff, 0xd6, 0x12, 0x28, + 0xde, 0xad, 0x5c, 0x4c, 0x8a, 0x52, 0x0, 0xc2, + 0x64, 0x50, 0xa5, 0xcf, 0xf5, 0x9, 0x14, 0x20, + 0x1f, 0xfd, 0x23, 0x9c, 0xdd, 0xff, 0xe0, 0xca, + 0x88, 0x6, 0x59, 0xdd, 0xff, 0xe0, 0xc2, 0x0, + 0x7f, 0xf2, 0xc, 0x8d, 0x5a, 0x26, 0x15, 0x80, + 0xc0, 0x3f, 0xfc, 0x22, 0x68, 0xad, 0x48, 0x20, + 0x19, 0x67, 0x2a, 0x5d, 0x9f, 0x6, 0x37, 0xff, + 0xff, 0xa1, 0x8e, 0x20, 0x1f, 0xc2, 0xd7, 0xfe, + 0xec, 0xba, 0x96, 0x30, 0xe, 0x13, 0x56, 0x79, + 0xab, 0xb2, 0x80, 0x7f, 0xf7, 0x85, 0x48, 0x40, + 0x2, 0x68, 0xca, 0x60, 0x1c, 0xf1, 0x53, 0xc, + 0xa8, 0x42, 0x6f, 0x99, 0xff, 0xd0, 0xe6, 0x10, + 0xf, 0xf1, 0xc7, 0xf7, 0xf6, 0x5c, 0xc9, 0x4, + 0x3, 0xff, 0x84, 0xfc, 0x67, 0xff, 0xd0, 0x21, + 0x0, 0xff, 0xe0, 0x8, 0xc0, 0x1f, 0xfc, 0xa4, + 0xbc, 0xcf, 0xfe, 0x84, 0xa8, 0x80, 0x7f, 0xf6, + 0x48, 0xcf, 0xff, 0xa0, 0xa4, 0x1, 0xff, 0xff, + 0x0, 0xff, 0xe8, 0xb, 0x67, 0xff, 0xff, 0x4b, + 0x1c, 0x40, 0x3f, 0xf8, 0x22, 0x20, 0x8, 0x58, + 0x80, 0x30, 0x80, 0x7e, 0x10, 0xf, 0xff, 0x8, + 0xb5, 0x77, 0xfd, 0xd4, 0xa2, 0x1, 0x17, 0xa8, + 0x7, 0xb, 0x76, 0xef, 0xff, 0x4a, 0x94, 0x40, + 0x3f, 0xe1, 0x7d, 0x40, 0x8, 0x44, 0x46, 0x8d, + 0x5c, 0xc2, 0x1, 0xe1, 0x22, 0xff, 0xe9, 0xb6, + 0x90, 0x8c, 0x40, 0x18, + + /* U+636E "据" */ + 0x0, 0xff, 0xff, 0x80, 0x7c, 0x4f, 0x9f, 0xf7, + 0x49, 0x80, 0x7f, 0xff, 0xc0, 0x39, 0x6b, 0xff, + 0xff, 0xb1, 0x8e, 0x20, 0x1f, 0xfd, 0xb1, 0x1f, + 0xfe, 0x68, 0x7, 0xff, 0x89, 0x23, 0xbb, 0xff, + 0x97, 0x4a, 0x1, 0xff, 0xc1, 0x25, 0x89, 0x9e, + 0x8b, 0x20, 0x8, 0x52, 0x67, 0xce, 0x82, 0x1, + 0xff, 0xe3, 0x1c, 0x66, 0xf2, 0x98, 0x80, 0x62, + 0x56, 0x6e, 0xb3, 0x30, 0x7, 0xc9, 0x1b, 0x99, + 0xff, 0xca, 0x94, 0x0, 0xff, 0xe0, 0x95, 0x5c, + 0xcf, 0x42, 0x88, 0x6, 0x47, 0x99, 0xe8, 0x53, + 0x0, 0xfc, 0x24, 0x67, 0xff, 0xca, 0x21, 0x0, + 0xff, 0xe0, 0x89, 0xab, 0x37, 0x2e, 0x90, 0x4, + 0x25, 0x6c, 0xdc, 0x84, 0x20, 0x1f, 0x1c, 0x6e, + 0xff, 0xad, 0xc8, 0x2, 0x15, 0xad, 0xdf, 0xf9, + 0x84, 0x3, 0xff, 0xa8, 0x20, 0x1c, 0xe2, 0x45, + 0xfe, 0x6f, 0x0, 0xe3, 0x62, 0x2f, 0xf0, 0x88, + 0x3, 0xff, 0xa8, 0x60, 0x1f, 0x84, 0x3, 0xf8, + 0x7c, 0x3, 0xce, 0x1, 0xff, 0xd7, 0x72, 0x45, + 0x77, 0x29, 0x0, 0x7e, 0x49, 0xef, 0xff, 0xec, + 0x72, 0x0, 0x85, 0xaf, 0xff, 0xff, 0x81, 0xb0, + 0x60, 0x1f, 0xc2, 0x46, 0x9a, 0x40, 0x10, 0xb5, + 0xed, 0xd4, 0x43, 0x90, 0x81, 0xc0, 0x38, 0x48, + 0xbf, 0xf8, 0x2, 0x1, 0xc2, 0x45, 0xff, 0xc1, + 0x6f, 0x10, 0x8, 0x56, 0x73, 0xbf, 0xb7, 0x25, + 0x44, 0x3, 0x84, 0x91, 0x5e, 0x3d, 0x7, 0x84, + 0x3, 0x13, 0x76, 0xef, 0xfb, 0xe4, 0x80, 0x21, + 0x7e, 0xdd, 0xff, 0xe0, 0x5b, 0x90, 0x4, 0x22, + 0x2, 0x10, 0x1, 0x1a, 0x10, 0x80, 0x42, 0xdb, + 0xab, 0xa8, 0x74, 0x27, 0x13, 0x0, 0xcd, 0xc4, + 0x1, 0xff, 0xda, 0x48, 0xcd, 0xff, 0x6e, 0x4d, + 0x10, 0x7, 0xff, 0x4, 0x48, 0x40, 0x31, 0x3, + 0xde, 0xef, 0xf7, 0xc9, 0x0, 0x42, 0xfd, 0xbb, + 0xfe, 0xa6, 0x10, 0xf, 0x84, 0x88, 0x1, 0xff, + 0xc7, 0x3c, 0x50, 0xc, 0x7e, 0x42, 0xc4, 0x5f, + 0xe1, 0x0, 0xe1, 0x22, 0xff, 0x98, 0x40, 0x3f, + 0xfa, 0x24, 0x88, 0x10, 0x8, 0x55, 0x4c, 0x1, + 0xc7, 0x1b, 0xff, 0xff, 0xc4, 0xa5, 0x0, 0xff, + 0xeb, 0xa, 0x61, 0x0, 0x64, 0xc3, 0x0, 0xfc, + 0x60, 0x1f, 0xfc, 0x41, 0x0, 0xff, 0xeb, 0x13, + 0x5a, 0x0, 0x65, 0xf5, 0x0, 0xff, 0xf0, 0x8, + 0x6, 0x1f, 0x10, 0xc, 0x20, 0x12, 0xc4, 0x90, + 0x6, 0x5f, 0x50, 0xf, 0xc7, 0x5b, 0x99, 0xff, + 0xc4, 0x94, 0x0, 0xff, 0xe1, 0x1c, 0x67, 0xfe, + 0xc7, 0x20, 0x9, 0x78, 0x85, 0xa5, 0x44, 0x2, + 0x27, 0x95, 0x0, 0xff, 0x11, 0x9f, 0xff, 0x14, + 0x84, 0x3, 0xff, 0x84, 0x76, 0xa2, 0x1, 0x8, + 0x8d, 0x1a, 0xa5, 0x84, 0x4d, 0xb6, 0xe6, 0x4b, + 0x30, 0x60, 0x1f, 0xe3, 0x8d, 0xff, 0xff, 0xe2, + 0x52, 0x80, 0x7f, 0xf0, 0xce, 0x3b, 0xfe, 0xee, + 0x65, 0xca, 0x90, 0x6, 0x14, 0x8c, 0xda, 0x40, + 0xf, 0x13, 0x7e, 0x65, 0xcc, 0x40, 0x1f, 0xfc, + 0x45, 0xbd, 0xde, 0x61, 0x0, 0xc0, + + /* U+6539 "改" */ + 0x0, 0xff, 0xed, 0x8, 0x80, 0x3f, 0xfe, 0xa4, + 0xfb, 0xdf, 0xee, 0xd8, 0x30, 0xf, 0xfe, 0x69, + 0x1a, 0x27, 0xff, 0x28, 0xc8, 0x3, 0xe1, 0x4b, + 0x30, 0x8, 0x5b, 0x4c, 0x3, 0xff, 0x98, 0x75, + 0xb7, 0x7f, 0xfc, 0xae, 0x52, 0x0, 0xf2, 0x69, + 0x80, 0x63, 0xd4, 0x0, 0xff, 0xe7, 0x79, 0x17, + 0xff, 0x14, 0x40, 0x3f, 0xf8, 0x2b, 0xe8, 0x1, + 0x8a, 0xd0, 0x40, 0x3f, 0xf9, 0xa6, 0xf9, 0xbb, + 0xff, 0xc4, 0xb5, 0x0, 0xff, 0x93, 0x10, 0x3, + 0x8a, 0x37, 0xff, 0xff, 0x93, 0x8e, 0x40, 0x1f, + 0xfd, 0x55, 0xe6, 0x10, 0xf, 0xfe, 0x88, 0x80, + 0x7f, 0xf5, 0x49, 0xe5, 0x40, 0x38, 0xdf, 0x37, + 0x7f, 0xd6, 0xc4, 0x1, 0x89, 0xaf, 0x76, 0xf6, + 0x20, 0xf, 0xfe, 0x88, 0xac, 0x49, 0x80, 0x78, + 0xc9, 0xc8, 0xbf, 0xc2, 0x64, 0x1, 0x9f, 0x50, + 0x8b, 0x8, 0x4, 0x71, 0xbf, 0xff, 0xfc, 0x4a, + 0x50, 0xc, 0x77, 0xf6, 0xa2, 0x1, 0xf9, 0x30, + 0xc0, 0x3f, 0x1e, 0x20, 0x6, 0x3d, 0x50, 0xf, + 0xf8, 0xc0, 0x3f, 0xf9, 0x42, 0x66, 0x10, 0x8, + 0x99, 0xd4, 0x40, 0x2, 0xa8, 0x40, 0x1e, 0x14, + 0x51, 0x0, 0x89, 0x10, 0x20, 0x1f, 0xfc, 0x31, + 0x5a, 0xee, 0xff, 0x4a, 0x0, 0x61, 0x34, 0x20, + 0x16, 0x99, 0x47, 0x20, 0x4, 0x56, 0xa4, 0x1, + 0x85, 0xf0, 0xc0, 0x21, 0x4c, 0x30, 0xf, 0xfe, + 0x29, 0xb0, 0x8f, 0xf9, 0xaf, 0xff, 0x76, 0x5e, + 0xf7, 0xca, 0x0, 0x13, 0xd4, 0x2, 0x39, 0xa3, + 0x0, 0x13, 0x52, 0x0, 0x64, 0xd4, 0x0, 0xff, + 0xee, 0x8, 0x80, 0x39, 0x7d, 0x0, 0x21, 0x79, + 0x43, 0xaa, 0x18, 0x4, 0x4f, 0x28, 0x1, 0xff, + 0xe5, 0x5f, 0x61, 0x0, 0x96, 0xb5, 0x88, 0x2, + 0x3b, 0x93, 0x0, 0xff, 0xeb, 0xb, 0x4d, 0x43, + 0x21, 0x0, 0x7f, 0x25, 0xc9, 0x0, 0x42, 0x30, + 0x0, 0x56, 0x58, 0x40, 0x3f, 0xf9, 0x4e, 0x1, + 0xff, 0xc0, 0x31, 0x45, 0x79, 0xaa, 0x18, 0x7, + 0xf1, 0x35, 0x18, 0x7, 0x85, 0xe5, 0x40, 0x3f, + 0xf8, 0x83, 0xe6, 0x1, 0xa, 0x6a, 0xa1, 0x9f, + 0xf2, 0xd5, 0x90, 0x4, 0xbc, 0x40, 0x1f, 0x9, + 0xbe, 0xc1, 0x80, 0x78, 0x5f, 0xdc, 0xc0, 0x3f, + 0xf8, 0x64, 0x6e, 0x20, 0x11, 0x35, 0x5e, 0x67, + 0xf5, 0x39, 0x80, 0x49, 0xae, 0x20, 0x18, 0x52, + 0x73, 0x10, 0x60, 0x18, 0x44, 0x1, 0x9, 0xc6, + 0xdb, 0x10, 0x7, 0xff, 0x5, 0x2e, 0xa1, 0x90, + 0xcc, 0x45, 0xff, 0xc0, 0x34, 0x57, 0xa9, 0x61, + 0x1, 0x47, 0xbc, 0xb6, 0x20, 0x8, 0x52, 0x33, + 0xbe, 0xd8, 0x80, 0x21, 0x49, 0xcb, 0x84, 0x20, + 0xf, 0xf0, 0xa3, 0xcd, 0xe6, 0x37, 0x7f, 0xf8, + 0x19, 0x75, 0x2c, 0x91, 0x7b, 0xd7, 0x8, 0x40, + 0x11, 0x2d, 0x65, 0xb9, 0x80, 0xa4, 0xe5, 0x31, + 0x0, 0x42, 0x8f, 0x7b, 0xab, 0x84, 0x20, 0xf, + 0xfe, 0x6a, 0x57, 0xe4, 0xba, 0x10, 0x4, 0x26, + 0xd3, 0x98, 0xa5, 0x20, 0xf, 0x85, 0x67, 0x2e, + 0x14, 0x80, 0x31, 0x23, 0x7a, 0x10, 0x7, 0xff, + 0x31, 0x2e, 0x94, 0x40, 0x96, 0x2f, 0x7b, 0x25, + 0x8c, 0x40, 0x3f, 0xf8, 0x22, 0x8f, 0x5b, 0xaa, + 0x74, 0x36, 0xaa, 0x31, 0x0, 0x7f, 0xf3, 0x45, + 0x2b, 0xbf, 0x69, 0xd0, 0x80, 0x3f, 0xf9, 0x84, + 0xb1, 0x79, 0x28, 0x20, 0x10, + + /* U+6548 "效" */ + 0x0, 0xff, 0xf1, 0x8, 0x7, 0xff, 0x74, 0x5b, + 0x3f, 0xf6, 0x30, 0x80, 0x7f, 0xf1, 0x45, 0xb3, + 0xbf, 0xdd, 0x6c, 0x40, 0x1f, 0xff, 0x25, 0xc3, + 0x0, 0x84, 0x46, 0x40, 0x1f, 0xfc, 0xa1, 0x22, + 0xff, 0xe0, 0xf0, 0x7, 0xb8, 0x8b, 0xff, 0x82, + 0x20, 0x11, 0xe3, 0x80, 0x63, 0xd4, 0x0, 0xff, + 0xe5, 0x1c, 0x66, 0xef, 0xfd, 0x8e, 0x60, 0x18, + 0xdf, 0x37, 0x7f, 0xf8, 0x14, 0xc0, 0x2a, 0x64, + 0x1, 0xa, 0x20, 0x40, 0x3f, 0xf9, 0x62, 0x45, + 0xff, 0xd7, 0x30, 0x5f, 0x50, 0xc, 0x2f, 0x9f, + 0xff, 0xfc, 0x5a, 0x50, 0xc, 0x71, 0x9b, 0xbd, + 0xd1, 0x51, 0x3d, 0x9b, 0xbf, 0xdf, 0x15, 0x7d, + 0xbb, 0xf4, 0xa9, 0xeb, 0x88, 0x7, 0xff, 0x60, + 0x5b, 0xea, 0x2a, 0xf6, 0x10, 0x3, 0xcb, 0x59, + 0x51, 0x3b, 0x6a, 0x20, 0x1c, 0x94, 0xe2, 0x1, + 0x13, 0xe7, 0x77, 0xd8, 0xe6, 0x1, 0x8e, 0x33, + 0xb9, 0x6a, 0x1, 0xfc, 0x91, 0x3, 0x0, 0x8e, + 0x20, 0x80, 0x1e, 0x5b, 0xb2, 0x88, 0xa, 0x56, + 0xb9, 0x0, 0x13, 0x9c, 0x40, 0x31, 0x11, 0xc4, + 0x7e, 0x72, 0x30, 0x8, 0x55, 0xc, 0x46, 0x0, + 0xf8, 0x52, 0x64, 0xc2, 0x0, 0x16, 0x86, 0x10, + 0xf, 0xc2, 0xb7, 0x4a, 0x20, 0x3, 0x89, 0x89, + 0x85, 0x10, 0xf, 0x3e, 0x18, 0x7, 0x11, 0xb8, + 0x6, 0x5c, 0x30, 0xf, 0xe2, 0x7d, 0xb6, 0x20, + 0x1, 0x35, 0x42, 0x0, 0x7f, 0x8, 0xe4, 0xb8, + 0x42, 0x45, 0x15, 0x63, 0x0, 0xfc, 0x46, 0xa2, + 0x1, 0x9f, 0x48, 0x2, 0x2c, 0x70, 0xf, 0xf8, + 0x58, 0x80, 0x7, 0x1d, 0x6e, 0xa6, 0x1, 0xf9, + 0x6f, 0xb9, 0xfd, 0x9f, 0xed, 0xac, 0x12, 0x0, + 0x85, 0x6a, 0x54, 0x2, 0x4d, 0x70, 0x9, 0x3d, + 0x0, 0x21, 0x43, 0x20, 0xf, 0xf1, 0x35, 0x66, + 0x50, 0x31, 0x98, 0xbc, 0xc4, 0x20, 0x80, 0x5, + 0x79, 0x40, 0x21, 0x7c, 0x40, 0x16, 0xbd, 0x95, + 0x54, 0x5a, 0xbe, 0x20, 0x4, 0x9a, 0xa2, 0x9c, + 0x82, 0x1, 0x26, 0x20, 0x7, 0xff, 0x8, 0x4c, + 0xc8, 0xb8, 0x42, 0x0, 0x37, 0xbc, 0xa6, 0x99, + 0x20, 0x4, 0x2d, 0xca, 0x1, 0xc4, 0xd5, 0x46, + 0x10, 0x17, 0xc3, 0x0, 0x93, 0xaf, 0xd0, 0x40, + 0x2, 0xdc, 0xa0, 0x1f, 0xfc, 0x73, 0x7c, 0xc4, + 0xa0, 0x80, 0x9, 0x65, 0xcc, 0x2, 0x26, 0xa4, + 0x0, 0xff, 0xe1, 0xb, 0x52, 0x0, 0x48, 0xa8, + 0x20, 0x2, 0x6a, 0x40, 0xf, 0xfe, 0x59, 0x35, + 0xe4, 0xa0, 0x80, 0x78, 0x52, 0xcc, 0x3, 0xff, + 0x88, 0x2f, 0xc8, 0x1, 0xf1, 0xd5, 0xc, 0x3, + 0xff, 0xa0, 0x2e, 0x20, 0x1e, 0x16, 0xe9, 0x40, + 0xf, 0xfe, 0x28, 0x8c, 0x1, 0xc2, 0xa8, 0x40, + 0x1f, 0xfc, 0xe3, 0x8f, 0x83, 0x0, 0x84, 0x60, + 0x8, 0x9a, 0xec, 0xc4, 0x1, 0xff, 0x1b, 0xed, + 0xa8, 0x80, 0x70, 0xb7, 0x41, 0x80, 0x7f, 0xf2, + 0x85, 0x6b, 0x5c, 0x80, 0x22, 0x6d, 0xff, 0x4a, + 0x8, 0x4, 0x93, 0xce, 0x40, 0x1e, 0x26, 0xbd, + 0x83, 0x0, 0x85, 0x10, 0x40, 0x11, 0x3e, 0xd2, + 0x8, 0x7, 0xff, 0xc, 0x4d, 0xef, 0xe9, 0x44, + 0x2, 0x39, 0xf9, 0x31, 0x13, 0x55, 0x14, 0x40, + 0x4, 0xc4, 0x0, 0x24, 0x7b, 0xdd, 0x4a, 0x8, + 0x0, 0x56, 0x72, 0xed, 0xf2, 0x80, 0x10, 0xad, + 0xe5, 0x31, 0x0, 0x7f, 0x13, 0x56, 0x62, 0x10, + 0x40, 0x22, 0x6b, 0xd6, 0x20, 0xe, 0x14, 0xbd, + 0xbc, 0xc4, 0x94, 0xee, 0xae, 0x10, 0x80, 0x21, + 0x59, 0xca, 0x62, 0x0, 0x13, 0x55, 0x14, 0x40, + 0x22, 0x59, 0xdd, 0x4a, 0x90, 0x7, 0x8, 0xc6, + 0x1, 0xa, 0x46, 0x6c, 0xa0, 0x80, 0x7f, 0x9, + 0xa1, 0x89, 0x10, 0x4c, 0x2, 0x13, 0x69, 0xcf, + 0xa6, 0x20, 0xf, 0x85, 0x6b, 0xed, 0x8c, 0x3, + 0xf, 0x31, 0x0, 0x71, 0xbd, 0xec, 0xc5, 0x7d, + 0xb9, 0x80, 0x7f, 0xf1, 0x85, 0x6e, 0xa6, 0x59, + 0xf9, 0x2c, 0x62, 0x1, 0xff, 0xc1, 0x14, 0x9c, + 0xda, 0x9b, 0xd7, 0x30, 0x8, + + /* U+6559 "教" */ + 0x0, 0xff, 0xe1, 0x9, 0x17, 0x80, 0x3f, 0xf9, + 0x62, 0x30, 0x7, 0xff, 0x68, 0x5e, 0x77, 0x74, + 0x28, 0x7, 0xf8, 0x95, 0xdc, 0xa8, 0x42, 0x1, + 0x1c, 0xe7, 0x7f, 0xba, 0xd8, 0x40, 0x3f, 0xfc, + 0xc9, 0x76, 0x88, 0x55, 0xcb, 0x88, 0xa, 0xa1, + 0x0, 0x62, 0x20, 0x80, 0x7f, 0xf3, 0x12, 0x77, + 0x7d, 0x90, 0x80, 0x19, 0x6f, 0x77, 0xd2, 0xcc, + 0xf6, 0x10, 0x1, 0x3c, 0x30, 0x82, 0x61, 0x80, + 0x64, 0xc4, 0x0, 0xff, 0xe6, 0x89, 0x17, 0xe1, + 0x0, 0xf0, 0x91, 0x79, 0xe2, 0x8, 0x1, 0x24, + 0x49, 0x80, 0xf, 0x5c, 0x3, 0x1e, 0xa0, 0x7, + 0xff, 0x39, 0x6f, 0xff, 0xdd, 0x26, 0x1, 0x96, + 0xbf, 0xee, 0xc7, 0x31, 0x10, 0x0, 0xa2, 0x54, + 0x40, 0x4, 0x8a, 0x40, 0x18, 0xe7, 0x37, 0x7f, + 0xf8, 0xb2, 0xa0, 0x1f, 0xfc, 0x57, 0x0, 0xfc, + 0x4d, 0xee, 0x40, 0x1, 0x59, 0x72, 0x0, 0x8e, + 0xa8, 0x40, 0x1e, 0x12, 0x2f, 0xfe, 0x39, 0x80, + 0x63, 0x8d, 0xee, 0xfd, 0xf2, 0x80, 0x19, 0x6f, + 0xb9, 0xb0, 0x60, 0x18, 0x56, 0xbb, 0x9b, 0x31, + 0x4c, 0x40, 0x18, 0x9a, 0xb3, 0x3e, 0xa6, 0x20, + 0xc, 0x4d, 0x59, 0x89, 0x70, 0xe, 0x13, 0x11, + 0xfe, 0x0, 0xf8, 0x46, 0x0, 0xfe, 0x11, 0x89, + 0xd9, 0xc4, 0x3, 0x88, 0xc4, 0xcf, 0xe0, 0x32, + 0x0, 0xc9, 0xaa, 0x66, 0x21, 0x0, 0xc7, 0x3d, + 0xff, 0xff, 0x6d, 0x28, 0x80, 0x71, 0x3e, 0x77, + 0xff, 0xb6, 0x8, 0x44, 0x1, 0xf3, 0xe1, 0x80, + 0x71, 0x11, 0xc0, 0x31, 0xfa, 0x80, 0x7f, 0xf1, + 0x4, 0x8b, 0x24, 0x75, 0x28, 0x80, 0x44, 0xd1, + 0x42, 0x64, 0x64, 0x20, 0x91, 0x26, 0x1, 0xfc, + 0x46, 0xa2, 0x1, 0x9f, 0x48, 0x2, 0x14, 0x51, + 0x0, 0xff, 0xe1, 0xad, 0xee, 0xeb, 0x73, 0x0, + 0xf1, 0x35, 0x6e, 0xec, 0xdf, 0xea, 0x51, 0x0, + 0x8e, 0x2e, 0xc, 0x2, 0x4c, 0x40, 0x9, 0x31, + 0x0, 0x32, 0x69, 0x80, 0x7f, 0xf0, 0x49, 0x1f, + 0x90, 0x3, 0xc2, 0x6a, 0xcd, 0x94, 0xc4, 0x3, + 0x89, 0xeb, 0x31, 0x8, 0x6f, 0xee, 0x89, 0x10, + 0x4, 0xbc, 0xa2, 0x9a, 0xe2, 0x1, 0x1e, 0xa0, + 0x7, 0xf8, 0x9a, 0xfb, 0x6e, 0x10, 0x40, 0x4, + 0xb3, 0x9f, 0x95, 0x15, 0xe6, 0xe6, 0x20, 0x3, + 0x7b, 0xc9, 0x42, 0x37, 0xbc, 0x83, 0x0, 0x1d, + 0xa0, 0x80, 0x49, 0xd1, 0xce, 0x20, 0x12, 0x53, + 0x8, 0x7, 0xf8, 0x9a, 0x18, 0xc4, 0x49, 0x17, + 0xdb, 0x4c, 0x60, 0xd9, 0xd9, 0x2a, 0x44, 0x59, + 0xdc, 0x84, 0x10, 0xf, 0xfe, 0x1, 0xd3, 0x10, + 0x4, 0x8c, 0xa2, 0x1, 0x2f, 0x30, 0x80, 0x7f, + 0xf0, 0x4e, 0x33, 0xb9, 0x6e, 0x82, 0x1, 0x8c, + 0x40, 0x38, 0xd7, 0xcd, 0x19, 0xdd, 0x10, 0x99, + 0x55, 0x1c, 0xc0, 0x3c, 0x75, 0x43, 0x0, 0xf8, + 0x5b, 0x94, 0x3, 0xff, 0x84, 0x6f, 0x57, 0x6c, + 0xc6, 0xeb, 0xb9, 0xff, 0x6c, 0x18, 0x6, 0x37, + 0xaa, 0x4c, 0xa2, 0xe, 0xe6, 0x62, 0xab, 0x9c, + 0x3, 0xe2, 0x35, 0x10, 0xe, 0x17, 0xd4, 0x0, + 0xff, 0xe1, 0xbf, 0x22, 0x46, 0x62, 0x20, 0x88, + 0x3, 0xfc, 0x26, 0xac, 0xee, 0x88, 0x4d, 0x52, + 0xed, 0x96, 0x80, 0x1c, 0x2b, 0x54, 0x61, 0x0, + 0xe1, 0x68, 0x81, 0x80, 0x7f, 0xf0, 0x92, 0xea, + 0x97, 0x6c, 0xdd, 0x77, 0x3f, 0xee, 0x93, 0x0, + 0xc9, 0x35, 0x31, 0x7, 0x73, 0x2a, 0x91, 0x6, + 0x40, 0x10, 0xa4, 0xe5, 0x28, 0x80, 0x42, 0x30, + 0x4, 0x6f, 0xb2, 0x82, 0x1, 0xff, 0xc0, 0x24, + 0x54, 0x41, 0x91, 0x4, 0x40, 0x1f, 0xfc, 0xc1, + 0x47, 0xac, 0xb6, 0x20, 0x8, 0x56, 0xb3, 0xf5, + 0x88, 0x2, 0x16, 0xbd, 0x95, 0x20, 0xf, 0xfe, + 0x51, 0x88, 0x80, 0x3f, 0xf8, 0x22, 0x8f, 0x5b, + 0xd7, 0xa, 0x40, 0x10, 0xad, 0x65, 0x29, 0x9, + 0xcf, 0xc9, 0x80, 0x63, 0x6a, 0xdc, 0x95, 0x20, + 0xf, 0xf0, 0xb5, 0xff, 0xf6, 0xc1, 0x0, 0x42, + 0x6c, 0x1, 0xf1, 0x65, 0x29, 0x0, 0x62, 0x58, + 0xbf, 0xa5, 0x20, 0xf, 0x13, 0x6e, 0x42, 0x8, + 0x6, 0x35, 0x21, 0x0, 0xff, 0xb, 0xea, 0x0, + 0x70, 0x91, 0xac, 0x54, 0x18, 0x7, 0xc7, 0x1c, + 0xe8, 0x87, 0xad, 0xd5, 0x3a, 0x8, 0x7, 0xfc, + 0x26, 0xf7, 0xf9, 0xa, 0xd5, 0xae, 0x60, 0x0, + + /* U+6570 "数" */ + 0x0, 0xff, 0xff, 0x80, 0x42, 0x4a, 0xc8, 0x40, + 0x18, 0xe3, 0xbf, 0xed, 0x82, 0x0, 0xc4, 0xae, + 0xa6, 0x20, 0x1f, 0xb, 0x5f, 0xfb, 0xb6, 0xdc, + 0x80, 0x3f, 0xf9, 0xa9, 0x19, 0x53, 0x72, 0xc2, + 0x1, 0xff, 0xc1, 0x15, 0x8a, 0x8a, 0xcd, 0x72, + 0x0, 0xe4, 0xc4, 0x0, 0x9, 0x0, 0x90, 0x7, + 0xff, 0x35, 0x22, 0x8, 0x0, 0x48, 0x81, 0x80, + 0x7f, 0xc7, 0x10, 0x50, 0x1, 0x47, 0xb9, 0x0, + 0x63, 0xd4, 0x0, 0xc4, 0x68, 0x1, 0xff, 0xcf, + 0x16, 0xe4, 0x0, 0x19, 0x98, 0x40, 0x3f, 0xa, + 0x5a, 0x10, 0x1c, 0x7b, 0x98, 0x7, 0xa, 0x20, + 0x40, 0x32, 0x61, 0x0, 0x7f, 0xf2, 0xce, 0x33, + 0x76, 0x85, 0x11, 0x3, 0xc6, 0x6b, 0x8, 0x4, + 0x4d, 0xd2, 0xa0, 0x22, 0x2a, 0xfd, 0xdd, 0x8, + 0x9, 0xa6, 0x1, 0xc9, 0x17, 0x7f, 0xfc, 0x5a, + 0x62, 0x0, 0xe1, 0x22, 0xe1, 0x18, 0x8b, 0x8, + 0x80, 0x38, 0x48, 0xb0, 0x8c, 0x45, 0xf0, 0x26, + 0x20, 0x7, 0x88, 0xd1, 0x3f, 0xf8, 0xaf, 0xc0, + 0x1c, 0x73, 0xdf, 0xff, 0x6c, 0xa0, 0x80, 0x7e, + 0x14, 0x7a, 0xdf, 0xff, 0xd4, 0xfa, 0xe2, 0x1, + 0x8d, 0xea, 0xbf, 0x3a, 0x0, 0x71, 0xb5, 0x52, + 0x68, 0xc0, 0x3f, 0xe2, 0x6b, 0xc9, 0x41, 0x0, + 0xf8, 0x41, 0x1e, 0xb7, 0xae, 0x14, 0x80, 0x25, + 0x96, 0x10, 0xf, 0x7b, 0xaa, 0xf9, 0x39, 0xc0, + 0x31, 0x25, 0xaa, 0x90, 0x84, 0x3, 0xc2, 0x6f, + 0x5b, 0xa9, 0x41, 0x12, 0x44, 0xb0, 0x80, 0x44, + 0xdb, 0x92, 0xa4, 0x28, 0xf5, 0xb7, 0x10, 0x95, + 0x0, 0xf8, 0xf1, 0xc0, 0x3c, 0xb8, 0x60, 0x19, + 0xf0, 0x80, 0x3f, 0x13, 0x67, 0x64, 0x29, 0x1, + 0x2c, 0xe5, 0xba, 0x88, 0x7, 0x84, 0xda, 0xb2, + 0xdd, 0x10, 0xc4, 0x6e, 0x60, 0x1f, 0xc9, 0x88, + 0x1, 0x8b, 0x1c, 0x3, 0x26, 0x28, 0x7, 0xf1, + 0x3c, 0xa9, 0x1b, 0x56, 0xea, 0x98, 0x84, 0xd0, + 0xc0, 0x3f, 0xc2, 0x91, 0x7e, 0xe, 0x80, 0x10, + 0xad, 0x51, 0x84, 0x2, 0x7d, 0x40, 0x1, 0x2a, + 0x10, 0x4, 0x46, 0xa2, 0x1, 0xfe, 0x15, 0xad, + 0xc9, 0x52, 0x0, 0x92, 0x36, 0x10, 0x44, 0xb5, + 0x90, 0x40, 0x1f, 0x24, 0xe4, 0xaa, 0x35, 0x5a, + 0xab, 0x5c, 0x40, 0x2, 0xfc, 0x84, 0xb6, 0x60, + 0x10, 0xa6, 0x18, 0x7, 0xfc, 0x6f, 0x79, 0x9f, + 0x6d, 0x30, 0x80, 0x67, 0x9d, 0xcc, 0xff, 0xba, + 0x98, 0xe9, 0x4, 0x0, 0x9a, 0x80, 0x10, 0xac, + 0x75, 0x18, 0x4, 0x4d, 0x68, 0x1, 0xff, 0xc1, + 0xe5, 0x33, 0xf8, 0x84, 0x3, 0x84, 0x8c, 0xff, + 0xf8, 0x84, 0xe0, 0x1c, 0x92, 0xc2, 0x1, 0x19, + 0x88, 0x2, 0x3b, 0x92, 0x0, 0xff, 0xe0, 0x9c, + 0xf7, 0xfd, 0x8c, 0x40, 0x19, 0x27, 0x7f, 0xfb, + 0xa9, 0x40, 0x30, 0xb5, 0xff, 0xea, 0x40, 0xf, + 0x1d, 0xc9, 0x0, 0x7c, 0x92, 0xe2, 0x1, 0xff, + 0xc6, 0x16, 0x86, 0x20, 0x9, 0x35, 0xc8, 0x3, + 0xb, 0xca, 0x80, 0x67, 0xd4, 0x0, 0xff, 0xe1, + 0x88, 0x7, 0x88, 0x8c, 0x20, 0x1f, 0xfc, 0x64, + 0x88, 0x20, 0x7, 0x24, 0xf7, 0x32, 0x5d, 0xa2, + 0xcc, 0x2, 0x16, 0xa4, 0x0, 0xff, 0x85, 0x6b, + 0x20, 0xc0, 0x3c, 0x4d, 0xb4, 0x82, 0x1, 0xff, + 0xc3, 0x21, 0x5, 0x21, 0x36, 0x86, 0x41, 0x1, + 0x36, 0x89, 0x62, 0x0, 0x8e, 0x6c, 0xc0, 0x3f, + 0x89, 0x67, 0x29, 0x44, 0x2, 0x25, 0x42, 0x0, + 0x85, 0x6e, 0x98, 0x80, 0x3f, 0xf8, 0x24, 0xb3, + 0x7b, 0xd9, 0x2f, 0x11, 0x29, 0x0, 0x7f, 0x1c, + 0x7d, 0x39, 0x88, 0x0, 0xda, 0xb7, 0x54, 0xc4, + 0x1, 0x13, 0x5e, 0x55, 0xfc, 0xa0, 0x6, 0x49, + 0xdc, 0x95, 0x20, 0xf, 0x84, 0x8d, 0x19, 0xe2, + 0x6b, 0x3b, 0x99, 0x2a, 0x40, 0x2, 0x47, 0x86, + 0x31, 0x0, 0x12, 0xc6, 0x7f, 0x73, 0x25, 0x48, + 0x3, 0x13, 0x5e, 0x4a, 0x8, 0x0, 0x9a, 0xad, + 0x88, 0x3, 0x1b, 0x56, 0xe3, 0x90, 0x7, 0x24, + 0x5c, 0xc3, 0xb2, 0x98, 0x80, 0x92, 0xc5, 0xee, + 0xae, 0x1e, 0x73, 0xf2, 0x10, 0x88, 0xa8, 0x42, + 0x1, 0xa, 0x3d, 0xee, 0xa5, 0x4, 0x3, 0xe1, + 0x49, 0xcc, 0x42, 0x8, 0x0, 0x56, 0x58, 0x80, + 0x30, 0xb4, 0x41, 0x59, 0xe6, 0xb3, 0x7f, 0xb6, + 0x9d, 0x8, 0x3, 0xc2, 0x6f, 0x7b, 0xaa, 0xa7, + 0x54, 0x56, 0xf5, 0xc2, 0x10, 0x7, 0xff, 0x8, + 0x4d, 0xef, 0xf2, 0xf6, 0x94, 0x40, 0x20, + + /* U+6587 "文" */ + 0x0, 0xff, 0xea, 0x88, 0xfc, 0x1, 0xff, 0xf4, + 0x5a, 0xee, 0xdf, 0x6, 0x1, 0xff, 0xff, 0x0, + 0xff, 0xff, 0x80, 0x7f, 0xf4, 0x44, 0x8c, 0xff, + 0xf9, 0xc4, 0xe0, 0x18, 0x4d, 0x4c, 0xff, 0xf9, + 0xc4, 0x20, 0x1e, 0x48, 0xcc, 0xff, 0xe7, 0xc1, + 0x80, 0x72, 0xce, 0x67, 0xff, 0x3e, 0xc, 0x3, + 0xff, 0xfe, 0x0, 0x49, 0xef, 0xff, 0xdb, 0x6, + 0x1, 0x85, 0xaf, 0xff, 0xff, 0x99, 0xb0, 0x60, + 0x1c, 0x4f, 0xbf, 0xff, 0xba, 0x4c, 0x3, 0xff, + 0x88, 0x4f, 0x2a, 0x1, 0xb, 0x43, 0x8, 0x7, + 0xff, 0x25, 0x2e, 0x4c, 0x3, 0x1d, 0x49, 0x0, + 0x7f, 0xf4, 0x56, 0x5c, 0x80, 0x23, 0x88, 0x20, + 0x7, 0xff, 0x18, 0x5b, 0xd8, 0x40, 0x32, 0xcb, + 0x8, 0x7, 0xff, 0x4c, 0xe6, 0xd0, 0x2, 0x16, + 0x86, 0x10, 0xf, 0xfe, 0x19, 0xc4, 0x10, 0x3, + 0x13, 0xc2, 0x88, 0x7, 0xff, 0x54, 0x5b, 0xd4, + 0x40, 0x23, 0x8a, 0x61, 0x0, 0xff, 0x89, 0xfd, + 0x84, 0x2, 0x15, 0x89, 0x20, 0xf, 0xfe, 0xca, + 0x5d, 0x90, 0x40, 0x2, 0x93, 0xae, 0x60, 0x1f, + 0x24, 0xfc, 0x18, 0x4, 0x29, 0x76, 0x51, 0x0, + 0xff, 0xed, 0x8a, 0xd5, 0xa8, 0x80, 0x47, 0x1b, + 0x28, 0x20, 0x2b, 0x54, 0x62, 0x0, 0x89, 0xaa, + 0x8a, 0x20, 0x1f, 0xfd, 0xf1, 0x5a, 0xa3, 0x10, + 0x4, 0x2d, 0x5b, 0x7b, 0x4a, 0x20, 0x11, 0xc7, + 0x4a, 0x8, 0x7, 0xff, 0x91, 0x27, 0x9c, 0x80, + 0x21, 0x34, 0x30, 0xc, 0x93, 0xce, 0x60, 0x1f, + 0xfe, 0x81, 0x7f, 0x61, 0x0, 0xfe, 0x11, 0xe0, + 0xf, 0xff, 0x20, 0x9b, 0x56, 0xf5, 0xc2, 0x8, + 0x7, 0xf0, 0xac, 0x67, 0xe4, 0xb1, 0x88, 0x7, + 0xff, 0x68, 0x4d, 0xa7, 0x3f, 0x25, 0x48, 0x3, + 0x12, 0xc6, 0x77, 0x32, 0x54, 0x80, 0x30, 0x9b, + 0x4e, 0x7e, 0x4a, 0x98, 0x80, 0x7f, 0xf3, 0x44, + 0xd5, 0xe2, 0xb3, 0xb9, 0x92, 0xc6, 0x20, 0x10, + 0x9b, 0xd6, 0xea, 0x9c, 0xc4, 0x46, 0xd5, 0xba, + 0xa7, 0x31, 0x0, 0xc2, 0x6d, 0x59, 0xdc, 0xcb, + 0x97, 0x53, 0x20, 0xf, 0xf8, 0xda, 0x6f, 0x7b, + 0x99, 0x50, 0xea, 0x62, 0x1, 0x84, 0x96, 0x33, + 0xf2, 0x14, 0x80, 0x3f, 0xc4, 0xb1, 0x9f, 0x90, + 0xa4, 0x1, 0xe1, 0x34, 0x68, 0xac, 0xdf, 0xec, + 0xa7, 0x31, 0x0, 0xc4, 0x66, 0x52, 0x10, 0xe, + 0x13, 0x57, 0x9c, 0xee, 0x6d, 0x39, 0x88, 0x7, + 0xff, 0x18, 0x4d, 0xeb, 0x7b, 0x6a, 0x18, 0xc4, + 0x3, 0xf0, 0x88, 0xce, 0x10, 0xc, 0x2b, 0x76, + 0x64, 0x68, 0xac, 0xee, 0x65, 0x43, 0x18, 0x80, + 0x7f, 0xf4, 0x44, 0x95, 0xe7, 0x3b, 0xfb, 0x2a, + 0x5d, 0x55, 0x1d, 0x28, 0x1, 0x0, + + /* U+6599 "料" */ + 0x0, 0xff, 0xe0, 0x93, 0x5f, 0x75, 0xb0, 0x60, + 0x1f, 0xfd, 0x34, 0xaf, 0xfd, 0x8c, 0x20, 0x1f, + 0xfc, 0x11, 0x34, 0x66, 0x21, 0x0, 0x61, 0x71, + 0x18, 0xc4, 0x3, 0xa, 0x3b, 0x99, 0x4c, 0x40, + 0x38, 0x4d, 0x8, 0x3, 0xff, 0xaa, 0xb5, 0x49, + 0x99, 0x48, 0x3, 0xff, 0x84, 0x9f, 0x10, 0x9b, + 0xa2, 0x0, 0x89, 0xf7, 0x2f, 0x75, 0x6e, 0x62, + 0x1, 0xff, 0xd0, 0x4d, 0x40, 0x1, 0x5a, 0x90, + 0x7, 0xff, 0x1, 0x31, 0x40, 0x2, 0xf4, 0x60, + 0x11, 0x9a, 0xd0, 0x40, 0x92, 0x33, 0xed, 0xcc, + 0x40, 0x3f, 0xf9, 0xa9, 0xe8, 0x0, 0x3c, 0x40, + 0xf, 0xf8, 0xb1, 0x4, 0x5, 0xe8, 0xc0, 0x30, + 0xa3, 0xdf, 0xe4, 0x20, 0x80, 0xa4, 0x74, 0x98, + 0x7, 0xff, 0x35, 0xcc, 0x80, 0xb, 0xe6, 0x1, + 0xfc, 0x4a, 0xa2, 0x2, 0x6a, 0x30, 0xf, 0xe1, + 0x37, 0xbf, 0xa5, 0x36, 0x99, 0x18, 0x7, 0xff, + 0x34, 0xb5, 0x80, 0x23, 0x61, 0x0, 0xf9, 0x9f, + 0x48, 0xa, 0xa8, 0x60, 0x1f, 0xfc, 0x21, 0x5a, + 0xc9, 0x41, 0x0, 0xff, 0xe6, 0x9, 0x11, 0xa3, + 0x37, 0x21, 0xdd, 0xe2, 0x1, 0x8c, 0x1e, 0x37, + 0x39, 0x40, 0x88, 0x20, 0x1, 0x46, 0x61, 0x88, + 0x7, 0xff, 0x58, 0xe3, 0x37, 0x32, 0xdd, 0xd6, + 0xe4, 0x1, 0xa, 0xd6, 0xed, 0x98, 0xdd, 0xd0, + 0xcb, 0x54, 0x99, 0x67, 0xe4, 0xa9, 0x0, 0x7f, + 0xfb, 0x84, 0x9, 0x3e, 0x50, 0x80, 0x4d, 0xab, + 0x75, 0x2a, 0x40, 0x1f, 0xfc, 0xe3, 0x9e, 0xff, + 0xee, 0xa4, 0x0, 0xf8, 0x9f, 0x3f, 0xfe, 0xe9, + 0x41, 0x47, 0xbd, 0xd5, 0x31, 0x0, 0x9, 0xa5, + 0x48, 0x3, 0xff, 0xa8, 0x4d, 0x28, 0x1, 0xf1, + 0x3e, 0xd2, 0x88, 0x7, 0xff, 0x0, 0x96, 0x77, + 0x25, 0xe7, 0x9c, 0x80, 0x3f, 0xfa, 0x67, 0x54, + 0x30, 0xf, 0xf0, 0xad, 0x6b, 0x90, 0x7, 0xff, + 0x8, 0xda, 0x18, 0x80, 0x3f, 0xf8, 0xc2, 0x44, + 0x10, 0xf, 0xf2, 0x53, 0x10, 0x12, 0x20, 0x80, + 0x21, 0x56, 0x51, 0x3, 0x8f, 0x83, 0x0, 0xff, + 0xe3, 0x89, 0x1a, 0x63, 0x0, 0x63, 0x8c, 0xef, + 0xf7, 0x6f, 0xc9, 0x80, 0x7c, 0x4f, 0xc, 0x20, + 0x55, 0xf8, 0x20, 0x18, 0xf6, 0xe1, 0x0, 0x4, + 0xfd, 0x6, 0x24, 0x68, 0xac, 0xf1, 0x35, 0x79, + 0xbd, 0xcf, 0xf7, 0x6e, 0x5b, 0x98, 0x7, 0x9, + 0x8, 0x6, 0x31, 0x70, 0xe, 0x15, 0x98, 0x30, + 0x2, 0x5b, 0x30, 0x3, 0xe7, 0x16, 0x98, 0x21, + 0x4b, 0xa5, 0xad, 0xcb, 0xa9, 0x87, 0x65, 0x43, + 0x21, 0x10, 0x6, 0x12, 0x20, 0x80, 0x62, 0x6a, + 0xcd, 0xef, 0xf7, 0x4a, 0x0, 0x42, 0xd5, 0x44, + 0x0, 0xa, 0xf3, 0x8, 0x7, 0xfc, 0x4f, 0xf9, + 0x4c, 0x4a, 0x64, 0x22, 0x23, 0x45, 0x67, 0x89, + 0xab, 0xcd, 0xef, 0xf7, 0x6c, 0xa0, 0x6, 0x1f, + 0x43, 0x21, 0x0, 0xfe, 0x30, 0xc, 0x73, 0xa, + 0x1, 0xff, 0xc3, 0x22, 0x8, 0x0, 0xe3, 0x7b, + 0x9b, 0x97, 0x53, 0xe, 0xca, 0x86, 0x42, 0x1, + 0xff, 0xcc, 0x15, 0x87, 0x47, 0xf7, 0x20, 0xf, + 0xff, 0xa9, 0xc5, 0xc1, 0x80, 0x7f, 0xff, 0xc0, + 0x3f, 0xff, 0xe0, 0x1f, 0xff, 0xb2, 0x7c, 0xff, + 0xba, 0x4c, 0x3, 0xff, 0xa6, 0x95, 0xff, 0xb1, + 0x84, 0x3, 0xfc, + + /* U+65B0 "新" */ + 0x0, 0xff, 0xff, 0x80, 0x7f, 0xf0, 0x56, 0xff, + 0xf6, 0x38, 0x80, 0x7f, 0xf4, 0xc4, 0xd6, 0x2b, + 0x2e, 0x10, 0x40, 0x3f, 0xfc, 0x2, 0x44, 0x10, + 0xc, 0x26, 0x8c, 0xf3, 0x59, 0xdf, 0xd9, 0x4e, + 0xa6, 0x8f, 0x79, 0x6, 0x1, 0xf1, 0xbd, 0xe6, + 0x7f, 0xa1, 0x0, 0x31, 0xce, 0x67, 0xfd, 0x8, + 0xb, 0x1b, 0xdf, 0xdc, 0xfe, 0xcb, 0x98, 0x65, + 0x31, 0x0, 0x9, 0xab, 0xcd, 0x67, 0x6c, 0x18, + 0x7, 0xcf, 0xca, 0x67, 0xfe, 0x20, 0xf, 0x9, + 0x19, 0xff, 0x88, 0x40, 0x3c, 0x23, 0x12, 0x2b, + 0x44, 0xd6, 0x6f, 0x7f, 0x65, 0x43, 0x29, 0x88, + 0x7, 0xf9, 0x27, 0xbf, 0x69, 0x90, 0x88, 0xb5, + 0xdf, 0xff, 0xba, 0x50, 0x8d, 0x5e, 0xb7, 0xfd, + 0x4a, 0x1, 0xf1, 0xce, 0x5d, 0x4b, 0xb2, 0x99, + 0x8, 0x7, 0xff, 0x2c, 0x84, 0x14, 0x88, 0xbe, + 0x80, 0x1f, 0x93, 0x10, 0x8d, 0x48, 0x8, 0x3, + 0xff, 0xc6, 0x98, 0x80, 0x12, 0x62, 0x0, 0x79, + 0x7d, 0x40, 0x2, 0xdc, 0xa0, 0x1f, 0xfd, 0xf2, + 0x33, 0xe0, 0x32, 0x1, 0x30, 0x24, 0x33, 0xcd, + 0x88, 0x0, 0x14, 0xf7, 0x33, 0xc4, 0x20, 0x1f, + 0xf, 0x90, 0x8f, 0xff, 0x28, 0x3, 0x8e, 0xf7, + 0x33, 0x53, 0x10, 0x9, 0x34, 0xde, 0x66, 0x96, + 0x10, 0x0, 0xac, 0xe6, 0x74, 0xb8, 0x80, 0x78, + 0x9f, 0x3b, 0xbf, 0xf9, 0x30, 0x80, 0x18, 0x7d, + 0xd5, 0x7f, 0xe3, 0x10, 0xc, 0x24, 0x8a, 0xbf, + 0xe3, 0x21, 0x0, 0xff, 0xe8, 0x88, 0x7, 0x89, + 0xa6, 0xab, 0xfe, 0x95, 0x0, 0xc5, 0x55, 0xff, + 0xc0, 0x84, 0x1, 0x0, 0xe3, 0x8e, 0xff, 0xf6, + 0x30, 0x80, 0x42, 0xf9, 0xff, 0xdd, 0x28, 0x1, + 0xff, 0xc5, 0x13, 0x0, 0xf8, 0xc0, 0x3f, 0xf8, + 0x42, 0x1, 0x9c, 0x40, 0x3f, 0xfa, 0x7, 0x3d, + 0xff, 0xfe, 0xe9, 0x40, 0xc, 0x71, 0xbf, 0xff, + 0xeb, 0x62, 0x30, 0xf, 0x18, 0x80, 0x7f, 0xf4, + 0x38, 0x8b, 0xfe, 0x10, 0xf, 0x84, 0x8b, 0xfe, + 0x13, 0x6e, 0x60, 0xc, 0x42, 0x1, 0xff, 0xd0, + 0x37, 0xcd, 0xdf, 0xd2, 0x86, 0x1, 0xe1, 0x5b, + 0xed, 0xdf, 0xea, 0x51, 0x22, 0x0, 0x47, 0xca, + 0x1, 0xff, 0xd8, 0x14, 0xaa, 0x31, 0x0, 0x78, + 0x52, 0x73, 0x69, 0x88, 0x3, 0xc7, 0xae, 0x1, + 0x94, 0xc4, 0x3, 0xff, 0xac, 0x2d, 0x54, 0x51, + 0x0, 0xfc, 0x26, 0x61, 0x25, 0x9d, 0xd4, 0xa9, + 0x1, 0xda, 0x90, 0x4, 0x9e, 0xa0, 0x1f, 0xfd, + 0x41, 0x5a, 0xc9, 0x41, 0x2, 0x6a, 0x84, 0x0, + 0xc5, 0x7d, 0x92, 0x82, 0x4, 0xd2, 0xad, 0x4c, + 0x40, 0x12, 0x73, 0x88, 0x7, 0xff, 0x40, 0x4d, + 0xef, 0xe9, 0x48, 0x0, 0x71, 0xd2, 0xa4, 0x1, + 0xf1, 0x93, 0x5e, 0xcb, 0xd7, 0x8e, 0xb8, 0x80, + 0x4b, 0xca, 0x20, 0x1f, 0xfd, 0x27, 0xe6, 0x10, + 0x1, 0xbd, 0xeb, 0x98, 0x7, 0xff, 0x8, 0xda, + 0x8f, 0xe5, 0x4, 0x0, 0x2d, 0xca, 0x1, 0xff, + 0xd3, 0x14, 0x9c, 0xbb, 0x66, 0x21, 0x4, 0x3, + 0xff, 0x8a, 0xb1, 0x26, 0x1, 0xa, 0xdc, 0x20, + 0x7, 0xff, 0x5c, 0x51, 0x6, 0x1, 0xff, 0xc9, + 0x5b, 0xb3, 0x19, 0x9f, 0x69, 0x44, 0x3, 0xff, + 0x84, 0x26, 0x23, 0x18, 0x7, 0xff, 0x41, 0x6f, + 0xff, 0x63, 0x88, 0x7, 0xa, 0x4e, 0x62, 0xc, + 0x3, 0xff, 0x88, 0x71, 0xbd, 0xd6, 0xc1, 0x80, + 0x7f, 0x80, + + /* U+65B9 "方" */ + 0x0, 0xff, 0xe9, 0x89, 0x19, 0xf1, 0x0, 0x7f, + 0xfc, 0x5e, 0x73, 0x3a, 0xd0, 0x3, 0xff, 0xfe, + 0x1, 0xff, 0xff, 0x0, 0xff, 0xe4, 0x9, 0x17, + 0xff, 0x38, 0xc5, 0xc0, 0x38, 0xc8, 0xbf, 0xf9, + 0xe2, 0x1, 0x8e, 0x33, 0x77, 0xff, 0x9b, 0x90, + 0x60, 0x1c, 0xb3, 0xbb, 0xff, 0xce, 0xa6, 0x0, + 0xff, 0xfe, 0x1c, 0xf7, 0xff, 0xff, 0x1b, 0x18, + 0x40, 0x39, 0x27, 0xff, 0xff, 0xab, 0x6c, 0x1, + 0xff, 0xcc, 0x70, 0xf, 0x84, 0x80, 0x3f, 0xfd, + 0xe2, 0x62, 0x1, 0x84, 0x9c, 0x3, 0xff, 0xe0, + 0x20, 0x1c, 0x62, 0xc6, 0x7f, 0xfc, 0xe2, 0x0, + 0xff, 0xe9, 0x91, 0x1c, 0x3, 0x89, 0xab, 0x33, + 0xff, 0x9b, 0x8, 0x20, 0x1f, 0xfd, 0x26, 0xd3, + 0x0, 0xe1, 0x22, 0xff, 0xe4, 0x8, 0x80, 0x38, + 0x88, 0x20, 0x1f, 0xfd, 0x13, 0xc7, 0x0, 0xc2, + 0xdb, 0xbf, 0xfc, 0xa7, 0x10, 0x8, 0x40, 0x3f, + 0xfa, 0x65, 0x6a, 0x40, 0x10, 0xbe, 0x98, 0x7, + 0xff, 0x21, 0x8c, 0x40, 0x3f, 0xfa, 0xc7, 0x4a, + 0x40, 0x19, 0x31, 0x0, 0x3f, 0xf9, 0x2, 0x6c, + 0x1, 0x8c, 0x5c, 0x3, 0xff, 0x9c, 0x2d, 0xe, + 0x40, 0x10, 0xb7, 0x28, 0x7, 0xff, 0x24, 0xb8, + 0x40, 0x3b, 0xc4, 0x3, 0xff, 0x98, 0x2b, 0x70, + 0x80, 0x19, 0x22, 0x8, 0x1, 0xff, 0xca, 0x62, + 0x20, 0x6, 0x61, 0x30, 0xf, 0xfe, 0x51, 0x3e, + 0xd2, 0x88, 0x4, 0x2d, 0xc, 0x20, 0x1f, 0xfc, + 0xa2, 0x23, 0x80, 0x71, 0x10, 0x40, 0x3f, 0xf8, + 0xc2, 0x71, 0x98, 0x83, 0x0, 0xc7, 0x1b, 0x26, + 0x1, 0xff, 0xcb, 0x14, 0xb2, 0x0, 0xc7, 0xcc, + 0x1, 0xff, 0xc3, 0x25, 0x8b, 0xcc, 0x39, 0x88, + 0x4, 0x4d, 0x7a, 0xe6, 0x1, 0xfe, 0x11, 0x0, + 0x7f, 0xc2, 0x91, 0x66, 0x1, 0x85, 0x10, 0x40, + 0x1f, 0xfc, 0x4, 0x9d, 0xd5, 0x3a, 0x10, 0x6, + 0x26, 0xaf, 0x94, 0x10, 0xf, 0xf9, 0x23, 0xff, + 0xff, 0x81, 0xd6, 0xc4, 0x1, 0x92, 0x24, 0xc0, + 0x3f, 0xf8, 0x29, 0x12, 0xc2, 0x0, 0x13, 0x6a, + 0xdd, 0x4a, 0x90, 0x7, 0xff, 0x9, 0x35, 0xc4, + 0x3, 0xff, 0x80, 0x24, 0x6d, 0x39, 0x4c, 0x20, + 0x1f, 0xfc, 0x31, 0x49, 0xcc, 0x6f, 0x64, 0xa9, + 0x0, 0x7f, 0xf1, 0xd2, 0x7b, 0xff, 0xff, 0x81, + 0xdb, 0x92, 0xc6, 0x20, 0x1f, 0xfc, 0x20, + + /* U+65E0 "无" */ + 0x0, 0xf0, 0xb5, 0x66, 0x7f, 0xfa, 0x65, 0x0, + 0x3f, 0xf8, 0x46, 0x2c, 0x67, 0xff, 0xe9, 0x21, + 0x0, 0xff, 0xe1, 0x12, 0xc5, 0xdf, 0xff, 0x22, + 0x54, 0x40, 0x31, 0x34, 0xdd, 0xff, 0xf2, 0xe1, + 0x0, 0x3f, 0xf8, 0x64, 0x89, 0xff, 0xc9, 0x52, + 0x30, 0xc, 0xde, 0xe8, 0x9f, 0xfc, 0xb3, 0x10, + 0xf, 0xfe, 0xd0, 0x98, 0x7, 0x18, 0x80, 0x7f, + 0xfc, 0x9c, 0x4, 0x3, 0x8, 0x7, 0xff, 0xd4, + 0xc0, 0x3c, 0x20, 0x1f, 0xfd, 0x83, 0x8c, 0xdd, + 0xff, 0xe6, 0x52, 0x80, 0x72, 0xd6, 0xef, 0xff, + 0x42, 0xd8, 0x80, 0x3c, 0x24, 0x5f, 0xfc, 0xd1, + 0x0, 0xf8, 0x48, 0xbf, 0xfa, 0xe, 0x20, 0x1e, + 0x3b, 0xdc, 0xcf, 0xfe, 0x55, 0xb9, 0x80, 0x72, + 0x46, 0x67, 0xff, 0x47, 0xd8, 0x80, 0x3c, 0x46, + 0x7f, 0xfc, 0xb0, 0x23, 0x0, 0xc8, 0x66, 0x77, + 0xe1, 0x23, 0x3f, 0xfe, 0x58, 0x80, 0x7f, 0xf4, + 0x8f, 0x50, 0x3, 0x19, 0x83, 0xee, 0xfc, 0xa0, + 0x1f, 0xfe, 0x93, 0xb7, 0x10, 0x8, 0x53, 0x38, + 0x3, 0xff, 0xde, 0x4f, 0xee, 0x20, 0x10, 0xbd, + 0xa9, 0x80, 0x7f, 0xfb, 0x45, 0x66, 0xc, 0x3, + 0x1c, 0xd9, 0x88, 0x7, 0xff, 0xb0, 0x9a, 0xad, + 0x0, 0x31, 0x37, 0xb9, 0x0, 0x7f, 0xf3, 0xc9, + 0x62, 0xa, 0x62, 0x1, 0xff, 0xc9, 0x26, 0xbc, + 0x94, 0x10, 0x8, 0x9f, 0xa4, 0xc0, 0x3f, 0xfa, + 0x23, 0xaa, 0xf5, 0x9d, 0x6c, 0x1, 0xff, 0xc2, + 0x13, 0x7a, 0xdd, 0x4a, 0x8, 0x4, 0x2b, 0x5f, + 0x6, 0x1, 0xff, 0xd3, 0x71, 0x30, 0xc, 0x44, + 0x0, 0xfc, 0x48, 0xd1, 0x7b, 0xd9, 0xa, 0x40, + 0x18, 0x9a, 0xbe, 0x94, 0x80, 0x3f, 0x84, 0x3, + 0x93, 0x54, 0xce, 0x22, 0xfc, 0x67, 0x37, 0x38, + 0x80, 0x47, 0xea, 0x1, 0xc7, 0x3b, 0xab, 0x97, + 0x42, 0x0, 0xc2, 0x8f, 0x5b, 0xa9, 0x51, 0x0, + 0xff, 0x9f, 0x4c, 0x3, 0x13, 0x56, 0x65, 0xbb, + 0xfb, 0x32, 0x95, 0x10, 0x9, 0x29, 0xc4, 0x3, + 0x8e, 0x64, 0xc4, 0x0, 0x24, 0x68, 0xbd, 0xeb, + 0x85, 0x20, 0xf, 0xfe, 0x19, 0x3f, 0xcb, 0x21, + 0x8, 0x80, 0x3f, 0xf8, 0x62, 0x22, 0x47, 0xba, + 0x61, 0x0, 0xfc, 0x93, 0x9d, 0xfb, 0x72, 0xe8, + 0x40, 0x1f, 0xfc, 0xa3, 0x69, 0xbd, 0xee, 0x7f, + 0xff, 0xf0, 0xfb, 0x9b, 0x70, 0x82, 0x1, 0xe0, + + /* U+65E5 "日" */ + 0x0, 0x9, 0xaa, 0xff, 0xf8, 0x90, 0x80, 0x31, + 0x55, 0xd5, 0x7f, 0xf8, 0x7d, 0xc0, 0x3f, 0xf8, + 0x2, 0x22, 0x2f, 0xfe, 0x90, 0x88, 0x3, 0xff, + 0x8e, 0xb7, 0xdb, 0xbf, 0xfd, 0x2e, 0xb5, 0x0, + 0xff, 0xff, 0x80, 0x7f, 0xff, 0xc0, 0x3f, 0xff, + 0xe0, 0x1f, 0xcd, 0xa8, 0x9f, 0xfd, 0x4d, 0x60, + 0xf, 0xfe, 0x31, 0xbd, 0xdf, 0xff, 0x51, 0xcc, + 0x3, 0xff, 0x92, 0x23, 0xff, 0xd2, 0x0, 0xff, + 0xe4, 0xad, 0x7f, 0x77, 0xff, 0x4b, 0xe9, 0x40, + 0x3f, 0xff, 0xe0, 0x1f, 0xff, 0xf0, 0xf, 0xff, + 0xf8, 0x7, 0xf0, 0x91, 0x91, 0x7f, 0xf4, 0x8c, + 0x84, 0x3, 0xff, 0x8c, 0x91, 0x9b, 0xbf, 0xfd, + 0x2c, 0x84, 0x0, 0xff, 0xfe, 0x24, 0xf7, 0x7f, + 0xf5, 0x25, 0x0, 0x3f, 0xf8, 0xc2, 0x62, 0x3f, + 0xfd, 0x42, 0x20, 0x8f, 0x80, 0x20, + + /* U+65F6 "时" */ + 0x0, 0xff, 0xf3, 0x13, 0xdd, 0xf4, 0x20, 0x7, + 0xff, 0xc0, 0x79, 0x51, 0x31, 0x8, 0x7, 0xfc, + 0x2d, 0x7f, 0xff, 0xfc, 0x9d, 0x83, 0x0, 0xff, + 0xfb, 0x18, 0x7, 0xff, 0x9d, 0x2b, 0xff, 0xfb, + 0x1c, 0x40, 0x3e, 0x24, 0x4f, 0xfe, 0x49, 0x8, + 0x6, 0x6d, 0x54, 0x4e, 0x31, 0x0, 0xff, 0x8, + 0x7, 0xff, 0x0, 0xc0, 0x3c, 0x4b, 0x37, 0x7f, + 0xfc, 0x78, 0x40, 0xe, 0x37, 0xab, 0xbe, 0x84, + 0x0, 0xff, 0xea, 0x8, 0xff, 0xf2, 0x40, 0x3f, + 0x8, 0xfc, 0x1, 0xff, 0xd3, 0x27, 0xce, 0xef, + 0xfe, 0x3e, 0xb0, 0x80, 0x65, 0xae, 0xef, 0x52, + 0x80, 0x7f, 0x98, 0x8c, 0xff, 0x94, 0x8c, 0x3, + 0xff, 0x80, 0x24, 0x41, 0x0, 0xff, 0xed, 0x9c, + 0x66, 0x7f, 0x4a, 0x88, 0x7, 0xe1, 0x48, 0xcf, + 0xdd, 0x9c, 0x80, 0x3f, 0xfb, 0x22, 0x48, 0x9f, + 0xc6, 0x20, 0x1f, 0xc2, 0xba, 0xc0, 0x11, 0xc7, + 0xc1, 0x80, 0x7f, 0xf5, 0xd2, 0x2e, 0xff, 0xbd, + 0x88, 0x3, 0xf8, 0x56, 0xec, 0xa2, 0x0, 0x27, + 0xe9, 0x40, 0xf, 0xff, 0x70, 0xad, 0xd9, 0x44, + 0x0, 0x4d, 0x32, 0x40, 0xf, 0xff, 0x70, 0xad, + 0xd9, 0x44, 0x0, 0x4d, 0x30, 0x60, 0x1f, 0xfe, + 0xe1, 0x5b, 0xb3, 0x2b, 0xd7, 0xc1, 0x80, 0x7f, + 0xf4, 0x52, 0x2e, 0xff, 0xbd, 0x88, 0x3, 0xff, + 0x8a, 0x2b, 0x35, 0xa, 0x40, 0x1f, 0xfd, 0x31, + 0x24, 0x4f, 0xe3, 0x10, 0xf, 0xff, 0x61, 0xbd, + 0xdf, 0xff, 0xf, 0x68, 0xc0, 0x3f, 0xfc, 0xad, + 0xa8, 0x9f, 0xfc, 0x33, 0x20, 0xf, 0xfe, 0xf8, + 0xa7, 0xcc, 0xee, 0x70, 0xf, 0xfe, 0x78, 0x99, + 0xff, 0xc9, 0x6a, 0x20, 0x1f, 0xfc, 0x62, 0x46, + 0x6c, 0x84, 0x1, 0xff, 0xcf, 0x5a, 0xdc, 0xcf, + 0xeb, 0x73, 0x0, 0xc7, 0xae, 0x1, 0xff, 0xe3, + 0x4a, 0x71, 0x0, 0xf8, 0x44, 0x46, 0x8b, 0x17, + 0xae, 0x40, 0x1f, 0xfe, 0x43, 0x9e, 0xff, 0xfb, + 0xb9, 0xb9, 0x74, 0xe8, 0x20, 0x1f, 0xfc, 0x0, + + /* U+6700 "最" */ + 0x0, 0xff, 0x89, 0x1d, 0xff, 0xfc, 0xc, 0x62, + 0x1, 0xff, 0xcb, 0x6d, 0x88, 0xff, 0xf0, 0x5d, + 0x88, 0x3, 0xff, 0xa2, 0x4f, 0x9f, 0xff, 0xfd, + 0x39, 0x40, 0xf, 0xfe, 0xc1, 0xa5, 0x3b, 0xff, + 0xf4, 0xf1, 0x80, 0x3f, 0xfb, 0x2, 0x6d, 0x11, + 0xff, 0xd3, 0x52, 0x0, 0xff, 0xec, 0x13, 0xef, + 0xff, 0xff, 0x4e, 0x94, 0x3, 0xff, 0xb0, 0x49, + 0x11, 0xff, 0xd3, 0x9e, 0x70, 0xf, 0xfe, 0xa0, + 0x80, 0x63, 0x57, 0x7f, 0xfe, 0x93, 0x21, 0x0, + 0x7f, 0xf4, 0x92, 0x7b, 0xff, 0xff, 0xbf, 0xb0, + 0x60, 0x1f, 0xfc, 0x21, 0x7c, 0xff, 0xff, 0xf8, + 0x6c, 0x18, 0x7, 0xc4, 0xa6, 0x78, 0x40, 0x38, + 0x48, 0xcf, 0xf8, 0x84, 0x3, 0x84, 0x8c, 0xff, + 0xfa, 0x4f, 0xc2, 0x1, 0xe1, 0x59, 0xcc, 0xba, + 0x4c, 0x2, 0x17, 0xec, 0xcf, 0xe9, 0x40, 0xc, + 0x4d, 0xd9, 0x9f, 0xfc, 0xcd, 0xcc, 0xea, 0x62, + 0x0, 0xff, 0xe3, 0xb, 0x67, 0xff, 0xf5, 0xa8, + 0x7, 0x9d, 0xb3, 0xff, 0xff, 0x95, 0xdf, 0xed, + 0x94, 0x10, 0xf, 0xfe, 0x49, 0x23, 0x37, 0xf2, + 0x10, 0x7, 0xc4, 0x89, 0x18, 0x80, 0x4, 0x91, + 0x3f, 0xc6, 0x40, 0x1c, 0x3e, 0xa2, 0x1, 0xff, + 0xc8, 0x14, 0x89, 0x9f, 0xef, 0x70, 0xf, 0x32, + 0x45, 0xf3, 0x0, 0x42, 0x2d, 0x9b, 0xbf, 0xbd, + 0x4c, 0x3, 0x2c, 0xb0, 0x80, 0x7f, 0xf2, 0x45, + 0xb3, 0xff, 0xfa, 0xd4, 0x3, 0xfc, 0xb1, 0x26, + 0x0, 0x38, 0x96, 0x10, 0x0, 0xa4, 0xc9, 0x84, + 0x0, 0x4f, 0x2a, 0x1, 0xff, 0xcc, 0x24, 0x55, + 0xfe, 0x31, 0x0, 0xff, 0x89, 0xfd, 0xc8, 0x5, + 0x27, 0x26, 0x55, 0x46, 0x20, 0x1, 0x3f, 0x41, + 0x80, 0x7f, 0xf3, 0x5, 0x22, 0xab, 0xfa, 0x50, + 0x3, 0xff, 0x82, 0x71, 0xf0, 0x60, 0x2, 0x66, + 0x20, 0x80, 0xe, 0x3e, 0xc, 0x3, 0xff, 0x84, + 0x26, 0xac, 0xc7, 0xac, 0x20, 0x8, 0x5f, 0xb3, + 0x1b, 0xae, 0xff, 0xd4, 0xa0, 0x1f, 0xfc, 0x11, + 0x45, 0xd1, 0x0, 0xfc, 0x2f, 0xec, 0x40, 0x1f, + 0xfc, 0x32, 0xab, 0x99, 0x43, 0xa0, 0x80, 0x61, + 0x23, 0x31, 0x10, 0x40, 0x44, 0x42, 0x20, 0xf, + 0x8, 0x8d, 0x62, 0xb7, 0xae, 0x14, 0x80, 0x2, + 0x68, 0x40, 0x1, 0x47, 0xbd, 0xd5, 0xc3, 0x21, + 0x8, 0x7, 0xe2, 0xc7, 0x56, 0x63, 0xba, 0x26, + 0x55, 0x4b, 0xcc, 0x6f, 0x73, 0xfd, 0xdc, 0xda, + 0x40, 0xc, 0x6b, 0xdf, 0x94, 0xea, 0x40, 0x11, + 0x2c, 0xe7, 0xe5, 0xef, 0x5b, 0xa0, 0x80, 0x9, + 0x1e, 0x6f, 0x7b, 0x60, 0xc0, 0x38, 0x56, 0x6a, + 0x65, 0x10, 0x76, 0x62, 0xa9, 0xc, 0xc4, 0x22, + 0x0, 0xff, 0x8d, 0x62, 0x4c, 0x49, 0x5e, 0xb3, + 0xb6, 0x98, 0xc4, 0x2, 0x14, 0x8b, 0xed, 0xb9, + 0x64, 0x20, 0x15, 0x98, 0x30, 0xf, 0xfe, 0x8a, + 0x57, 0xfe, 0xd8, 0x57, 0xce, 0xda, 0x85, 0x31, + 0x0, 0xff, 0xe0, 0x92, 0x34, 0xde, 0xff, 0x52, + 0x0, 0x70, + + /* U+6708 "月" */ + 0x0, 0xff, 0xe0, 0x93, 0xe7, 0xff, 0xff, 0x7b, + 0xa4, 0xc0, 0x3f, 0xf8, 0xa2, 0x1, 0xff, 0xf7, + 0x37, 0xbc, 0xcf, 0xfe, 0x85, 0xb9, 0x80, 0x7f, + 0xf4, 0x5f, 0x94, 0xcf, 0xff, 0xa0, 0xbc, 0xe0, + 0x1f, 0xff, 0xf0, 0xf, 0xfe, 0x2b, 0xf1, 0x17, + 0xff, 0x4b, 0x9c, 0x3, 0xff, 0xa2, 0x6f, 0x9b, + 0xbf, 0xfd, 0xc, 0x73, 0x0, 0xff, 0xff, 0x80, + 0x7f, 0x87, 0xc0, 0x39, 0x27, 0xff, 0xff, 0xa3, + 0xd2, 0x80, 0x1f, 0xfc, 0xc3, 0x0, 0xc2, 0x60, + 0x1f, 0xfe, 0xa7, 0x11, 0x0, 0x70, 0x80, 0x7f, + 0xfa, 0x44, 0x88, 0x1, 0xc2, 0x68, 0x9f, 0xfd, + 0x17, 0xf6, 0x0, 0xff, 0xe4, 0xaf, 0xa8, 0x7, + 0x24, 0x5d, 0xff, 0xf4, 0x65, 0x88, 0x3, 0xff, + 0x90, 0x24, 0xa2, 0x1, 0x84, 0x8b, 0xff, 0xa8, + 0x20, 0x1f, 0xfc, 0x81, 0x7a, 0x30, 0xc, 0xb7, + 0xbb, 0xff, 0xd3, 0xc8, 0x40, 0xf, 0xfe, 0x31, + 0x4d, 0x98, 0x6, 0x4c, 0x40, 0xf, 0xff, 0x39, + 0xdb, 0x10, 0x6, 0x5e, 0x61, 0x0, 0xff, 0xf2, + 0x9c, 0x73, 0x8, 0x4, 0x2f, 0x2a, 0x1, 0xff, + 0xe4, 0x14, 0x9e, 0x72, 0x0, 0x85, 0x6e, 0x4c, + 0x3, 0xff, 0x90, 0x48, 0x9f, 0xfc, 0x16, 0xd5, + 0x0, 0xe1, 0x0, 0xe4, 0xba, 0x62, 0x0, 0x85, + 0x6a, 0xd4, 0x40, 0x3f, 0xf9, 0x47, 0x37, 0x7f, + 0xf4, 0x20, 0x80, 0x42, 0x9a, 0x60, 0x19, 0x2b, + 0x60, 0xc9, 0x27, 0x29, 0x4, 0x3, 0xff, 0x96, + 0x4d, 0x46, 0x1, 0xfc, 0x22, 0x23, 0x57, 0xac, + 0xa5, 0x0, 0xf8, 0xdf, 0x36, 0xd8, 0x80, 0x3f, + 0xf9, 0xe2, 0xf9, 0xff, 0xfd, 0xdc, 0xdc, 0xa8, + 0x52, 0x0, 0xe0, + + /* U+6709 "有" */ + 0x0, 0xff, 0xff, 0x80, 0x7f, 0xf2, 0xca, 0x37, + 0xfd, 0xb9, 0x4c, 0x40, 0x1f, 0xff, 0x13, 0xa5, + 0x20, 0x1, 0x10, 0xc8, 0x80, 0x1f, 0xfd, 0xd1, + 0x22, 0xff, 0xe3, 0x25, 0x29, 0x0, 0x64, 0xf6, + 0x22, 0xff, 0xea, 0x8, 0x7, 0xe3, 0x9c, 0xdd, + 0xff, 0xe2, 0xdb, 0x10, 0x7, 0x2c, 0xee, 0xff, + 0xf5, 0x69, 0x80, 0x3f, 0x8c, 0x3, 0xff, 0xf2, + 0x71, 0xbf, 0xff, 0xfc, 0x1c, 0x62, 0x0, 0xc2, + 0xd7, 0xff, 0xff, 0xd9, 0xb6, 0x0, 0xff, 0xe4, + 0xa4, 0xf3, 0x10, 0x4, 0x97, 0x8, 0x1, 0xff, + 0xee, 0x39, 0x93, 0x10, 0x7, 0x2c, 0x66, 0xef, + 0xff, 0x4a, 0x10, 0x3, 0xff, 0x9a, 0x73, 0xcc, + 0x40, 0x1f, 0x9, 0x17, 0xff, 0x54, 0x3, 0xff, + 0x96, 0x4d, 0x7a, 0xc4, 0x1, 0xf1, 0xc6, 0xf7, + 0x7f, 0xf3, 0x6d, 0x84, 0x3, 0xff, 0x9a, 0x4b, + 0x59, 0x28, 0x20, 0x1f, 0xce, 0x26, 0x23, 0xff, + 0xcd, 0x71, 0x30, 0xf, 0xfe, 0x48, 0xa4, 0x66, + 0x29, 0x44, 0x0, 0x29, 0x16, 0xe6, 0x1, 0x92, + 0x33, 0x3f, 0xf9, 0xdc, 0xc4, 0x1, 0xff, 0xc8, + 0x48, 0xa7, 0x31, 0x0, 0xa, 0x46, 0xdb, 0xaf, + 0x80, 0x78, 0x48, 0xcf, 0xff, 0x9a, 0x42, 0x1, + 0xff, 0xc9, 0x49, 0xc8, 0x43, 0x6b, 0xfb, 0x73, + 0x0, 0xfe, 0x49, 0xef, 0xff, 0xfe, 0x6e, 0x38, + 0x80, 0x7f, 0xf2, 0x89, 0xef, 0x25, 0x4, 0x3, + 0xff, 0xbc, 0x60, 0x1f, 0xfd, 0xd4, 0x8c, 0xdd, + 0xff, 0xe6, 0xf3, 0x10, 0x7, 0xff, 0x78, 0x48, + 0xbf, 0xf9, 0xe2, 0x1, 0xff, 0xde, 0x49, 0xef, + 0xff, 0xfe, 0x6e, 0x38, 0x80, 0x7f, 0xfe, 0xcc, + 0x3, 0xff, 0xde, 0x24, 0x58, 0x47, 0x13, 0x11, + 0x80, 0x42, 0x60, 0x1f, 0xfe, 0x91, 0x79, 0xdd, + 0xbb, 0xb6, 0xd2, 0x88, 0x4, 0x5c, 0xa0, 0x1f, + 0xfe, 0x81, 0x7d, 0x40, 0xf, 0x8, 0x89, 0x15, + 0xeb, 0x9c, 0x40, 0x3f, 0xe0, + + /* U+670D "服" */ + 0x0, 0xf8, 0x47, 0xff, 0x90, 0x1, 0xff, 0xe6, + 0x16, 0xde, 0xef, 0xfe, 0x37, 0xc1, 0x80, 0x47, + 0x3d, 0xff, 0xff, 0xd1, 0xe8, 0x30, 0xf, 0xff, + 0xf8, 0x7, 0xff, 0x9, 0xaf, 0xff, 0xdb, 0x4, + 0x1, 0xff, 0xc3, 0x27, 0xcf, 0xff, 0xfe, 0x2d, + 0xb0, 0x80, 0x7f, 0xf9, 0xc4, 0x3, 0xff, 0x8a, + 0xe0, 0x1f, 0xff, 0x1, 0x35, 0x66, 0x95, 0x66, + 0x65, 0x28, 0x80, 0x46, 0x2, 0x1, 0xff, 0xc5, + 0x6b, 0xff, 0xf6, 0xc1, 0x0, 0x7f, 0xf3, 0x5, + 0xf2, 0x26, 0x55, 0x54, 0xc9, 0x8c, 0x2, 0x25, + 0xb2, 0x0, 0xff, 0xf4, 0xa5, 0xd4, 0xcf, 0xd5, + 0x79, 0xbd, 0xb0, 0x60, 0x1f, 0xfc, 0x65, 0x9e, + 0xef, 0x5b, 0x90, 0x7, 0xff, 0xc, 0xc5, 0xc8, + 0xbf, 0x3, 0x22, 0x7c, 0xec, 0x22, 0x23, 0x21, + 0x0, 0xff, 0xe0, 0x8, 0x7, 0x19, 0x8, 0xf9, + 0xbc, 0x3, 0xff, 0x88, 0x2d, 0x5b, 0xbf, 0xfc, + 0x8c, 0xcb, 0x7b, 0x18, 0x40, 0x3f, 0xff, 0x2, + 0x8a, 0x20, 0x1f, 0xfc, 0x33, 0x22, 0xf9, 0xb8, + 0x3, 0xff, 0x88, 0x4f, 0x50, 0x40, 0x10, 0xbe, + 0x7f, 0xff, 0xa9, 0x40, 0x33, 0xe1, 0x80, 0x7f, + 0x18, 0x7, 0x96, 0x77, 0x7d, 0x6c, 0x40, 0x1f, + 0xfc, 0x57, 0x6b, 0x40, 0x0, 0xb4, 0xa0, 0x7, + 0xc2, 0xdc, 0xa0, 0x12, 0xe2, 0x0, 0x7f, 0x87, + 0xc4, 0x3, 0xff, 0xaa, 0x2d, 0xca, 0x0, 0x15, + 0x86, 0x10, 0xc, 0x2d, 0x48, 0x1, 0x26, 0x20, + 0x7, 0xfc, 0xe2, 0x60, 0x11, 0xcf, 0x7f, 0xfb, + 0x60, 0x80, 0x3f, 0xf9, 0xb, 0x2c, 0x20, 0x3, + 0x9a, 0x51, 0x4, 0xb9, 0x30, 0x0, 0xb7, 0xb0, + 0x80, 0x7f, 0xc2, 0x62, 0x1, 0x31, 0x8, 0x7, + 0xff, 0x48, 0xe2, 0xd4, 0x40, 0x9, 0x7b, 0x92, + 0xa2, 0x0, 0x38, 0xb4, 0x0, 0xff, 0xe0, 0x11, + 0x1c, 0x2, 0x2d, 0x60, 0xf, 0xfe, 0xa0, 0xad, + 0xc2, 0x0, 0x4, 0xcc, 0x40, 0x1, 0x68, 0x62, + 0x0, 0xff, 0xe0, 0xbe, 0x90, 0x4, 0xc4, 0x40, + 0xf, 0xfe, 0xb0, 0xa6, 0x18, 0x7, 0xcb, 0xea, + 0x1, 0xff, 0xc2, 0x3d, 0x70, 0x8, 0x8d, 0x80, + 0x3f, 0xfa, 0xa4, 0xb5, 0x90, 0x60, 0x1f, 0x24, + 0xe5, 0x29, 0x0, 0x7f, 0x8e, 0xd8, 0x80, 0x2, + 0xb6, 0x60, 0x1, 0x1f, 0x37, 0x18, 0x7, 0xff, + 0x14, 0x49, 0xa7, 0x31, 0x4a, 0x20, 0x2, 0x59, + 0xb9, 0x41, 0x0, 0x12, 0xd6, 0x62, 0x58, 0xc4, + 0x3, 0x1d, 0xb0, 0x80, 0x5, 0xec, 0xc0, 0x4, + 0xdb, 0xdd, 0xad, 0x84, 0x2, 0x2e, 0x20, 0xf, + 0xe3, 0x34, 0x7c, 0xb1, 0x88, 0x0, 0xde, 0xf2, + 0x99, 0x1a, 0xf2, 0x94, 0x80, 0x2, 0x6d, 0x3b, + 0x6a, 0x20, 0x3, 0xaa, 0x42, 0x9b, 0x69, 0x80, + 0x44, 0x88, 0x20, 0xc, 0x24, 0x6b, 0x3e, 0xc2, + 0x1, 0xfc, 0x66, 0x8f, 0x85, 0x54, 0x5f, 0x64, + 0x20, 0x80, 0x71, 0x2d, 0x6e, 0xa9, 0x8c, 0xcd, + 0x54, 0x51, 0x0, 0x89, 0x1e, 0xb2, 0x10, 0x3, + 0x8e, 0x37, 0xff, 0x76, 0xe5, 0x31, 0x80, 0x71, + 0xcf, 0x7f, 0xdb, 0x6, 0x4f, 0x54, 0x74, 0x10, + 0xf, 0xfe, 0x9, 0x2c, 0xe6, 0x25, 0x0, 0x30, + + /* U+671F "期" */ + 0x0, 0xfc, 0x2f, 0x9f, 0xf7, 0x41, 0x80, 0x7f, + 0x2d, 0x7f, 0xeb, 0x50, 0xf, 0xff, 0x90, 0x80, + 0x7f, 0xf0, 0x16, 0xbf, 0xff, 0xf9, 0x7d, 0x6, + 0x1, 0xfc, 0x60, 0x1e, 0x17, 0x0, 0xfc, 0x26, + 0x1, 0xe3, 0x10, 0xf, 0xfe, 0xcb, 0x5f, 0xfd, + 0xb0, 0x60, 0x10, 0xb5, 0xff, 0xfe, 0xe9, 0x40, + 0xc, 0x93, 0xdf, 0xec, 0x61, 0x0, 0xf1, 0x3e, + 0x77, 0x7f, 0xa9, 0x44, 0x3, 0xfc, 0x62, 0x3c, + 0x1, 0xf0, 0x8f, 0xfc, 0x1, 0xe1, 0x1c, 0xc0, + 0x1f, 0xde, 0x23, 0xff, 0x31, 0x80, 0x7f, 0xcb, + 0x5d, 0xd7, 0xc1, 0x80, 0x42, 0xfb, 0xdd, 0xfd, + 0x68, 0x1, 0x92, 0xfb, 0xaa, 0x61, 0x0, 0xff, + 0xf0, 0x13, 0x11, 0x7f, 0x80, 0x3f, 0xf8, 0xe7, + 0xaa, 0xbf, 0xf5, 0x90, 0x80, 0x7f, 0xf2, 0x45, + 0x6b, 0x77, 0xfa, 0x10, 0x3, 0xff, 0x8c, 0x2b, + 0x15, 0x5f, 0xe7, 0x40, 0xf, 0xfe, 0x59, 0x23, + 0x37, 0xf2, 0x8, 0x7, 0xff, 0x18, 0x4d, 0x59, + 0xbf, 0xc8, 0x40, 0x1f, 0xfc, 0xa1, 0x58, 0x99, + 0xfe, 0xe5, 0x0, 0xff, 0xe3, 0x1d, 0xc4, 0xcf, + 0xfa, 0x10, 0x40, 0x3f, 0xf9, 0x22, 0xbf, 0x77, + 0xfd, 0x2a, 0x1, 0xff, 0xc0, 0x31, 0x0, 0xff, + 0xef, 0x11, 0xa2, 0x7f, 0x18, 0x80, 0x7f, 0xc2, + 0xe, 0x1, 0xdc, 0xe4, 0x5f, 0xe5, 0x30, 0xf, + 0xfe, 0x50, 0xb5, 0xff, 0xfe, 0xe9, 0x40, 0xf, + 0xf8, 0xc4, 0x3, 0x89, 0xab, 0x77, 0xfd, 0x2a, + 0x20, 0x1f, 0xfc, 0xa1, 0x70, 0xf, 0xc2, 0x60, + 0x1f, 0xfc, 0x1f, 0x10, 0xc, 0x24, 0x67, 0xff, + 0x10, 0x80, 0x7f, 0x92, 0x7b, 0xb7, 0xc1, 0x80, + 0x42, 0xfb, 0xdd, 0xfd, 0x48, 0x1, 0x92, 0xbb, + 0xa9, 0x41, 0x3, 0x0, 0x89, 0xbb, 0x33, 0xfe, + 0xe7, 0x10, 0xf, 0xe1, 0x31, 0x1e, 0x0, 0xf8, + 0x47, 0xfc, 0x1, 0xf8, 0x46, 0x31, 0x71, 0x10, + 0x4, 0xdc, 0x40, 0x1f, 0xfc, 0xb5, 0xaf, 0xff, + 0x76, 0x54, 0xd5, 0xef, 0x7f, 0xfb, 0xb2, 0x62, + 0xb7, 0xff, 0xea, 0x73, 0x50, 0x8, 0x4d, 0x44, + 0x3, 0xff, 0xa4, 0x4d, 0xf5, 0x35, 0x79, 0x68, + 0x1, 0x13, 0xe6, 0x26, 0x2b, 0x9c, 0x80, 0x3c, + 0xfa, 0x60, 0x12, 0xf1, 0x0, 0x7f, 0xf4, 0x45, + 0xa6, 0xc, 0x2, 0x48, 0xb4, 0x0, 0x89, 0xe5, + 0x84, 0x0, 0x71, 0xf0, 0x60, 0x12, 0x62, 0x0, + 0x42, 0x6a, 0x20, 0x1f, 0xfc, 0xe1, 0x49, 0xc9, + 0x40, 0x8, 0xe2, 0x58, 0x40, 0x3c, 0x93, 0x4c, + 0x20, 0x2, 0x7f, 0x74, 0x6f, 0x61, 0x0, 0xb, + 0xe1, 0x80, 0x70, 0x8f, 0xe5, 0x21, 0x0, 0xfe, + 0x27, 0xdb, 0x62, 0x0, 0xa, 0x4f, 0x39, 0x0, + 0x7f, 0x92, 0x2d, 0x44, 0x46, 0x81, 0xb6, 0x80, + 0x10, 0xbd, 0x20, 0x7, 0x1c, 0xff, 0x77, 0xa5, + 0x0, 0x32, 0xe9, 0x80, 0x44, 0xff, 0x2a, 0x46, + 0xfb, 0x6c, 0x40, 0x1f, 0xfc, 0x11, 0x5a, 0xee, + 0x64, 0x3c, 0x74, 0xa9, 0x24, 0xd9, 0x80, 0x78, + 0xed, 0xc4, 0x3, 0x84, 0x8d, 0x5e, 0xa8, 0xa0, + 0x1e, 0x36, 0xad, 0xc8, 0x30, 0xf, 0xfe, 0x60, + 0x9b, 0x56, 0xdb, 0x90, 0x7, 0xe3, 0x9e, 0xff, + 0xee, 0xdc, 0xa8, 0x51, 0x0, 0x80, + + /* U+672A "未" */ + 0x0, 0xff, 0xff, 0x80, 0x7f, 0xf4, 0x52, 0xbf, + 0xfa, 0xd4, 0x3, 0xff, 0xfe, 0x1, 0xff, 0xff, + 0x0, 0xff, 0xeb, 0x91, 0xa2, 0x7f, 0xf2, 0xc, + 0x40, 0x39, 0xf5, 0x13, 0xff, 0x92, 0x62, 0x1, + 0xff, 0xc5, 0x3a, 0xeb, 0xbf, 0xfe, 0x44, 0x20, + 0x7, 0x1b, 0xdd, 0xff, 0xf2, 0x7d, 0x84, 0x3, + 0xff, 0xf4, 0x20, 0x1f, 0xfc, 0x53, 0x8d, 0xff, + 0xff, 0xe4, 0x5a, 0x80, 0x72, 0x57, 0xff, 0xff, + 0x27, 0x18, 0x40, 0x3f, 0xff, 0xe0, 0x1f, 0xff, + 0xf0, 0xe, 0x12, 0x44, 0xff, 0xe7, 0x63, 0x0, + 0x73, 0xea, 0xa2, 0x7f, 0xf3, 0x4c, 0x80, 0x3e, + 0x5b, 0xab, 0xbf, 0xfe, 0x6b, 0x98, 0x7, 0x1b, + 0xd5, 0xdf, 0xff, 0x37, 0xd4, 0x40, 0x3c, 0xe2, + 0x62, 0x3f, 0xfc, 0xa0, 0xf, 0xfe, 0x20, 0x8f, + 0xff, 0x29, 0xc4, 0x3, 0xe3, 0x8d, 0xee, 0xff, + 0xe3, 0xfd, 0xa0, 0x80, 0x7f, 0xf0, 0x45, 0x2f, + 0xfb, 0xbf, 0xf9, 0x16, 0xc2, 0x1, 0xff, 0xce, + 0x38, 0xda, 0x51, 0x0, 0xff, 0xe0, 0x8a, 0x56, + 0x49, 0x88, 0x7, 0xff, 0x78, 0x4d, 0xf3, 0x5c, + 0xc0, 0x2, 0xb5, 0x2a, 0x1, 0xc9, 0x36, 0xe6, + 0x0, 0x26, 0xcd, 0x84, 0x10, 0xf, 0xfe, 0xc0, + 0xa4, 0xe6, 0x20, 0xc4, 0x5, 0x67, 0x29, 0x48, + 0x3, 0xe3, 0x48, 0xdb, 0x62, 0x0, 0x1b, 0xde, + 0x52, 0x90, 0x7, 0xff, 0x44, 0x52, 0x33, 0xed, + 0x88, 0x0, 0x29, 0x39, 0x4c, 0x40, 0x1f, 0xfc, + 0x11, 0x49, 0xcb, 0x52, 0x0, 0x12, 0xd6, 0x62, + 0x54, 0x80, 0x3f, 0xf9, 0x2, 0x6d, 0x39, 0xd6, + 0xe6, 0x20, 0x1, 0x49, 0xcb, 0x62, 0x0, 0xff, + 0xe3, 0x8a, 0x56, 0x52, 0x88, 0x0, 0x4d, 0xab, + 0x75, 0x4c, 0x62, 0x1, 0xfe, 0x24, 0x7a, 0xde, + 0xc9, 0x63, 0x0, 0x84, 0xde, 0xfe, 0xd8, 0x80, + 0x3f, 0xf9, 0xa2, 0xb5, 0xf9, 0x8, 0x20, 0x11, + 0x2c, 0xe7, 0x6d, 0x42, 0x90, 0x7, 0x9, 0xda, + 0x90, 0x6, 0x14, 0x7b, 0xfc, 0x84, 0x10, 0xf, + 0xfe, 0x98, 0x9b, 0xdf, 0xdc, 0x21, 0x0, 0x62, + 0x54, 0xd1, 0x0, 0xe3, 0x7d, 0xb7, 0x67, 0xad, + 0xeb, 0x84, 0x10, 0xf, 0xfe, 0xd8, 0xa3, 0xde, + 0xea, 0xe1, 0x9e, 0xb6, 0xc, 0x3, 0xe1, 0x48, + 0x98, 0x52, 0x0, 0xff, 0xf2, 0x92, 0x3c, 0xc2, + 0x88, 0x6, + + /* U+673A "机" */ + 0x0, 0xff, 0xe0, 0x93, 0xe7, 0x76, 0x94, 0x0, + 0xff, 0xfa, 0x88, 0xf1, 0x88, 0x7, 0xfc, 0x2d, + 0x7f, 0xff, 0xfc, 0xae, 0x93, 0x0, 0xff, 0xff, + 0x80, 0x7f, 0xf9, 0x5, 0x6b, 0x77, 0xfa, 0x54, + 0x3, 0xff, 0x92, 0x23, 0xfe, 0x6f, 0x0, 0xe1, + 0x31, 0x1f, 0xe0, 0xf, 0xf1, 0xb1, 0x17, 0xf8, + 0xc0, 0x3f, 0xf9, 0x7, 0x1f, 0xdd, 0xfa, 0xdc, + 0x80, 0x32, 0x4f, 0x77, 0xea, 0x61, 0x0, 0xff, + 0xff, 0x80, 0x7f, 0xf6, 0x8e, 0x7b, 0xff, 0xeb, + 0x61, 0x0, 0xe5, 0xaf, 0xff, 0xd6, 0xc2, 0x1, + 0xff, 0xe6, 0x4e, 0x61, 0x0, 0xff, 0xfb, 0xaf, + 0x28, 0x7, 0xcb, 0x10, 0x41, 0x0, 0xff, 0xf6, + 0x2f, 0x28, 0x7, 0xf1, 0x3d, 0xd3, 0x10, 0x7, + 0xe7, 0x0, 0xc6, 0x22, 0x0, 0xff, 0xec, 0xb, + 0x72, 0x0, 0x7f, 0x8, 0xc0, 0x93, 0xf2, 0x82, + 0x1, 0x18, 0x80, 0x70, 0xf8, 0x7, 0xff, 0x60, + 0xa6, 0xd0, 0x0, 0x6c, 0xc2, 0x0, 0xc9, 0x16, + 0xa2, 0x4, 0xd7, 0xac, 0x40, 0x3e, 0x20, 0x19, + 0xc4, 0x80, 0x3f, 0xfa, 0xa2, 0xb2, 0xe4, 0x0, + 0x49, 0xae, 0x0, 0xf1, 0xad, 0xd9, 0x44, 0x2, + 0x10, 0x3, 0x11, 0x0, 0x21, 0x35, 0x0, 0xff, + 0xea, 0xa4, 0x5a, 0x0, 0x5, 0xbd, 0x44, 0x3, + 0xf8, 0x56, 0xed, 0x15, 0xce, 0x42, 0x4c, 0x1, + 0x97, 0x88, 0x3, 0xff, 0xa6, 0x93, 0x4c, 0x20, + 0x2, 0x9b, 0x40, 0xf, 0xfe, 0x8, 0xab, 0xa9, + 0x0, 0x13, 0x4c, 0x2, 0x13, 0x51, 0x0, 0xff, + 0xe4, 0x91, 0x40, 0x1f, 0x37, 0x10, 0x0, 0x56, + 0x5c, 0x80, 0x3f, 0xf9, 0xb, 0xea, 0x1, 0xb, + 0xd9, 0x80, 0x7f, 0xf2, 0x92, 0x77, 0xb1, 0xcc, + 0x2, 0x27, 0xf8, 0x7b, 0xb2, 0x0, 0x7f, 0xf2, + 0x57, 0xd4, 0x2, 0x26, 0xa3, 0x0, 0xff, 0xe7, + 0x9, 0xe2, 0x88, 0x6, 0x37, 0x85, 0x10, 0xf, + 0xfe, 0x41, 0x3c, 0xa8, 0x4, 0x55, 0x43, 0x0, + 0xff, 0xe4, 0xb8, 0x7, 0xf0, 0x80, 0x7f, 0xf3, + 0xc9, 0xa6, 0xc, 0x2, 0x4b, 0x62, 0x0, 0xff, + 0xe4, 0x9, 0x88, 0x8f, 0x98, 0x2, 0x13, 0x0, + 0xff, 0xe7, 0x24, 0xfc, 0xa0, 0x4, 0x93, 0x26, + 0x10, 0xf, 0xfe, 0x1b, 0x71, 0x80, 0x65, 0xae, + 0xc7, 0x20, 0x1, 0x11, 0xc0, 0x3f, 0xf9, 0xc9, + 0x72, 0xe6, 0x66, 0xba, 0x62, 0x0, 0xff, 0xe2, + 0x93, 0x43, 0x98, 0x80, 0x70, 0x91, 0xb4, 0x49, + 0x0, 0x7f, 0xf0, 0xc9, 0xf7, 0xff, 0x52, 0x80, + 0x44, 0x91, 0x98, 0x94, 0x10, 0xf, 0xfe, 0x40, + 0xa4, 0x67, 0x7f, 0xf7, 0x6e, 0x4a, 0x88, 0x4, + + /* U+6750 "材" */ + 0x0, 0xff, 0xff, 0x80, 0x7f, 0xf0, 0xa, 0x37, + 0xff, 0x5b, 0x0, 0x7f, 0xf4, 0x85, 0xb3, 0xff, + 0x74, 0x98, 0x7, 0xff, 0xfc, 0x3, 0xff, 0xfe, + 0x1, 0xff, 0xff, 0x0, 0xc2, 0x3f, 0xe6, 0x10, + 0xe, 0x71, 0x21, 0x1f, 0xc0, 0x1, 0x1f, 0xfe, + 0x39, 0x70, 0x7, 0x8d, 0x84, 0x7c, 0x1, 0xe5, + 0xbe, 0xef, 0xeb, 0x62, 0x0, 0xc7, 0x1b, 0xdd, + 0xec, 0x93, 0x5b, 0xee, 0xff, 0xe3, 0x63, 0x98, + 0x6, 0x15, 0xae, 0xee, 0x84, 0x0, 0xff, 0xff, + 0x80, 0x16, 0xbf, 0xff, 0x5a, 0x80, 0x78, 0xe3, + 0x7f, 0xfd, 0xb0, 0x6b, 0x5f, 0xff, 0xfc, 0x3d, + 0x94, 0x0, 0xf8, 0x5a, 0xff, 0xfa, 0x50, 0x3, + 0xff, 0x84, 0x9a, 0xa0, 0x1e, 0x38, 0xf8, 0x40, + 0xf, 0xfe, 0x5a, 0x44, 0x10, 0x3, 0xf9, 0xc0, + 0x3f, 0xf9, 0xb, 0xce, 0x1, 0xfc, 0x4f, 0x78, + 0xe6, 0x1, 0xff, 0xc6, 0x38, 0x95, 0x10, 0xf, + 0xfe, 0x88, 0xb7, 0x28, 0x80, 0x7c, 0x45, 0x0, + 0xe, 0x36, 0x94, 0x40, 0x3f, 0xf8, 0x27, 0x1c, + 0xe4, 0x0, 0x13, 0x31, 0x0, 0x7f, 0xf3, 0xe, + 0x6d, 0x0, 0x2, 0x20, 0xe, 0x6b, 0xf9, 0x40, + 0x0, 0xad, 0x64, 0x18, 0x7, 0xe1, 0x4a, 0xd7, + 0x20, 0x0, 0xb5, 0x75, 0x8, 0x7, 0xff, 0x28, + 0x56, 0x1c, 0x80, 0xa, 0xce, 0x40, 0x1e, 0x26, + 0xaa, 0x28, 0x80, 0xb6, 0x90, 0x7, 0x89, 0xaa, + 0x8a, 0x20, 0x2, 0x6a, 0x94, 0x30, 0xf, 0xfe, + 0x5a, 0x45, 0xa0, 0x0, 0x5b, 0xac, 0x40, 0x3f, + 0x85, 0x6e, 0xd3, 0x74, 0xa2, 0x1, 0xa, 0x4f, + 0xca, 0x8, 0x0, 0x9f, 0xa5, 0x0, 0x3f, 0xf9, + 0x89, 0x32, 0x61, 0x0, 0x14, 0xda, 0x8, 0x7, + 0xff, 0x0, 0x55, 0x94, 0x40, 0x2, 0x91, 0xb6, + 0xc4, 0x1, 0x13, 0xf4, 0x18, 0x7, 0xff, 0x30, + 0xe6, 0x98, 0x80, 0x2, 0xb0, 0xe4, 0x1, 0xff, + 0xc6, 0x26, 0xac, 0xb7, 0x30, 0x8, 0x56, 0xb2, + 0xc, 0x3, 0xff, 0x9c, 0x58, 0x82, 0x0, 0x48, + 0xb5, 0x0, 0xff, 0xe2, 0x8a, 0xde, 0xca, 0x90, + 0x4, 0x29, 0x39, 0x4a, 0x20, 0x1f, 0xfd, 0x1, + 0x58, 0x8a, 0xa8, 0xc2, 0x1, 0xff, 0xc6, 0x15, + 0x99, 0x20, 0x81, 0x35, 0x65, 0xb1, 0x0, 0x7f, + 0xf5, 0x49, 0x9d, 0x44, 0x3, 0xff, 0x94, 0x4d, + 0x59, 0xb9, 0x2a, 0x40, 0x1f, 0xff, 0x51, 0x22, + 0x8, 0x7, 0x84, 0xd0, 0xcf, 0xf3, 0xe1, 0x0, + 0x7f, 0xfb, 0x8a, 0xeb, 0x33, 0xf4, 0xa8, 0x80, + 0x65, 0xc2, 0x0, 0xff, 0xf3, 0x9d, 0x31, 0x0, + 0x7c, 0x24, 0x68, 0xd1, 0x94, 0xa2, 0x1, 0xff, + 0xcb, 0x28, 0xdf, 0xfd, 0x6c, 0x1, 0xff, 0xc8, + 0x28, 0xdf, 0xff, 0xbb, 0x72, 0xe5, 0xcc, 0x40, + 0x3f, 0xc0, + + /* U+677F "板" */ + 0x0, 0xff, 0xe0, 0x9c, 0x6f, 0x75, 0xb0, 0x60, + 0x1f, 0xff, 0x53, 0x11, 0x8c, 0x3, 0xfe, 0x27, + 0xce, 0xef, 0xfe, 0xac, 0xa0, 0x7, 0xff, 0x60, + 0x47, 0xff, 0xac, 0x62, 0x1, 0xff, 0xdd, 0x37, + 0xcd, 0xdf, 0xfe, 0x75, 0xa8, 0x7, 0x84, 0xd1, + 0x57, 0xe4, 0x30, 0xe, 0x34, 0x55, 0xf2, 0x18, + 0x80, 0x7e, 0xe2, 0x2f, 0xfe, 0x78, 0x80, 0x7c, + 0x55, 0x5f, 0xd0, 0x82, 0x1, 0xa, 0x45, 0x57, + 0xe2, 0x0, 0xff, 0xf0, 0xf, 0xa2, 0x7c, 0x64, + 0x1, 0xe1, 0x34, 0x4f, 0xbc, 0x40, 0x3f, 0xfc, + 0x4, 0xd5, 0x77, 0xe9, 0x60, 0xe, 0x16, 0xfb, + 0xbf, 0x53, 0x10, 0x78, 0x7, 0x1c, 0x66, 0xef, + 0xff, 0x2f, 0x29, 0x88, 0x3, 0xff, 0x86, 0xbe, + 0x80, 0x1c, 0x26, 0xc2, 0x1, 0xff, 0xc4, 0x12, + 0x2f, 0xfe, 0x61, 0xbf, 0x0, 0x7f, 0xf0, 0xd7, + 0xd4, 0x3, 0xe4, 0xba, 0x62, 0x0, 0xf0, 0x80, + 0x7f, 0xf0, 0x12, 0x33, 0x3f, 0xf8, 0x14, 0xa2, + 0x1, 0x9f, 0x8, 0x3, 0xff, 0x82, 0xbe, 0xa0, + 0x1f, 0xc2, 0x93, 0xd0, 0x60, 0x1e, 0x30, 0xc, + 0x46, 0x60, 0x9, 0x79, 0xcc, 0xff, 0xc3, 0xae, + 0x20, 0x12, 0x62, 0x80, 0x7f, 0xf0, 0x57, 0xd4, + 0x3, 0xf0, 0x99, 0x88, 0xd, 0xfa, 0x50, 0x0, + 0xe2, 0x20, 0xc, 0xf5, 0x44, 0x0, 0xb, 0xf2, + 0x0, 0x7e, 0x25, 0x51, 0x0, 0x49, 0xae, 0x20, + 0x1f, 0xf1, 0x3c, 0xa8, 0x0, 0xd5, 0x42, 0x1, + 0x92, 0x25, 0x84, 0x9, 0xaa, 0x50, 0x8c, 0x3, + 0xc4, 0xfc, 0x80, 0x1, 0x5f, 0x51, 0x0, 0xe2, + 0xaa, 0x10, 0x4, 0x7a, 0xe2, 0x1, 0xff, 0x25, + 0xc9, 0x80, 0x12, 0x78, 0x80, 0x3c, 0xe9, 0x16, + 0x80, 0x4f, 0xae, 0x2c, 0x1, 0x88, 0x8e, 0x2b, + 0xc8, 0x1, 0x24, 0x49, 0x80, 0x5, 0x65, 0xc8, + 0x2, 0x59, 0x61, 0x0, 0xff, 0x1c, 0x4b, 0x8, + 0x1, 0x79, 0x5c, 0x3, 0xf8, 0x56, 0x77, 0xe5, + 0x1f, 0x88, 0x3, 0x36, 0x98, 0x1, 0x61, 0xc8, + 0x0, 0x4f, 0xc, 0xb3, 0x8, 0x1, 0xb, 0xca, + 0x80, 0x7f, 0xcb, 0xe, 0x40, 0x2, 0x79, 0x50, + 0xf, 0xfe, 0x9, 0x14, 0x4, 0x68, 0x20, 0x11, + 0x1b, 0x0, 0x63, 0x98, 0x50, 0x9, 0x26, 0x9c, + 0x80, 0x24, 0x89, 0x30, 0xf, 0xfe, 0x2, 0xfa, + 0x88, 0x9a, 0x60, 0xc0, 0x3f, 0xf8, 0xa2, 0x98, + 0x40, 0x19, 0xf4, 0xc0, 0x38, 0x56, 0x20, 0x40, + 0x1f, 0x1c, 0xc9, 0x84, 0x3, 0xff, 0x84, 0x97, + 0xba, 0x84, 0x0, 0xff, 0xe3, 0xa6, 0x20, 0x6, + 0x5e, 0x50, 0xf, 0x9, 0xd5, 0x90, 0x7, 0xc5, + 0x88, 0x40, 0x1f, 0xfc, 0x41, 0x33, 0x8, 0x7, + 0xff, 0x18, 0xa2, 0xa, 0x1, 0x97, 0xd0, 0x3, + 0xa, 0x4e, 0x61, 0xcc, 0x2, 0x11, 0x0, 0x42, + 0xb3, 0x96, 0xe6, 0x1, 0xff, 0xd5, 0x16, 0x97, + 0x20, 0x8, 0x5b, 0x94, 0x4d, 0xa7, 0x3e, 0xd8, + 0x80, 0x23, 0x6b, 0xff, 0x64, 0x18, 0x80, 0x5, + 0x23, 0x3b, 0x25, 0x4c, 0x40, 0x3f, 0xf9, 0xc4, + 0xd4, 0x80, 0x10, 0xad, 0xc2, 0x22, 0x36, 0x58, + 0xc4, 0x0, 0x29, 0x19, 0x89, 0x41, 0x11, 0xbe, + 0x6c, 0x20, 0x80, 0x42, 0x6d, 0x5b, 0x6a, 0x20, + 0x1f, 0xfc, 0xc2, 0x7d, 0xc7, 0x45, 0x8b, 0x51, + 0x4, 0x9a, 0x63, 0x33, 0x56, 0xf5, 0xb9, 0x80, + 0x7e, 0x37, 0xbe, 0xd9, 0x63, 0x12, 0x6a, 0xa2, + 0x88, 0x7, 0xff, 0x8, 0xe3, 0xbf, 0xee, 0x83, + 0x0, 0x84, 0xe2, 0xe9, 0x84, 0x3, 0x92, 0x73, + 0x12, 0xa4, 0x1, 0xff, 0xc4, 0x26, 0x9c, 0xed, + 0x94, 0x0, 0xc0, + + /* U+679C "果" */ + 0x0, 0xff, 0x92, 0x7b, 0xff, 0xff, 0xc5, 0xb0, + 0x60, 0x1f, 0xfd, 0x1, 0x1f, 0xfe, 0x10, 0x7, + 0xc2, 0x3f, 0xfc, 0x20, 0xf, 0xfe, 0xc2, 0xdf, + 0x77, 0xff, 0x3, 0x58, 0x40, 0x32, 0x47, 0xf7, + 0x7f, 0xd8, 0xe4, 0x1, 0xff, 0xd6, 0x13, 0x10, + 0xf, 0xf9, 0xc0, 0x3c, 0xe2, 0x60, 0x1f, 0xf0, + 0x80, 0x7f, 0xf6, 0x12, 0x7b, 0xff, 0xfe, 0xb6, + 0x10, 0xc, 0x71, 0xbf, 0xff, 0xf6, 0x39, 0x0, + 0x7f, 0xf5, 0x84, 0x91, 0x3f, 0xf8, 0x6, 0x20, + 0x1c, 0x24, 0x89, 0xff, 0xc0, 0x32, 0x0, 0xff, + 0xeb, 0xa4, 0x5d, 0xff, 0xf0, 0x3d, 0xc4, 0x3, + 0x2d, 0xd5, 0xdf, 0xfd, 0xca, 0x40, 0x1f, 0xfd, + 0x61, 0x31, 0x0, 0xff, 0x9c, 0x3, 0xce, 0x26, + 0x1, 0xff, 0x8, 0x7, 0xff, 0x61, 0x27, 0xbf, + 0xff, 0xeb, 0x61, 0x0, 0xc7, 0x1b, 0xff, 0xff, + 0x63, 0x90, 0x7, 0xff, 0x3d, 0xc4, 0x8b, 0xff, + 0x8e, 0x22, 0x0, 0xf0, 0x91, 0x7f, 0xf1, 0xdb, + 0xc4, 0x3, 0xff, 0x90, 0x71, 0x9b, 0xbf, 0xfc, + 0x77, 0x10, 0xc, 0x91, 0x9b, 0xbf, 0xfc, 0x6b, + 0x72, 0x0, 0xff, 0xe0, 0x9b, 0xde, 0x67, 0xff, + 0x37, 0x9c, 0x40, 0x32, 0x5e, 0xe6, 0x7f, 0xf3, + 0x65, 0x40, 0x3e, 0x7e, 0x53, 0x3f, 0xfe, 0x69, + 0x8, 0x7, 0x88, 0xcf, 0xff, 0x9c, 0x46, 0x1, + 0xf2, 0xde, 0xdd, 0xff, 0xf1, 0xa9, 0xcc, 0x3, + 0xff, 0x8a, 0x29, 0x15, 0x77, 0xff, 0xc6, 0x87, + 0x0, 0xf8, 0x48, 0xd1, 0x3f, 0xf8, 0x6c, 0x5d, + 0x6e, 0x60, 0x11, 0x19, 0x0, 0x71, 0x22, 0x8, + 0x0, 0x29, 0x10, 0xd1, 0x64, 0x4f, 0xfe, 0x19, + 0x88, 0x7, 0xff, 0x20, 0x4d, 0xab, 0x75, 0x2a, + 0x20, 0x2, 0x6b, 0xc8, 0x41, 0x0, 0xcd, 0xb5, + 0x96, 0xc4, 0x0, 0x26, 0xad, 0xd5, 0x31, 0x88, + 0x7, 0xff, 0x3c, 0x4d, 0x62, 0xff, 0x25, 0x48, + 0x0, 0x26, 0xf7, 0x92, 0x82, 0xe0, 0x1f, 0xc2, + 0x93, 0x98, 0x84, 0x10, 0x1, 0x2c, 0xe7, 0xe4, + 0xba, 0x8, 0x7, 0xff, 0x10, 0x4d, 0x62, 0xb7, + 0xb2, 0x9d, 0x4, 0x0, 0x26, 0xf7, 0xf9, 0x8, + 0x20, 0x1f, 0xfc, 0x41, 0x37, 0xbf, 0xc8, 0x41, + 0x0, 0x9, 0xb4, 0x5f, 0x73, 0x25, 0xd4, 0xc4, + 0x3, 0xc7, 0x3b, 0xd9, 0x4e, 0xa4, 0x1, 0x9, + 0xb4, 0xe7, 0xe4, 0x20, 0x80, 0x7f, 0xf3, 0x4, + 0xde, 0xfb, 0x69, 0xcc, 0x40, 0x21, 0x36, 0x8a, + 0xcd, 0x62, 0x0, 0xc7, 0x32, 0x62, 0x1, 0x25, + 0x7a, 0xcf, 0xc9, 0x63, 0x10, 0xf, 0xfe, 0xa9, + 0x2c, 0x67, 0x6d, 0xc3, 0x18, 0x89, 0x6b, 0x58, + 0x80, 0x3c, 0x93, 0x9d, 0xcd, 0xa8, 0x53, 0x10, + 0xf, 0xfe, 0xf9, 0x23, 0xce, 0x77, 0x29, 0x44, + 0x2, + + /* U+6807 "标" */ + 0x0, 0xff, 0xff, 0x80, 0x7f, 0x92, 0x7f, 0xf7, + 0x49, 0x80, 0x7f, 0xff, 0xc0, 0x3f, 0x9, 0x19, + 0xff, 0xf4, 0x48, 0x40, 0x3f, 0xfb, 0x6f, 0x39, + 0x9f, 0xfd, 0x18, 0x40, 0xf, 0xfe, 0xd9, 0x91, + 0x7f, 0xf4, 0xc4, 0x3, 0xfc, 0x24, 0x5f, 0xc6, + 0x1, 0xc6, 0xc4, 0x5e, 0x11, 0x0, 0x4b, 0x3b, + 0xbf, 0xfd, 0x18, 0x40, 0xf, 0xc2, 0xdb, 0xbf, + 0xd2, 0xa0, 0x18, 0x56, 0xb7, 0x7d, 0x92, 0x60, + 0x1f, 0xfe, 0x2, 0x44, 0xfc, 0x40, 0x1f, 0x9, + 0xa2, 0x7d, 0xc2, 0x1, 0xff, 0xdf, 0x14, 0x8b, + 0xbf, 0x73, 0x0, 0x7c, 0x57, 0x17, 0x7d, 0x2e, + 0xb9, 0xff, 0xff, 0xd7, 0xe9, 0x40, 0xf, 0xfe, + 0x2, 0xf2, 0x0, 0x7c, 0x71, 0xb4, 0x82, 0x1, + 0xff, 0xdd, 0x10, 0xf, 0xfe, 0xa, 0xf2, 0x0, + 0x7f, 0x85, 0x6e, 0x98, 0x80, 0x5b, 0x77, 0xff, + 0x83, 0x4a, 0x20, 0x19, 0x23, 0x77, 0xff, 0x87, + 0x8, 0x1, 0xfc, 0x2b, 0xc8, 0x1, 0xf8, 0x55, + 0x94, 0x41, 0x27, 0xa0, 0xc4, 0x44, 0x5f, 0xfc, + 0x6, 0x30, 0xf, 0x11, 0x7f, 0xf1, 0x4, 0x3, + 0xf8, 0x9a, 0x50, 0x0, 0x68, 0x80, 0xe, 0x3d, + 0xb8, 0x40, 0x1, 0xad, 0x98, 0x4, 0x24, 0x41, + 0x0, 0xff, 0xe4, 0x9, 0x19, 0x8, 0x7, 0xff, + 0x9, 0x2e, 0x4c, 0x0, 0x95, 0xc4, 0x1, 0xe7, + 0x16, 0x98, 0x56, 0x98, 0x30, 0x2, 0xde, 0xeb, + 0xbf, 0x18, 0x80, 0x3f, 0xf8, 0x27, 0x1b, 0xdb, + 0x9f, 0x24, 0x1, 0xff, 0x13, 0xc3, 0x8, 0x1, + 0x79, 0x84, 0x3, 0xfc, 0x4f, 0x52, 0x80, 0x12, + 0x7a, 0x80, 0x44, 0x88, 0x20, 0xf, 0xfe, 0x9, + 0xda, 0x8, 0x0, 0x9a, 0xcc, 0x3, 0xf0, 0xb7, + 0x41, 0x80, 0x5, 0xb9, 0x40, 0x3f, 0xf8, 0xe9, + 0xca, 0x1, 0x12, 0xd1, 0x0, 0x7f, 0xf0, 0xce, + 0x98, 0x80, 0x2, 0xf2, 0xa0, 0x1f, 0xa, 0x20, + 0x80, 0x7, 0x10, 0x40, 0xf, 0xfe, 0x3a, 0x72, + 0x0, 0x44, 0xb6, 0x40, 0x1f, 0xfc, 0x53, 0xa5, + 0x20, 0x0, 0xaf, 0x28, 0x80, 0x78, 0xa6, 0x21, + 0x3c, 0xc2, 0x1, 0xff, 0xc6, 0x16, 0x85, 0x10, + 0x1, 0x2d, 0x18, 0x7, 0xff, 0x1c, 0xaa, 0x84, + 0x1, 0x27, 0x20, 0x7, 0xc2, 0xae, 0xc4, 0x1, + 0xff, 0xc7, 0x48, 0x81, 0x80, 0x49, 0x72, 0x40, + 0x1f, 0xfc, 0x92, 0x45, 0x20, 0x9, 0x3d, 0x40, + 0x3f, 0xfa, 0x2, 0xd0, 0xc2, 0x0, 0x27, 0x86, + 0x10, 0xf, 0xfe, 0x59, 0xe2, 0x8, 0x4, 0x98, + 0x80, 0x1f, 0xfc, 0xf1, 0x6d, 0xc9, 0x67, 0x99, + 0x18, 0x11, 0xa2, 0xc, 0xc8, 0x91, 0x8, 0x6, + 0x10, 0xf, 0xe4, 0xc7, 0x35, 0x78, 0xa5, 0x0, + 0xff, 0xe8, 0x89, 0xb4, 0xc2, 0x8, 0x1, 0xaa, + 0x97, 0x98, 0xbb, 0x42, 0x0, 0x62, 0x23, 0x0, + 0x7f, 0x2c, 0xe5, 0x43, 0x18, 0x80, 0x7f, 0xf6, + 0x93, 0x50, 0x3, 0x84, 0x46, 0x8d, 0x3d, 0x6, + 0x1, 0xff, 0xd4, 0x49, 0xff, 0xdd, 0x26, 0x1, + 0xff, 0xc3, 0x4a, 0xff, 0xee, 0xe6, 0x5c, 0xb1, + 0x80, 0x7f, 0xf2, 0x40, + + /* U+6846 "框" */ + 0x0, 0xff, 0x85, 0xaf, 0xba, 0xd8, 0x30, 0xf, + 0xff, 0x88, 0xb8, 0x8c, 0x62, 0xe0, 0x1e, 0x27, + 0xcf, 0xff, 0xfe, 0xc7, 0x49, 0x80, 0x7f, 0xff, + 0xc0, 0x3f, 0xfa, 0xb, 0x5f, 0xff, 0xfd, 0x2e, + 0x93, 0x0, 0xe1, 0x1f, 0x8b, 0xc4, 0x2, 0x13, + 0x11, 0xf8, 0x3, 0xff, 0xc2, 0x73, 0xfd, 0xde, + 0xc7, 0x20, 0xc, 0xb5, 0xdd, 0xd5, 0x4f, 0x0, + 0xfc, 0x2d, 0x9f, 0xff, 0xfc, 0xdb, 0x50, 0xf, + 0xfe, 0xeb, 0x8, 0xff, 0x0, 0x78, 0x47, 0xfe, + 0x0, 0xf1, 0xcf, 0x7f, 0xf6, 0xc1, 0x0, 0x61, + 0x6b, 0xff, 0xeb, 0xaf, 0x0, 0xfc, 0x2d, 0x5d, + 0xdf, 0xad, 0x40, 0x31, 0xc7, 0xf7, 0x7e, 0xa5, + 0x0, 0xff, 0xe0, 0x12, 0xd9, 0x0, 0x61, 0x53, + 0x20, 0xf, 0xff, 0x60, 0xa5, 0x98, 0x7, 0x8e, + 0x39, 0x88, 0x3, 0xff, 0xa6, 0x26, 0x1, 0xff, + 0xc8, 0x17, 0xd3, 0x0, 0xfe, 0x39, 0x93, 0x8, + 0x7, 0xff, 0x0, 0x5a, 0xff, 0xfe, 0xa5, 0x0, + 0xc7, 0x1b, 0xff, 0xf6, 0x30, 0x80, 0x7f, 0xa, + 0x6a, 0x0, 0x7e, 0x34, 0x30, 0x48, 0xb5, 0x10, + 0xf, 0xf8, 0xc8, 0xcf, 0xe2, 0x0, 0xf0, 0x91, + 0x9f, 0xca, 0x60, 0x1f, 0xc2, 0xd2, 0x80, 0x2, + 0x28, 0x2, 0x15, 0xf8, 0x61, 0x12, 0xf5, 0xf0, + 0x7, 0xf0, 0xac, 0xe6, 0x7d, 0xa, 0x1, 0x8e, + 0x33, 0x3f, 0x4a, 0x88, 0x7, 0xc7, 0x32, 0x30, + 0x2, 0xd2, 0x88, 0x7, 0x92, 0xe5, 0xa2, 0x15, + 0xc0, 0x1f, 0xfd, 0xf1, 0x68, 0x71, 0x1, 0x6e, + 0x5f, 0x0, 0xfc, 0x4f, 0x2e, 0x60, 0x1f, 0xfd, + 0x1, 0x30, 0xf, 0xfe, 0x12, 0x44, 0x10, 0x0, + 0x4d, 0x68, 0x60, 0x1f, 0xfc, 0xb1, 0x7c, 0xff, + 0xfe, 0xa5, 0x0, 0xc7, 0x1b, 0xff, 0xfd, 0xd2, + 0x60, 0x4, 0xd7, 0x11, 0x2c, 0xc1, 0x0, 0x7f, + 0xf3, 0x85, 0xc4, 0x7f, 0xf9, 0xe6, 0x20, 0x19, + 0x23, 0x75, 0x68, 0x1, 0xff, 0xcf, 0x16, 0xbe, + 0xef, 0xfe, 0x7e, 0xc1, 0x80, 0x61, 0x33, 0x8, + 0x7, 0xff, 0x39, 0xb5, 0x13, 0xff, 0xa8, 0x40, + 0x1f, 0xfd, 0x63, 0x7b, 0xbf, 0xfe, 0x9c, 0xd1, + 0x80, 0x7f, 0xf5, 0x44, 0x8c, 0xff, 0xfa, 0x6f, + 0xc2, 0x1, 0xff, 0xd5, 0x48, 0xcc, 0xff, 0xe9, + 0xd3, 0x10, 0x7, 0xfc, 0x2f, 0x9f, 0xf7, 0x4a, + 0x0, 0x78, 0x9f, 0x7b, 0xb5, 0xa8, 0x7, 0xff, + 0x58, + + /* U+6A21 "模" */ + 0x0, 0xff, 0x92, 0x7b, 0xfe, 0xd7, 0x20, 0xf, + 0xfe, 0x1a, 0xdf, 0xfe, 0xb5, 0x0, 0xf8, 0x5b, + 0x3f, 0xf5, 0x28, 0x7, 0xff, 0x6c, 0x8d, 0x13, + 0xcb, 0xae, 0x1, 0x9f, 0x51, 0x3f, 0x78, 0x80, + 0x66, 0xd4, 0x4f, 0x8c, 0x40, 0x3f, 0xfa, 0x24, + 0xbd, 0x77, 0xea, 0x73, 0x0, 0xc6, 0xf7, 0x7f, + 0x53, 0x10, 0x6, 0x37, 0xbb, 0xfa, 0x50, 0x3, + 0xff, 0xa2, 0x69, 0x71, 0x1e, 0x75, 0x20, 0xc, + 0x4a, 0xf1, 0x1e, 0x74, 0x10, 0xc, 0x4a, 0xf1, + 0x1e, 0xf7, 0x0, 0xf9, 0x22, 0xef, 0xd0, 0xe2, + 0x1, 0x15, 0x75, 0xde, 0x94, 0x26, 0x77, 0xf4, + 0x7b, 0x0, 0x66, 0xf8, 0x77, 0xf4, 0xe9, 0x0, + 0x67, 0xf8, 0x77, 0xf2, 0x90, 0x7, 0x84, 0x8d, + 0x13, 0xc6, 0x20, 0x1c, 0x46, 0x89, 0xc4, 0x60, + 0x6d, 0x33, 0xd8, 0x4c, 0xd8, 0xb2, 0x67, 0xe8, + 0xf5, 0x66, 0xc7, 0x93, 0x34, 0x29, 0x0, 0x7f, + 0xa, 0x45, 0xdf, 0x53, 0x98, 0x6, 0x15, 0x9b, + 0xbd, 0xca, 0x40, 0xd8, 0xcd, 0xff, 0xd5, 0xd1, + 0x0, 0xff, 0x11, 0xa2, 0x73, 0x1, 0x0, 0x61, + 0x3, 0x54, 0x48, 0xc8, 0x3, 0xf2, 0x4f, 0xff, + 0xff, 0x22, 0xd8, 0x40, 0x3f, 0xf9, 0x45, 0x6a, + 0x20, 0x1c, 0xb7, 0x8, 0x1, 0xff, 0xc0, 0x6c, + 0x87, 0x7f, 0xfe, 0x3e, 0xa8, 0x80, 0x7f, 0xf2, + 0x49, 0x50, 0x80, 0x3e, 0x16, 0x98, 0x30, 0xf, + 0xf1, 0x2b, 0xc4, 0x7f, 0xf1, 0xd8, 0xc0, 0x3f, + 0xf9, 0x22, 0x96, 0x60, 0x1e, 0x12, 0x20, 0x13, + 0xfb, 0x90, 0x7, 0xe4, 0x9f, 0xff, 0xfe, 0x45, + 0xb0, 0x80, 0x7f, 0xf1, 0xc5, 0xf4, 0xc0, 0x3e, + 0x35, 0xb6, 0x10, 0x38, 0x82, 0x88, 0x7, 0x9b, + 0x66, 0x23, 0xff, 0x8f, 0xca, 0x20, 0x1f, 0xfc, + 0x62, 0x9b, 0x40, 0x12, 0x20, 0x7, 0x7a, 0x5b, + 0x10, 0xb7, 0x20, 0x80, 0x78, 0x91, 0x9d, 0xff, + 0xf8, 0xea, 0x60, 0x1f, 0xfc, 0x64, 0xb6, 0x20, + 0x17, 0x54, 0x10, 0xf, 0x14, 0xe7, 0xca, 0x8, + 0x2d, 0x7f, 0xff, 0xdb, 0x6, 0x1, 0x92, 0x7b, + 0xff, 0xfe, 0xe8, 0x30, 0xf, 0xe3, 0x89, 0x61, + 0x1, 0x6a, 0xc0, 0xf, 0xe1, 0x18, 0x3, 0xff, + 0x8a, 0xdc, 0x40, 0x10, 0x91, 0x4, 0x3, 0xff, + 0x94, 0x2c, 0x64, 0x0, 0x39, 0xa3, 0x0, 0xff, + 0xe0, 0x14, 0x6f, 0xff, 0xff, 0xe, 0xd8, 0x40, + 0x21, 0x6b, 0xff, 0xff, 0xe2, 0x5b, 0x0, 0x70, + 0xac, 0x39, 0xac, 0xb9, 0x0, 0x7f, 0xf0, 0xbd, + 0x88, 0xbf, 0xf8, 0x22, 0x1, 0xff, 0xc1, 0x12, + 0x2f, 0xfe, 0x9, 0x80, 0x7c, 0x71, 0xb6, 0xa0, + 0x1f, 0xfc, 0x32, 0x7b, 0xdd, 0xff, 0xba, 0x88, + 0x3, 0xa, 0xbb, 0x10, 0x6, 0x25, 0xed, 0xdf, + 0xf4, 0xa8, 0x7, 0xf0, 0x88, 0x3, 0xff, 0x9c, + 0x29, 0x19, 0xb0, 0x60, 0x12, 0x44, 0x53, 0xce, + 0x40, 0x3, 0x7c, 0xc4, 0xa9, 0x0, 0x7f, 0xf6, + 0x44, 0x8d, 0x5e, 0x73, 0xb9, 0x6e, 0x62, 0x0, + 0x37, 0xcb, 0x62, 0x0, 0x1c, 0x65, 0x29, 0x0, + 0xd, 0xab, 0x7b, 0x6e, 0x5d, 0x4c, 0x40, 0x3f, + 0xf9, 0xc7, 0x1b, 0xdb, 0x95, 0xc, 0x62, 0x0, + 0x25, 0x8b, 0xdc, 0x83, 0x0, 0xf8, 0x56, 0xb2, + 0xe1, 0x8, 0x0, 0x24, 0x8d, 0x15, 0xb6, 0x82, + 0x1, 0xff, 0xcc, 0x38, 0xe6, 0x21, 0x35, 0x79, + 0xac, 0xed, 0xa7, 0x42, 0x0, 0xff, 0xe0, 0x8a, + 0x3d, 0xee, 0xae, 0x5d, 0x48, 0xda, 0xa8, 0x82, + 0x1, 0xff, 0xc1, 0x49, 0xef, 0xfb, 0x5c, 0x80, + 0x31, 0xce, 0xf6, 0x54, 0x32, 0x98, 0x80, 0x7f, + 0xf2, 0xc9, 0x1a, 0x2b, 0x72, 0x50, 0x3, 0x80, + + /* U+6A2A "横" */ + 0x0, 0xff, 0x89, 0xf3, 0xba, 0xd8, 0x30, 0xf, + 0xfe, 0x1a, 0x4e, 0xf7, 0x56, 0xc4, 0x1, 0xf1, + 0xc6, 0x77, 0x59, 0x6, 0x1, 0xff, 0xcc, 0xf1, + 0x1c, 0x62, 0xe0, 0x1f, 0xfc, 0x31, 0x32, 0x11, + 0x98, 0x40, 0x3f, 0x38, 0x90, 0x8c, 0x42, 0xe0, + 0x1f, 0xfd, 0xb5, 0xaf, 0xff, 0x52, 0x80, 0x62, + 0x8d, 0xff, 0xfa, 0xd8, 0x40, 0x21, 0x6b, 0xff, + 0xf6, 0x30, 0x80, 0x7f, 0xf4, 0x84, 0x8c, 0xfc, + 0x42, 0x1, 0xc2, 0x67, 0xf8, 0x84, 0x3, 0x84, + 0x8c, 0xfc, 0xa6, 0x1, 0xff, 0xc3, 0x10, 0xe, + 0x10, 0xf, 0xe4, 0x8c, 0xcf, 0x4a, 0x0, 0x63, + 0x9e, 0xcc, 0xfb, 0x9c, 0x40, 0x21, 0x6e, 0xcc, + 0xf4, 0xa8, 0x80, 0x72, 0x57, 0xff, 0xd8, 0xe4, + 0x1, 0x9a, 0xff, 0xfd, 0x4a, 0x1, 0xf0, 0x80, + 0x70, 0x80, 0x7f, 0x38, 0x7, 0x85, 0xc0, 0x3f, + 0xfb, 0x4b, 0x5f, 0xff, 0x52, 0x80, 0x62, 0x8d, + 0xff, 0xfa, 0xd8, 0x40, 0x21, 0x6b, 0xff, 0xfb, + 0xa4, 0xc0, 0x32, 0x57, 0x77, 0xb1, 0xc8, 0x3, + 0x96, 0xbb, 0xbb, 0x21, 0x8, 0xbf, 0xf8, 0x62, + 0x1, 0xe1, 0x22, 0xff, 0xe2, 0xf0, 0x7, 0xc2, + 0x3c, 0x68, 0x82, 0x0, 0xf8, 0x47, 0x8d, 0xef, + 0x77, 0xff, 0x87, 0x6a, 0x1, 0x8e, 0x33, 0x77, + 0xff, 0x87, 0x8e, 0x60, 0x1f, 0xe1, 0x5b, 0x30, + 0xf, 0x2d, 0xd2, 0x88, 0x7, 0x1b, 0xd5, 0x7f, + 0xf0, 0x65, 0x0, 0x31, 0x55, 0xd5, 0x7f, 0xf0, + 0x5c, 0xc0, 0x3f, 0xf8, 0x2, 0xf6, 0x60, 0x1f, + 0x85, 0x6e, 0x98, 0x40, 0x26, 0xc5, 0x5f, 0xfe, + 0x9, 0x88, 0x6, 0x13, 0x55, 0xff, 0xe1, 0x6b, + 0x0, 0x7f, 0xc2, 0xfa, 0x60, 0x1f, 0x88, 0xa1, + 0x49, 0xd7, 0x20, 0xf, 0xb, 0x5f, 0xff, 0xd4, + 0xa0, 0x18, 0xe7, 0xbf, 0xfe, 0xa4, 0x0, 0xff, + 0xe2, 0x14, 0xda, 0x0, 0x91, 0x4, 0x2, 0x14, + 0x89, 0x51, 0x3, 0x88, 0x29, 0x80, 0x61, 0x5d, + 0x66, 0xf3, 0xfb, 0x80, 0x61, 0xc6, 0x6f, 0x9f, + 0xd8, 0x3, 0xff, 0x86, 0x90, 0xc4, 0x2, 0xf6, + 0xa6, 0x1, 0xc2, 0x91, 0x28, 0x71, 0x5, 0x30, + 0xe, 0x36, 0x99, 0xf4, 0x29, 0x0, 0x62, 0x58, + 0x99, 0xf4, 0x29, 0x0, 0x7f, 0xf0, 0x4e, 0x25, + 0x44, 0x9, 0xa9, 0x0, 0x3f, 0x89, 0xef, 0x1c, + 0x80, 0x3c, 0x2d, 0x7f, 0xff, 0x52, 0x80, 0x63, + 0x8d, 0xff, 0xf7, 0x4a, 0x0, 0x7f, 0xc2, 0xd0, + 0xe4, 0x0, 0x3b, 0x93, 0x0, 0xff, 0xf8, 0x8b, + 0xea, 0x1, 0x3f, 0xb0, 0x80, 0x7f, 0xf2, 0xc5, + 0xaf, 0xff, 0xea, 0x50, 0xc, 0x71, 0xbf, 0xfe, + 0xe9, 0x40, 0xf, 0xfe, 0x0, 0xb4, 0xe7, 0x49, + 0x80, 0x7f, 0xf2, 0x1b, 0x9d, 0xfe, 0x66, 0x9d, + 0xff, 0xf8, 0x4c, 0xd3, 0xbf, 0xef, 0x70, 0xf, + 0xc4, 0x66, 0x10, 0xf, 0xfe, 0x49, 0xac, 0x45, + 0x37, 0xe6, 0xec, 0x87, 0xf9, 0x31, 0x1f, 0x56, + 0x8a, 0x33, 0x14, 0xbf, 0x26, 0x22, 0x52, 0x0, + 0xff, 0xea, 0x8a, 0x34, 0xe7, 0xe4, 0x20, 0x81, + 0x3f, 0x9, 0x80, 0x7c, 0x26, 0x1, 0x89, 0x62, + 0xfb, 0x69, 0xd0, 0x40, 0x3f, 0xfa, 0x2, 0xb3, + 0x9d, 0xcb, 0x96, 0x31, 0x1, 0x47, 0xbe, 0xc9, + 0x52, 0x0, 0xf8, 0xda, 0x77, 0xb2, 0x14, 0x80, + 0x4, 0xb1, 0x7f, 0x90, 0x60, 0x1f, 0xfc, 0xd1, + 0x4c, 0x60, 0x0, 0x9b, 0x4d, 0xf7, 0x2e, 0x10, + 0x40, 0x3f, 0xf8, 0x62, 0x6f, 0x5b, 0xaa, 0x62, + 0x12, 0x79, 0xa3, 0x0, 0xff, 0xe0, 0x94, 0x6f, + 0xfd, 0xd2, 0x80, 0x18, 0x56, 0xbb, 0xfb, 0x25, + 0x90, 0x40, 0x3f, 0xf9, 0xa4, 0xb3, 0xbd, 0xb2, + 0xa4, 0x1, 0x0, + + /* U+6B62 "止" */ + 0x0, 0xff, 0xeb, 0x24, 0x6e, 0xf4, 0xa8, 0x7, + 0xff, 0xc0, 0x48, 0xbe, 0x30, 0xf, 0xff, 0xf8, + 0x7, 0xff, 0xfc, 0x3, 0xff, 0xfe, 0x1, 0xff, + 0xc8, 0x59, 0xcc, 0xe7, 0x30, 0xf, 0xff, 0x81, + 0x91, 0x9e, 0x2e, 0x70, 0xf, 0xff, 0xf8, 0x7, + 0xff, 0x9, 0xf9, 0x51, 0x3f, 0xf9, 0x4, 0x20, + 0x1f, 0xfe, 0x3, 0x7a, 0xbb, 0xff, 0xe3, 0xd5, + 0xa8, 0x7, 0xff, 0xfc, 0x3, 0xff, 0xb4, 0x93, + 0xff, 0xff, 0xc8, 0xe9, 0x40, 0xf, 0xff, 0xf8, + 0x7, 0xff, 0xfc, 0x3, 0xff, 0xfe, 0x1, 0xff, + 0xff, 0x0, 0xff, 0xff, 0x80, 0x7f, 0xff, 0xc0, + 0x3f, 0xfb, 0x42, 0x48, 0x9f, 0x2f, 0xb8, 0x6, + 0x12, 0x34, 0x4f, 0xfe, 0xe, 0xb0, 0x7, 0x37, + 0xaa, 0x27, 0xff, 0x2c, 0x84, 0x0, 0x57, 0x57, + 0x7e, 0xa6, 0x30, 0xe, 0x48, 0xbb, 0xff, 0xe0, + 0xb9, 0x80, 0x71, 0x35, 0x5d, 0xff, 0xf3, 0x14, + 0x2, 0x13, 0x11, 0xff, 0xf9, 0x0, 0x0, + + /* U+6B63 "正" */ + 0x0, 0x84, 0x91, 0x3f, 0xfd, 0xa6, 0x20, 0x1f, + 0x92, 0x6e, 0xff, 0xfd, 0xbe, 0xe2, 0x1, 0xf8, + 0x47, 0xff, 0x9e, 0x1, 0xfc, 0x23, 0xff, 0xca, + 0x70, 0xf, 0xe5, 0xae, 0xef, 0xfe, 0x6f, 0xc1, + 0x80, 0x62, 0x7c, 0xee, 0xff, 0xe5, 0x5b, 0x8, + 0x7, 0xff, 0xfc, 0x3, 0xff, 0xfe, 0x0, 0x11, + 0x11, 0x70, 0x80, 0x7f, 0xfc, 0x9, 0xb7, 0x7b, + 0x98, 0x80, 0x3f, 0xff, 0xe0, 0x1f, 0xfc, 0x3, + 0x25, 0x33, 0xff, 0xe3, 0x90, 0x80, 0x7f, 0xf8, + 0x45, 0x67, 0x33, 0xff, 0x8f, 0xa, 0x1, 0xff, + 0xf6, 0x13, 0x0, 0xff, 0xf1, 0x13, 0xe7, 0xff, + 0xff, 0x1b, 0xa5, 0x0, 0x3f, 0xff, 0xe0, 0x1f, + 0xff, 0xf0, 0xf, 0xff, 0xf8, 0x7, 0xff, 0xfc, + 0x3, 0xff, 0xd4, 0x24, 0x67, 0xe7, 0xe1, 0x0, + 0xc3, 0xce, 0x67, 0xff, 0x2f, 0x8, 0x6, 0x32, + 0x63, 0x3f, 0xfe, 0x61, 0x8, 0x4, 0x73, 0x99, + 0xf5, 0x31, 0x0, 0x62, 0x6a, 0xcc, 0xff, 0xad, + 0x88, 0x3, 0xa, 0xd6, 0x67, 0xff, 0x36, 0xc, + 0x3, 0x18, 0x7, 0xff, 0xd8, + + /* U+6B65 "步" */ + 0x0, 0xff, 0xea, 0x12, 0x2a, 0xe4, 0x20, 0xf, + 0xff, 0x81, 0x54, 0xd5, 0x68, 0x41, 0x0, 0xff, + 0xee, 0x92, 0x33, 0x65, 0x31, 0x0, 0xff, 0xf8, + 0x3f, 0xcc, 0xeb, 0xa2, 0x0, 0xff, 0xe2, 0xf, + 0xba, 0xaf, 0xff, 0x1c, 0xc4, 0x3, 0xff, 0xc2, + 0x4d, 0x35, 0x5f, 0xfc, 0x85, 0x0, 0xff, 0xf1, + 0x9, 0x9f, 0xff, 0x23, 0x9c, 0x3, 0xff, 0xc2, + 0x71, 0xb9, 0x9f, 0xfc, 0x77, 0x30, 0xf, 0xf0, + 0x91, 0x7e, 0x32, 0x0, 0xf1, 0xb1, 0x17, 0xf3, + 0x89, 0x80, 0x61, 0xe2, 0x2f, 0xfe, 0x70, 0x88, + 0x2, 0x39, 0xfd, 0xdf, 0xb2, 0x10, 0x3, 0xa, + 0xd6, 0xef, 0xf5, 0x30, 0x80, 0x62, 0x7c, 0xdd, + 0xff, 0xe6, 0xd3, 0x88, 0x7, 0xff, 0xec, 0xe3, + 0x7f, 0xff, 0xee, 0xca, 0xbd, 0xef, 0xff, 0xed, + 0x72, 0x0, 0xc7, 0x3d, 0xff, 0xff, 0xcd, 0xb6, + 0x10, 0xf, 0xfe, 0x8, 0xa4, 0xe6, 0x2a, 0xf7, + 0xb6, 0x50, 0x3, 0xff, 0x9e, 0x4d, 0x35, 0xe, + 0xa6, 0x20, 0x1f, 0xfc, 0x72, 0x7d, 0xb6, 0x20, + 0x8, 0x9e, 0x61, 0x0, 0x3f, 0xf9, 0xc7, 0x70, + 0xca, 0xf1, 0x50, 0x82, 0x1, 0xff, 0xc2, 0x25, + 0x9c, 0xc4, 0x18, 0x4, 0x2b, 0x5f, 0x8, 0x20, + 0x1f, 0xfc, 0xd1, 0x68, 0x61, 0x0, 0x85, 0xbd, + 0x44, 0x3, 0xfc, 0x4d, 0x3b, 0xaa, 0x63, 0x10, + 0x0, 0xa4, 0xe5, 0x29, 0x0, 0x7f, 0x84, 0x3, + 0xff, 0x86, 0x2b, 0x50, 0x80, 0x18, 0xe6, 0xd0, + 0x3, 0xfe, 0x11, 0x88, 0xc0, 0x21, 0x37, 0xbf, + 0xb6, 0x20, 0xc, 0x4f, 0x79, 0x9e, 0xe6, 0x20, + 0xc, 0xc6, 0x20, 0x18, 0xdf, 0x69, 0x4, 0x2, + 0x38, 0xe7, 0x20, 0xf, 0xfe, 0x0, 0x9b, 0xdf, + 0xdc, 0xd6, 0x62, 0x10, 0x40, 0x3e, 0x24, 0x22, + 0x19, 0xf1, 0x8, 0x0, 0x51, 0xe5, 0x0, 0x4d, + 0xef, 0x60, 0xc0, 0x21, 0x48, 0xe7, 0x20, 0xf, + 0xfe, 0x30, 0xa3, 0x29, 0x0, 0x7f, 0xf0, 0xe, + 0x33, 0x2d, 0xdd, 0xdf, 0xee, 0xb9, 0x6, 0xbf, + 0xc8, 0x41, 0x0, 0x8d, 0xf6, 0xdc, 0x80, 0x3f, + 0xfb, 0x42, 0x46, 0x62, 0x28, 0xc9, 0xa2, 0xf7, + 0xb2, 0x10, 0x40, 0x22, 0x59, 0xcc, 0x41, 0x80, + 0x7f, 0xf6, 0x84, 0x91, 0x5a, 0x2b, 0x37, 0xfb, + 0x25, 0xd0, 0x80, 0x21, 0x36, 0x9c, 0xc5, 0x31, + 0x80, 0x7f, 0xf4, 0x9, 0x5e, 0x26, 0x55, 0x79, + 0xbd, 0xfe, 0xed, 0xba, 0x97, 0x53, 0x20, 0xc, + 0x26, 0xb1, 0x5b, 0xd9, 0x2c, 0x62, 0x1, 0xff, + 0xd3, 0x21, 0xd6, 0x69, 0x50, 0xc8, 0x40, 0x38, + 0x48, 0xd5, 0x9e, 0x6f, 0x7f, 0xb2, 0x9d, 0x48, + 0x3, 0xff, 0xb4, 0x97, 0x66, 0x56, 0x78, 0x84, + 0xd5, 0xe7, 0x7f, 0x6e, 0x54, 0xc3, 0x21, 0x0, + 0x7f, 0xf6, 0x0, + + /* U+6BB5 "段" */ + 0x0, 0xff, 0xe5, 0x12, 0x3c, 0xe6, 0xdc, 0x18, + 0x80, 0x7f, 0xf9, 0x4, 0x60, 0x0, 0x9a, 0x34, + 0x55, 0xef, 0xed, 0xc3, 0x19, 0x23, 0xe6, 0xb9, + 0x0, 0x47, 0x3d, 0xff, 0xff, 0xc6, 0xe9, 0x30, + 0xf, 0xfe, 0x31, 0x4e, 0x77, 0xfb, 0xb2, 0xe5, + 0xd5, 0x8, 0x0, 0x26, 0xaf, 0x37, 0xbd, 0x8e, + 0x40, 0x1f, 0xf0, 0x8f, 0xe0, 0xf, 0xfe, 0xa9, + 0x23, 0xc5, 0x5e, 0xf7, 0xf6, 0x54, 0x32, 0x10, + 0x80, 0x7f, 0xf0, 0x9, 0xf3, 0xbb, 0xd9, 0x4, + 0x1, 0xff, 0xd2, 0x14, 0x88, 0x3a, 0xa1, 0x8, + 0x7, 0xff, 0xd, 0xc0, 0x40, 0x3f, 0xfc, 0x46, + 0xa4, 0x5f, 0xfc, 0x21, 0x0, 0xe1, 0x22, 0x0, + 0x61, 0xe3, 0x0, 0xff, 0xe2, 0x8b, 0x5e, 0xdc, + 0x20, 0x80, 0x7f, 0xf0, 0x85, 0x67, 0x77, 0xff, + 0x85, 0x6a, 0x1, 0xb, 0xea, 0x0, 0x42, 0xa4, + 0x20, 0x1f, 0xfc, 0x27, 0x0, 0x18, 0xb9, 0x22, + 0xe1, 0x80, 0x7f, 0xf0, 0xc4, 0x8c, 0xff, 0xf8, + 0x44, 0x22, 0x38, 0xd9, 0x40, 0x8, 0x5f, 0x50, + 0x3, 0xe3, 0x11, 0x0, 0x42, 0xf3, 0x98, 0xf9, + 0x30, 0x0, 0xf1, 0x80, 0x7f, 0xf0, 0x85, 0xfb, + 0x33, 0xff, 0x87, 0xbf, 0x8e, 0x60, 0x19, 0x22, + 0x8, 0x1, 0xf8, 0x5e, 0x18, 0xc4, 0x4, 0x8c, + 0xc4, 0x22, 0x37, 0x87, 0x10, 0xf, 0xfe, 0x9a, + 0x5c, 0x98, 0x4, 0x4b, 0x54, 0x61, 0x0, 0xff, + 0xa, 0x4e, 0x77, 0xff, 0xdd, 0x90, 0x82, 0x1, + 0xff, 0xc3, 0x12, 0x44, 0xff, 0xe1, 0x99, 0x9e, + 0x58, 0xda, 0xb0, 0xdd, 0x9b, 0xff, 0x92, 0xa8, + 0x20, 0x1f, 0xfc, 0x94, 0x8b, 0xbf, 0xfe, 0x14, + 0xa0, 0x9a, 0x9b, 0x44, 0xcf, 0xff, 0x32, 0xaf, + 0xe0, 0xc0, 0x3f, 0xf8, 0xe2, 0x46, 0x7f, 0xfc, + 0x22, 0x10, 0x2b, 0x55, 0x21, 0x90, 0x80, 0x92, + 0x2a, 0xff, 0xc8, 0x62, 0x1, 0x89, 0xa8, 0xc0, + 0x3f, 0xf8, 0xc2, 0xfd, 0x99, 0xff, 0xc2, 0x84, + 0x14, 0x7a, 0x83, 0x12, 0x10, 0x11, 0x64, 0x55, + 0x7f, 0x41, 0x88, 0x80, 0x23, 0xb9, 0x20, 0xf, + 0xfe, 0xf1, 0x4c, 0x20, 0x4, 0x73, 0xa, 0x20, + 0x1c, 0x2d, 0x2e, 0x40, 0x12, 0x4b, 0x88, 0x7, + 0xff, 0x24, 0xd8, 0x8d, 0x15, 0x98, 0xf1, 0x35, + 0x79, 0x8d, 0xef, 0xa5, 0x0, 0x85, 0x61, 0xc8, + 0x0, 0x2b, 0x74, 0xa2, 0x6, 0xfb, 0x28, 0x1, + 0x24, 0xc9, 0x44, 0x3, 0xfc, 0x6d, 0x35, 0x4e, + 0x52, 0x0, 0x85, 0x6b, 0x72, 0xea, 0x65, 0xe, + 0xca, 0x86, 0x62, 0x10, 0xf, 0xc7, 0x1f, 0x6, + 0x0, 0x14, 0xac, 0xdd, 0x41, 0x80, 0x5, 0x6a, + 0x8c, 0x40, 0x1f, 0xfc, 0x7, 0xc6, 0x55, 0x19, + 0x0, 0x7e, 0x12, 0x34, 0x56, 0x78, 0x99, 0x55, + 0xe6, 0xf5, 0x28, 0x7, 0xc4, 0xfd, 0x6, 0x1, + 0x11, 0x4, 0x0, 0x4d, 0x54, 0x51, 0x0, 0xff, + 0xe1, 0x2f, 0x43, 0xc3, 0xa0, 0x80, 0x42, 0xd7, + 0xfd, 0xb9, 0x75, 0x30, 0xec, 0xc5, 0x43, 0x21, + 0x0, 0xf8, 0x91, 0xeb, 0xe0, 0xc0, 0x3f, 0x13, + 0x4d, 0x3a, 0x8, 0x7, 0xff, 0x4, 0x51, 0xe1, + 0xe8, 0xcc, 0x1, 0xce, 0x1, 0xff, 0xc3, 0x13, + 0x56, 0x8a, 0xce, 0xdb, 0x85, 0x20, 0x0, 0x9b, + 0x43, 0xa1, 0x0, 0x44, 0xb1, 0x7d, 0xb7, 0x30, + 0xc8, 0x42, 0x1, 0xff, 0xd2, 0x26, 0xbf, 0xec, + 0xa9, 0x75, 0x31, 0x0, 0x12, 0x3d, 0x6f, 0x64, + 0xbc, 0x5e, 0xea, 0x98, 0xc4, 0x2, 0x24, 0x67, + 0x9b, 0xcb, 0x41, 0x0, 0xff, 0xe8, 0x13, 0x43, + 0x90, 0x9, 0xab, 0xcd, 0xef, 0x6d, 0xc2, 0x90, + 0x7, 0xc4, 0xb3, 0x9d, 0xb7, 0x2e, 0xa4, 0x24, + 0xfb, 0x48, 0x20, 0x1f, 0x8a, 0x37, 0xfe, 0xe9, + 0x30, 0xf, 0xfe, 0x9, 0xc6, 0xff, 0x65, 0x43, + 0x21, 0x8, 0x7, 0xff, 0x14, 0x91, 0xa2, 0xb7, + 0xb6, 0xc, 0x3, 0x0, + + /* U+6CB9 "油" */ + 0x0, 0xff, 0xee, 0x89, 0x22, 0x71, 0x8, 0x7, + 0xff, 0x3c, 0x5a, 0xf7, 0x25, 0xd0, 0x40, 0x3f, + 0xf9, 0x85, 0x54, 0xbb, 0xe5, 0x0, 0xff, 0xe6, + 0x8a, 0xdc, 0xa1, 0x1b, 0x45, 0xf7, 0x2e, 0x14, + 0x80, 0x3f, 0xfd, 0x22, 0xb5, 0xb7, 0x8, 0x40, + 0x10, 0xa3, 0xd6, 0xf5, 0x28, 0x80, 0x7f, 0xfa, + 0x9, 0x1e, 0xf7, 0xae, 0x10, 0x80, 0x25, 0xc4, + 0x10, 0xf, 0xff, 0x68, 0xa3, 0xde, 0xea, 0xf2, + 0x98, 0x40, 0x48, 0xbf, 0xf8, 0x4c, 0x40, 0x1c, + 0x45, 0xff, 0xc6, 0x10, 0xf, 0xfe, 0x49, 0x21, + 0x88, 0x0, 0x9b, 0xf7, 0x7f, 0xf8, 0x34, 0xa2, + 0x1, 0x92, 0x77, 0x7f, 0xf8, 0x79, 0x26, 0x1, + 0xf0, 0x90, 0x80, 0x7f, 0xfd, 0xe, 0x33, 0x7b, + 0x99, 0x2c, 0x62, 0x1, 0xff, 0xc4, 0x16, 0xcf, + 0xff, 0xb1, 0xc4, 0x3, 0x35, 0xff, 0xff, 0x5b, + 0x8, 0x7, 0xf8, 0xd0, 0xcc, 0x0, 0x13, 0x69, + 0xce, 0xdb, 0x84, 0x20, 0xf, 0xff, 0x41, 0xbd, + 0xf6, 0xd3, 0xa1, 0x0, 0x44, 0x8f, 0x72, 0xc2, + 0x1, 0xff, 0xea, 0x25, 0x8b, 0xdd, 0x53, 0x98, + 0x9c, 0x4b, 0x8, 0x7, 0xff, 0xbc, 0x96, 0x33, + 0xb1, 0xc8, 0x3, 0xfe, 0x12, 0x45, 0x5f, 0x90, + 0xc0, 0x38, 0xb1, 0x57, 0xfb, 0x8, 0x40, 0x3f, + 0xfb, 0x69, 0x15, 0x5f, 0x42, 0x8, 0x6, 0x47, + 0xaa, 0xfe, 0x74, 0x0, 0xff, 0xe6, 0x9, 0x10, + 0x40, 0x3f, 0xf8, 0x2, 0x46, 0x7f, 0x10, 0x80, + 0x70, 0x91, 0x9f, 0xf1, 0x8, 0x7, 0xff, 0x28, + 0x56, 0xf3, 0x72, 0x98, 0x80, 0x3f, 0xb, 0xf6, + 0x67, 0xdc, 0xc2, 0x1, 0x9e, 0x73, 0x3f, 0xa5, + 0xc4, 0x3, 0xff, 0x90, 0x71, 0x6a, 0x20, 0x4f, + 0xc2, 0x1, 0xff, 0xed, 0x27, 0xf6, 0x10, 0x0, + 0xac, 0x49, 0x80, 0x7f, 0xfa, 0xc9, 0xa6, 0xc, + 0x2, 0x39, 0x85, 0x10, 0xf, 0xff, 0x50, 0xb4, + 0xc9, 0x0, 0x21, 0x68, 0x72, 0x0, 0xff, 0x85, + 0xb3, 0xff, 0xec, 0x71, 0x0, 0xcd, 0x7f, 0xff, + 0xd6, 0xc2, 0x1, 0xff, 0xc0, 0x16, 0xa9, 0x40, + 0x8, 0x56, 0xe1, 0x0, 0x3f, 0xfd, 0x82, 0xfe, + 0xe6, 0x20, 0x91, 0x6a, 0x20, 0x1f, 0xfc, 0x21, + 0x59, 0xdd, 0xff, 0xe6, 0xca, 0x80, 0x7f, 0xf0, + 0x85, 0x23, 0x3f, 0xa9, 0x84, 0x3, 0xff, 0x8a, + 0x6a, 0x45, 0xff, 0xcd, 0x52, 0x32, 0x2d, 0xe0, + 0x0, + + /* U+6D4B "测" */ + 0x0, 0xf8, 0x55, 0xdc, 0x84, 0x1, 0xff, 0xe3, + 0x36, 0x99, 0x98, 0xc0, 0x3e, 0x38, 0xca, 0x88, + 0x5e, 0xf6, 0x4b, 0x18, 0x80, 0xd, 0xea, 0xbf, + 0xf9, 0x6e, 0x80, 0x1f, 0xfc, 0x5, 0xd6, 0x6b, + 0x54, 0x40, 0x3c, 0x73, 0x28, 0x52, 0x0, 0x9, + 0xb4, 0xe7, 0xdb, 0x26, 0xaa, 0xe4, 0x77, 0xff, + 0xe0, 0xa2, 0xae, 0xc1, 0x0, 0x1c, 0xf7, 0xfb, + 0x1c, 0x80, 0x3f, 0xf8, 0xa2, 0x8f, 0x5b, 0xd6, + 0xe8, 0x20, 0x2f, 0xee, 0x60, 0x19, 0x23, 0x37, + 0x7f, 0xec, 0x84, 0x0, 0xff, 0xe0, 0x8, 0x7, + 0xff, 0x30, 0x52, 0x2f, 0xfb, 0xe5, 0x4, 0x3, + 0xf8, 0x96, 0x26, 0x4e, 0x60, 0x1f, 0xfe, 0x31, + 0x18, 0x3, 0xff, 0x80, 0xd8, 0xcd, 0x62, 0x88, + 0x7, 0xff, 0x5c, 0x4d, 0x10, 0x20, 0x1f, 0xff, + 0x21, 0x6a, 0xdb, 0xb7, 0x72, 0xe1, 0x4c, 0x40, + 0x3f, 0xfd, 0xa5, 0x8a, 0x40, 0x1, 0x47, 0xac, + 0xfb, 0x84, 0x10, 0xf, 0xff, 0x40, 0xa3, 0xde, + 0xea, 0xdd, 0x4, 0x0, 0x2e, 0xe, 0x20, 0x1f, + 0xfe, 0xd2, 0x48, 0xbe, 0xca, 0xbe, 0x83, 0x0, + 0xff, 0xf9, 0x9a, 0xa1, 0x0, 0x7f, 0xff, 0xc0, + 0x3f, 0xfd, 0xc5, 0x19, 0xb4, 0xe8, 0x20, 0x1f, + 0xfc, 0x11, 0x0, 0xc2, 0x1, 0xff, 0xdd, 0x3a, + 0x53, 0x25, 0x8f, 0x71, 0x0, 0xff, 0x9, 0x80, + 0x42, 0x40, 0x1f, 0xfd, 0xd4, 0xa6, 0x20, 0x9, + 0x39, 0x84, 0x3, 0xf8, 0x49, 0x80, 0x2, 0x6e, + 0x1, 0xff, 0xdc, 0x4e, 0x71, 0x0, 0x97, 0x94, + 0x2, 0x59, 0xaa, 0xbd, 0x1, 0xf0, 0xc0, 0x9, + 0x86, 0x1, 0xb, 0xc5, 0xdd, 0x8, 0x0, 0x2d, + 0x89, 0x94, 0x21, 0x80, 0x7f, 0xf1, 0x45, 0x79, + 0x44, 0x2, 0x5f, 0x50, 0xc, 0x26, 0xab, 0x20, + 0x3d, 0x20, 0x1, 0x34, 0x5e, 0xae, 0x54, 0xd, + 0x12, 0x31, 0x0, 0xa, 0x33, 0x4a, 0x62, 0x1, + 0xff, 0xc4, 0x16, 0x95, 0x0, 0x85, 0x79, 0x40, + 0x3f, 0x89, 0xfa, 0x4c, 0x9, 0xbd, 0x43, 0x5d, + 0x1a, 0xb2, 0xc, 0x40, 0x3f, 0xfa, 0x7, 0x34, + 0x60, 0x10, 0xb4, 0xa0, 0x7, 0xc4, 0xb5, 0xf0, + 0x60, 0x4d, 0x32, 0x42, 0x4a, 0xf9, 0x41, 0x27, + 0xda, 0x61, 0x0, 0xff, 0xe6, 0x9d, 0xa9, 0x0, + 0x45, 0x34, 0x60, 0x18, 0x9a, 0xb7, 0x54, 0xa4, + 0x29, 0x1d, 0x28, 0x1, 0xc4, 0xd7, 0x4c, 0x42, + 0x93, 0xae, 0x40, 0x4, 0x9c, 0xcf, 0x6c, 0x20, + 0x4, 0x44, 0x10, 0xc, 0x71, 0xba, 0xa7, 0x74, + 0x31, 0x0, 0x71, 0x26, 0x89, 0x23, 0xde, 0x5b, + 0x98, 0x7, 0xf9, 0x27, 0xa1, 0x55, 0x68, 0x60, + 0x5, 0xf7, 0x33, 0xf0, 0x1a, 0x3d, 0x5a, 0x0, + 0x7e, 0x25, 0x88, 0x28, 0x80, 0x7c, 0x4f, 0x9b, + 0x70, 0x84, 0x1, 0xff, 0xc3, 0x37, 0xaa, 0x39, + 0x88, 0x0, 0x5a, 0xff, 0xfb, 0xb9, 0x97, 0xa, + 0x40, 0x10, + + /* U+6D88 "消" */ + 0x0, 0xfc, 0x4a, 0xec, 0x62, 0x1, 0xff, 0xcf, + 0x38, 0xde, 0xed, 0x28, 0x1, 0xfc, 0x24, 0x40, + 0xf, 0xfe, 0x0, 0xa4, 0xfd, 0x44, 0xe7, 0x6d, + 0x3a, 0x8, 0x7, 0x9, 0xbd, 0x67, 0x72, 0xd4, + 0x40, 0x3f, 0x9, 0x88, 0xe3, 0x10, 0xf, 0xc9, + 0x19, 0xbf, 0xd9, 0x8, 0x1, 0xf0, 0xa5, 0xc3, + 0x18, 0x80, 0x9, 0x62, 0xff, 0x21, 0x4, 0x4, + 0x40, 0xc6, 0x22, 0x4b, 0xb2, 0x88, 0x7, 0xff, + 0x20, 0x5b, 0xd8, 0x40, 0x2, 0xfa, 0xa0, 0x1f, + 0xc4, 0xb3, 0x9f, 0x92, 0xa4, 0x0, 0x13, 0x5c, + 0x20, 0x1, 0x3f, 0xb9, 0x0, 0x5, 0x6e, 0xc, + 0x3, 0xff, 0x8c, 0x73, 0x68, 0x1, 0x13, 0xca, + 0x88, 0x7, 0xff, 0x4, 0x4d, 0xab, 0x31, 0xf, + 0x5f, 0x6, 0x1, 0x8e, 0x20, 0xa0, 0x10, 0xb4, + 0x30, 0x80, 0x7f, 0xf0, 0x89, 0xfd, 0xc8, 0x0, + 0x2d, 0x30, 0x40, 0x1f, 0xfc, 0x71, 0x37, 0x85, + 0x20, 0xf, 0xcb, 0xcc, 0x42, 0x6d, 0xaa, 0x1, + 0xff, 0xc4, 0x24, 0x53, 0x26, 0xa8, 0x40, 0xf, + 0xf8, 0x48, 0x82, 0x1, 0xff, 0xc6, 0x12, 0x37, + 0xae, 0xdf, 0xa5, 0x2, 0x33, 0x29, 0x88, 0x6, + 0x12, 0x33, 0x85, 0xae, 0x7f, 0xa9, 0xc8, 0xc4, + 0x3, 0xf1, 0xbe, 0xed, 0xdb, 0x70, 0xa4, 0x1, + 0xff, 0xc0, 0x38, 0xcc, 0xff, 0xe0, 0xca, 0x80, + 0x72, 0x46, 0x67, 0xff, 0x3, 0x61, 0x0, 0x3c, + 0x2f, 0xee, 0x20, 0x2, 0x47, 0xad, 0xeb, 0x84, + 0x10, 0xf, 0xfe, 0x18, 0x8f, 0xff, 0x2c, 0x3, + 0xff, 0x84, 0x29, 0x17, 0xdb, 0x70, 0x84, 0x0, + 0x14, 0x7a, 0x84, 0x0, 0xff, 0xe0, 0xb, 0x57, + 0x77, 0xff, 0x27, 0x58, 0x40, 0x3f, 0xf8, 0xa4, + 0x8f, 0x7b, 0xa9, 0x55, 0x46, 0xca, 0x0, 0x7f, + 0xf0, 0x4, 0x3, 0xff, 0x96, 0xe0, 0x1f, 0xfc, + 0xc2, 0x6a, 0xa3, 0x98, 0x7, 0xff, 0xd, 0xaf, + 0xff, 0xff, 0x93, 0x6c, 0x20, 0x1f, 0xfc, 0xe1, + 0x18, 0x3, 0xff, 0x86, 0x24, 0x5f, 0xfc, 0x91, + 0x0, 0xff, 0xe7, 0xa, 0xd7, 0xfa, 0xdc, 0xc0, + 0x3f, 0xc2, 0xd5, 0xbb, 0xff, 0xca, 0x61, 0x0, + 0xff, 0xe5, 0x9c, 0xc2, 0x8, 0x92, 0xd0, 0x80, + 0x3f, 0xfd, 0xa2, 0xb2, 0xe4, 0x1, 0x2c, 0xb9, + 0x0, 0x7f, 0xb, 0x5f, 0xff, 0xff, 0x27, 0x18, + 0x40, 0x3f, 0xf9, 0x5, 0x30, 0xa0, 0x11, 0x3c, + 0xa8, 0x7, 0xff, 0x8, 0x47, 0xff, 0x92, 0x1, + 0xff, 0xc9, 0x15, 0x97, 0x20, 0x8, 0xee, 0x4c, + 0x3, 0xff, 0x80, 0x2d, 0x7d, 0xdf, 0xfc, 0x9c, + 0x61, 0x0, 0xff, 0xe2, 0xa4, 0x5a, 0x0, 0x42, + 0xd0, 0xc2, 0x1, 0xff, 0xeb, 0x28, 0x96, 0x10, + 0x8, 0xe6, 0xd0, 0x3, 0xff, 0xa4, 0x24, 0x5f, + 0x94, 0x84, 0x3, 0x9c, 0x3, 0xf1, 0x21, 0x98, + 0x2, 0x16, 0x87, 0x20, 0xf, 0xfe, 0x9a, 0xde, + 0x6e, 0xfa, 0x50, 0x3, 0x2f, 0x90, 0x7, 0xe2, + 0x6b, 0xfb, 0x87, 0xb8, 0x40, 0xf, 0xfe, 0xaa, + 0x6b, 0x90, 0x8c, 0x45, 0x1a, 0x34, 0x5d, 0x30, + 0x80, 0x60, + + /* U+6E05 "清" */ + 0x0, 0xff, 0xef, 0x9, 0x17, 0x8, 0x7, 0xff, + 0x48, 0x52, 0x72, 0xe5, 0x90, 0x80, 0x3f, 0xf9, + 0xa9, 0x7b, 0xbb, 0x24, 0xc0, 0x3f, 0xfa, 0x9, + 0x12, 0xc6, 0x8d, 0x37, 0xbd, 0x92, 0xc6, 0x20, + 0x4, 0x7a, 0xaf, 0xfe, 0x1c, 0x20, 0x6, 0x15, + 0xfa, 0xaf, 0xfe, 0x23, 0x10, 0x7, 0xf9, 0x27, + 0x31, 0x4e, 0x84, 0x0, 0x13, 0x69, 0xcc, 0x41, + 0x96, 0xaa, 0xff, 0xf0, 0xcc, 0x40, 0x38, 0x8d, + 0x57, 0xff, 0x86, 0x9e, 0xc0, 0x1f, 0xfc, 0x1, + 0x35, 0x8b, 0xdd, 0x53, 0x98, 0x89, 0x62, 0x4d, + 0xab, 0xff, 0xff, 0x87, 0x6a, 0x1, 0x85, 0xf3, + 0xff, 0xff, 0x87, 0xd2, 0x80, 0x1f, 0xfc, 0x62, + 0x58, 0xce, 0xe5, 0x28, 0x80, 0x5, 0xb3, 0xff, + 0xff, 0x83, 0x6a, 0x1, 0x85, 0xf3, 0xff, 0xff, + 0x83, 0xd2, 0x80, 0x1f, 0xfd, 0x42, 0xb6, 0x6f, + 0xfe, 0xa, 0x10, 0x7, 0x12, 0x33, 0x7f, 0xf0, + 0xb1, 0x80, 0x3f, 0xe3, 0x67, 0x52, 0x10, 0xf, + 0xfe, 0x10, 0xa3, 0xcc, 0xff, 0xf0, 0x7d, 0xc0, + 0x30, 0xac, 0x4c, 0xff, 0xf0, 0x61, 0x48, 0x3, + 0xf0, 0xad, 0x6c, 0xc5, 0x6f, 0x6d, 0xc2, 0x90, + 0x7, 0x13, 0xe7, 0xff, 0xff, 0x16, 0xd4, 0x3, + 0xb, 0xe7, 0xff, 0xff, 0x1a, 0x90, 0x3, 0x9b, + 0xd9, 0x8, 0x2, 0x24, 0x7a, 0xde, 0xb7, 0x30, + 0x32, 0x54, 0x4f, 0xff, 0x6, 0xb8, 0x6, 0x13, + 0x58, 0xbd, 0xeb, 0x85, 0x20, 0x8, 0x5c, 0x44, + 0x2, 0xb3, 0x77, 0xff, 0xe0, 0x73, 0x0, 0xff, + 0xa, 0x3d, 0x6e, 0xaa, 0x2b, 0x98, 0x80, 0x3f, + 0x2d, 0x7f, 0xff, 0xf5, 0x36, 0xc, 0x3, 0xff, + 0x90, 0x4a, 0xea, 0x40, 0x1f, 0xfc, 0x41, 0x35, + 0x5f, 0xfe, 0x42, 0x10, 0x7, 0xff, 0x48, 0x8c, + 0xc2, 0x1, 0xff, 0xc2, 0x5a, 0xaf, 0xfe, 0x4c, + 0x20, 0x80, 0x7f, 0xf4, 0x16, 0x37, 0x3e, 0xdc, + 0xc0, 0x3f, 0xe4, 0x9f, 0xff, 0xfe, 0x46, 0x30, + 0x80, 0x7f, 0xf3, 0x8a, 0x20, 0xa2, 0x2, 0xbc, + 0xe0, 0x1f, 0xf0, 0xa3, 0xbf, 0xff, 0x21, 0x4c, + 0x3, 0xff, 0x9a, 0x2b, 0x2e, 0x40, 0x11, 0xcc, + 0x20, 0x7, 0xfc, 0xbb, 0x31, 0x1f, 0xfc, 0x79, + 0x51, 0x0, 0xff, 0xe5, 0x9c, 0xc2, 0x0, 0x42, + 0xd0, 0xe2, 0x1, 0xff, 0xc0, 0x49, 0xef, 0xff, + 0xfe, 0x3e, 0x30, 0x80, 0x7f, 0xf2, 0x49, 0xbd, + 0xc8, 0x2, 0x39, 0xb4, 0x0, 0xff, 0xe1, 0xa, + 0x33, 0xbf, 0xff, 0x1d, 0x4c, 0x3, 0xff, 0x90, + 0x2b, 0x10, 0x30, 0x8, 0x5a, 0x1c, 0x80, 0x3f, + 0xf8, 0x6b, 0xb3, 0x11, 0xff, 0xc7, 0x95, 0x10, + 0xf, 0xfe, 0x32, 0x45, 0xa8, 0x80, 0x49, 0x10, + 0x40, 0xf, 0xfe, 0xdb, 0x80, 0x7f, 0xf1, 0xc4, + 0x46, 0x60, 0x8, 0xa2, 0x58, 0x40, 0x3f, 0xfa, + 0x62, 0xd7, 0xff, 0xeb, 0x61, 0x0, 0x9b, 0x88, + 0x3, 0xfe, 0x15, 0xad, 0xd5, 0x53, 0x9c, 0x80, + 0x3f, 0xfa, 0xa2, 0xfa, 0x82, 0x3c, 0x44, 0x34, + 0x6a, 0x96, 0x10, 0xf, 0x80, + + /* U+70B9 "点" */ + 0x0, 0xff, 0xea, 0x9, 0x17, 0x8, 0x7, 0xff, + 0xd1, 0x23, 0x37, 0x75, 0xa8, 0x7, 0xff, 0xfc, + 0x3, 0xff, 0xee, 0xb5, 0xff, 0xff, 0xcc, 0xc7, + 0x10, 0xf, 0xff, 0xf8, 0x7, 0xff, 0x71, 0x27, + 0xbb, 0xff, 0x99, 0xae, 0x20, 0x1f, 0xfd, 0xf1, + 0x31, 0x1f, 0xfe, 0x68, 0x7, 0xff, 0x70, 0x40, + 0x30, 0x80, 0x7f, 0xf8, 0x1a, 0xff, 0xff, 0xf8, + 0xd6, 0xc0, 0x1c, 0x95, 0xff, 0xff, 0xc7, 0xc6, + 0x10, 0xf, 0xff, 0xf8, 0x7, 0xff, 0x30, 0xe3, + 0x7f, 0xff, 0xfa, 0x98, 0xe4, 0x1, 0xff, 0xd6, + 0x71, 0x30, 0xf, 0xfe, 0xa0, 0xf8, 0x7, 0xff, + 0xfc, 0x3, 0xff, 0xa8, 0xe2, 0x62, 0x3f, 0xfd, + 0x46, 0xf0, 0xf, 0xfe, 0xb9, 0xc6, 0xf7, 0x7f, + 0xf5, 0x2d, 0xc8, 0x3, 0xff, 0xa0, 0x60, 0x1f, + 0xfe, 0x37, 0x0, 0xff, 0xe5, 0xad, 0xff, 0xff, + 0xf8, 0xad, 0x84, 0x3, 0xff, 0x90, 0x2b, 0x37, + 0x50, 0xea, 0x40, 0x1c, 0x22, 0x22, 0x19, 0x88, + 0x3, 0xf0, 0x9a, 0x2b, 0x29, 0x0, 0x78, 0x4d, + 0xa2, 0xb3, 0x6d, 0x88, 0x3, 0xff, 0x8e, 0x91, + 0x6c, 0x8a, 0xf5, 0xa2, 0x1, 0x8e, 0x3f, 0x75, + 0x98, 0xb4, 0x0, 0xf1, 0xcf, 0x5d, 0x4d, 0x4a, + 0x88, 0x6, 0x11, 0x91, 0x4c, 0x92, 0x79, 0xc8, + 0x3, 0xff, 0x86, 0x4f, 0xc, 0x20, 0x12, 0x5c, + 0x98, 0x6, 0x2f, 0x20, 0xc, 0xa6, 0x40, 0x1c, + 0x75, 0x43, 0x0, 0x92, 0x58, 0x80, 0x31, 0x3f, + 0x41, 0x80, 0x47, 0x1c, 0xe4, 0x1, 0xff, 0x13, + 0xf4, 0x18, 0x4, 0x4f, 0xc, 0x20, 0x1c, 0x24, + 0xc0, 0x18, 0xb9, 0x80, 0x3c, 0x4d, 0x46, 0x1, + 0x1d, 0x50, 0xc0, 0x38, 0x9f, 0xa0, 0xc0, 0x23, + 0x89, 0x61, 0x0, 0xf0, 0xa4, 0xfc, 0x18, 0x4, + 0x71, 0xf0, 0x60, 0x1f, 0x9c, 0x84, 0x2, 0x13, + 0x10, 0xf, 0x85, 0xec, 0xc0, 0x22, 0x5b, 0x30, + 0xf, 0x13, 0xc3, 0x8, 0x4, 0x91, 0x68, 0x1, + 0xc2, 0x97, 0x30, 0xa8, 0xd5, 0xae, 0x40, 0x1f, + 0xe2, 0xd7, 0x56, 0x63, 0xe3, 0x0, 0x7e, 0x15, + 0x97, 0x74, 0xd4, 0xd1, 0x0, 0x7e, 0x48, 0xb7, + 0x68, 0xad, 0xb4, 0x0, 0x80, + + /* U+722C "爬" */ + 0x0, 0xff, 0xff, 0x80, 0x7f, 0xf2, 0x84, 0x91, + 0xa2, 0xb7, 0x59, 0x8, 0x20, 0x1f, 0xfd, 0xd1, + 0x21, 0x0, 0xf0, 0x91, 0xab, 0x44, 0xde, 0x77, + 0x36, 0xe5, 0xd4, 0x8a, 0x4e, 0x63, 0x11, 0x11, + 0x7f, 0xf3, 0x44, 0x3, 0xfe, 0x26, 0xee, 0x7f, + 0x6e, 0xdf, 0xdb, 0x95, 0x2e, 0xc8, 0x46, 0x71, + 0x0, 0x66, 0xac, 0xa7, 0x27, 0xad, 0xdf, 0xfe, + 0x6d, 0xa8, 0x7, 0xff, 0xc, 0x48, 0xc5, 0x59, + 0xe2, 0x6f, 0x37, 0xb9, 0xb9, 0xe8, 0x20, 0x11, + 0x80, 0x7f, 0xc4, 0x68, 0x83, 0x20, 0x8, 0x49, + 0x13, 0x19, 0x0, 0x7f, 0xf2, 0x92, 0x36, 0xa6, + 0x43, 0xb7, 0x9b, 0x4a, 0x1, 0x9, 0x80, 0x7f, + 0xf0, 0x89, 0x7a, 0xed, 0xe8, 0x20, 0x5, 0xba, + 0xbb, 0xbd, 0x44, 0x3, 0xff, 0xb0, 0x20, 0x1f, + 0xff, 0xf0, 0x0, 0x88, 0x3, 0xff, 0xe8, 0x7e, + 0x20, 0x13, 0x98, 0x80, 0x7f, 0xfc, 0xc4, 0x4e, + 0x1, 0x8, 0x8c, 0x3, 0xf1, 0x2c, 0xd5, 0x21, + 0x4, 0x0, 0xb5, 0x75, 0x54, 0x28, 0x80, 0x7f, + 0xf6, 0x48, 0x40, 0x23, 0xe1, 0x0, 0xfe, 0x24, + 0x55, 0x21, 0x0, 0x42, 0x6a, 0xb9, 0x8, 0x3, + 0xff, 0x8c, 0x20, 0x1f, 0xfc, 0x77, 0x22, 0x0, + 0x4, 0x94, 0x40, 0x3e, 0x16, 0xad, 0xdf, 0xfe, + 0x3d, 0xa8, 0x7, 0xfd, 0xe0, 0x1f, 0xfc, 0x83, + 0xd6, 0x0, 0x97, 0xd4, 0x3, 0xe3, 0x17, 0x22, + 0xff, 0xe3, 0x88, 0x7, 0xfc, 0x22, 0x30, 0xe, + 0x10, 0xf, 0xfe, 0x13, 0xe1, 0x0, 0x5, 0x4c, + 0x80, 0x3f, 0xf9, 0x86, 0xd2, 0xea, 0x62, 0x1, + 0xfc, 0xe0, 0x1e, 0x30, 0xf, 0xfe, 0x19, 0x1b, + 0x80, 0x47, 0x4a, 0x40, 0x1f, 0x8, 0x7, 0xff, + 0xd, 0xf1, 0xa2, 0xb6, 0x10, 0x3, 0xf8, 0xc4, + 0x2, 0x21, 0x0, 0xff, 0xe2, 0x27, 0x30, 0x80, + 0xa, 0x6b, 0x84, 0x2, 0x24, 0xb5, 0x44, 0x8c, + 0xff, 0x22, 0x1f, 0x90, 0x2, 0x5f, 0x50, 0xf, + 0xc2, 0x20, 0x8, 0x44, 0xe0, 0x1f, 0xfc, 0x54, + 0xa6, 0x10, 0x0, 0xb3, 0x10, 0x40, 0x23, 0x7a, + 0xbb, 0xb3, 0x3f, 0x5d, 0xa1, 0x44, 0x0, 0x9a, + 0xe2, 0x1, 0xf1, 0x11, 0x80, 0x22, 0xf2, 0x0, + 0xff, 0xe3, 0x1c, 0xc2, 0x0, 0x42, 0x31, 0xab, + 0xb9, 0x98, 0xab, 0xff, 0xc1, 0x66, 0x3d, 0x65, + 0xb0, 0x80, 0x7e, 0x7d, 0x20, 0x0, 0xa9, 0x88, + 0x7, 0xff, 0x1c, 0x5a, 0xa8, 0xa2, 0x1, 0x1a, + 0xa8, 0xfa, 0xae, 0xab, 0xff, 0x81, 0x32, 0x85, + 0x30, 0xf, 0xf1, 0xea, 0x0, 0x45, 0xea, 0x1, + 0xff, 0xca, 0x15, 0xad, 0x83, 0x10, 0x1, 0x24, + 0x67, 0xe5, 0x3a, 0xa1, 0x0, 0x7f, 0xf2, 0xe, + 0x98, 0x40, 0x4, 0x8a, 0x20, 0x1f, 0xfc, 0xd3, + 0x7c, 0xfb, 0x84, 0x10, 0x0, 0x9a, 0xc5, 0x5e, + 0xff, 0x65, 0xcc, 0x41, 0xd9, 0x50, 0xc8, 0x82, + 0x1, 0x89, 0x10, 0x20, 0x2, 0xaa, 0x18, 0x7, + 0x8c, 0x48, 0xb0, 0x7, 0xff, 0x14, 0x51, 0xef, + 0xb6, 0xe5, 0xd4, 0xc4, 0x2, 0x13, 0x46, 0x77, + 0x44, 0xd5, 0xe7, 0x29, 0x80, 0x62, 0x7c, 0xb7, + 0x6b, 0x62, 0x0, 0xf0, 0xad, 0x6e, 0xd2, 0xa0, + 0x1f, 0xfc, 0x92, 0x46, 0x8a, 0xce, 0xfd, 0xcb, + 0xa9, 0x87, 0x65, 0x43, 0x33, 0x43, 0x90, 0x4, + + /* U+751F "生" */ + 0x0, 0xff, 0xe9, 0x8, 0xfc, 0x1, 0xff, 0xe0, + 0x15, 0x9b, 0x98, 0x76, 0x31, 0x0, 0xf8, 0xe7, + 0xfb, 0xb5, 0x30, 0x80, 0x7f, 0xf7, 0x45, 0xa5, + 0x91, 0x9e, 0x35, 0x40, 0x3f, 0xfd, 0xc4, 0xd4, + 0x60, 0x19, 0x39, 0xc4, 0x3, 0xff, 0xd8, 0x75, + 0x42, 0x0, 0xcb, 0xca, 0x20, 0x1f, 0xfe, 0xc3, + 0xa6, 0x20, 0xe, 0x4b, 0xdd, 0xff, 0x9c, 0x40, + 0x32, 0x46, 0x6e, 0xff, 0xf2, 0xa9, 0x84, 0x3, + 0xfe, 0x16, 0x86, 0x10, 0xf, 0x8, 0x88, 0xbf, + 0xc2, 0x1, 0xf0, 0x91, 0x7f, 0xf2, 0xd8, 0x3, + 0xff, 0x80, 0x97, 0x8, 0x1, 0x91, 0xea, 0xef, + 0xff, 0x83, 0x8, 0x20, 0x18, 0x9a, 0x6e, 0xff, + 0xf9, 0x5e, 0x82, 0x1, 0xf0, 0xad, 0x51, 0x44, + 0x2, 0x38, 0x98, 0x54, 0x4f, 0xfe, 0x11, 0x80, + 0x73, 0x7b, 0xa2, 0x7f, 0xf2, 0x8c, 0x80, 0x3c, + 0x2b, 0x74, 0xa2, 0x1, 0x13, 0xfb, 0x90, 0x7, + 0xff, 0xac, 0x56, 0xb2, 0x58, 0xd2, 0x3e, 0xc, + 0x3, 0xff, 0xe0, 0x6d, 0x39, 0x6e, 0x40, 0x1f, + 0xff, 0x85, 0xad, 0xdf, 0xfe, 0x3b, 0x88, 0x6, + 0x48, 0xfd, 0xdf, 0xfe, 0x3e, 0x39, 0x0, 0x7f, + 0xf1, 0x4c, 0x48, 0xbf, 0xf8, 0xc2, 0x1, 0xf0, + 0x88, 0x8b, 0xff, 0x8e, 0x3e, 0x20, 0x1f, 0xfc, + 0x57, 0x9c, 0xcf, 0xfe, 0x34, 0xa8, 0x80, 0x63, + 0x6a, 0xcc, 0xff, 0xe3, 0xf5, 0x18, 0x7, 0xff, + 0x14, 0x48, 0xcf, 0xff, 0x8c, 0xa4, 0x1, 0xcf, + 0xe8, 0x67, 0xff, 0xc8, 0x20, 0xf, 0xff, 0xf8, + 0x7, 0xff, 0xfc, 0x3, 0xff, 0xfe, 0x1, 0xff, + 0xc9, 0x10, 0xe, 0x71, 0x0, 0xff, 0xea, 0x35, + 0xff, 0xff, 0xf3, 0xb1, 0x84, 0x3, 0x1c, 0x77, + 0xff, 0xff, 0x37, 0xa4, 0xc0, 0x3f, 0xff, 0x8d, + 0x5b, 0xbf, 0xff, 0x1c, 0x83, 0x0, 0x0, + + /* U+7528 "用" */ + 0x0, 0xff, 0x9, 0xa2, 0x7f, 0xf9, 0xc8, 0x40, + 0x3f, 0xe4, 0x8b, 0xbf, 0xff, 0x42, 0x80, 0x7f, + 0xf1, 0x84, 0x44, 0x5f, 0xfc, 0x11, 0x10, 0x7, + 0x84, 0x8b, 0xff, 0x86, 0x22, 0x0, 0xff, 0xe6, + 0xb, 0xee, 0xff, 0xf0, 0xdc, 0x40, 0x32, 0xd6, + 0xef, 0xff, 0x11, 0xc4, 0x3, 0xff, 0xfe, 0x1, + 0xff, 0xff, 0x0, 0xe1, 0x6c, 0xff, 0xff, 0xe0, + 0xe3, 0x8, 0x6, 0x5b, 0xff, 0xff, 0xe1, 0xe3, + 0x8, 0x7, 0xff, 0xfc, 0x3, 0xff, 0x84, 0x2b, + 0x5d, 0xdf, 0xfc, 0x1a, 0x51, 0x0, 0xcb, 0x3d, + 0xdf, 0xfc, 0x3a, 0x51, 0x0, 0xff, 0xe2, 0x98, + 0x7, 0x8d, 0x84, 0x7f, 0xf8, 0x2c, 0x60, 0x1e, + 0x21, 0x1f, 0xfe, 0x1b, 0x18, 0x7, 0xff, 0x14, + 0x40, 0x3e, 0x10, 0xf, 0xff, 0xa8, 0xb9, 0x17, + 0xff, 0x5, 0x8c, 0x3, 0x84, 0x8b, 0xff, 0x88, + 0xc6, 0x1, 0xff, 0xc5, 0x31, 0x70, 0xc, 0x2d, + 0x7b, 0xbf, 0xfc, 0x1a, 0x51, 0x0, 0xc9, 0x3b, + 0xbf, 0xfc, 0x3a, 0x51, 0x0, 0xff, 0xe2, 0x37, + 0x10, 0x7, 0xff, 0xcc, 0x48, 0x40, 0x22, 0x7d, + 0xff, 0xff, 0xe1, 0x63, 0x8, 0x6, 0x5b, 0xff, + 0xff, 0xe1, 0xe3, 0x8, 0x7, 0xff, 0xd, 0x31, + 0x40, 0x21, 0x4c, 0x20, 0xf, 0xff, 0x59, 0xe3, + 0x88, 0x4, 0x98, 0x80, 0x1f, 0xfe, 0xb3, 0xa5, + 0x10, 0x8, 0xf1, 0x0, 0x3f, 0xfd, 0x44, 0xfc, + 0xc4, 0x1, 0x25, 0x38, 0x80, 0x7f, 0xf7, 0x18, + 0xc4, 0x3, 0xf8, 0x9f, 0xa0, 0x80, 0x21, 0x68, + 0x61, 0x0, 0xff, 0xe8, 0x9c, 0x77, 0xff, 0xf5, + 0x28, 0x6, 0x3e, 0x50, 0x8, 0x96, 0x94, 0x80, + 0x5a, 0xa0, 0xc0, 0x3f, 0xfa, 0x67, 0x6c, 0x20, + 0x1f, 0xe1, 0x35, 0x9f, 0x71, 0x0, 0xc4, 0xd5, + 0x9b, 0x92, 0x82, 0x1, 0xff, 0xc8, 0x39, 0xef, + 0xfd, 0x48, 0x1, 0x8e, 0x3f, 0x77, 0xdd, 0xcf, + 0xf7, 0x65, 0x31, 0x80, 0x40, + + /* U+7535 "电" */ + 0x0, 0xff, 0xe6, 0x9b, 0x4c, 0xf3, 0x18, 0x7, + 0xff, 0xb5, 0xb5, 0x9b, 0xb1, 0x80, 0x3f, 0xff, + 0xe0, 0x1f, 0xfc, 0xd5, 0xae, 0xef, 0xfe, 0x4d, + 0x20, 0x7, 0x2d, 0x77, 0x7f, 0xf2, 0x76, 0xc, + 0x3, 0xfe, 0x11, 0xff, 0xe5, 0x0, 0x7f, 0x8, + 0xff, 0xf2, 0x4c, 0x40, 0x3f, 0xf8, 0xc9, 0x17, + 0x7f, 0xfc, 0x1a, 0x73, 0x0, 0xe3, 0x7b, 0xbf, + 0xfe, 0x1b, 0x98, 0x7, 0xff, 0x30, 0x8d, 0x13, + 0xff, 0x82, 0xba, 0xe0, 0x1c, 0xda, 0x89, 0xff, + 0xc3, 0xd6, 0x0, 0xff, 0xff, 0x80, 0x7f, 0xf0, + 0xde, 0x73, 0x3f, 0xf8, 0x50, 0xa0, 0x1c, 0x91, + 0x99, 0xff, 0xc3, 0x84, 0x0, 0xff, 0xe6, 0x9, + 0x19, 0xff, 0xf0, 0x88, 0x40, 0x38, 0x48, 0xcf, + 0xff, 0x86, 0x42, 0x1, 0xff, 0xcc, 0x48, 0xcc, + 0xff, 0xe0, 0xdb, 0x98, 0x7, 0x1b, 0xde, 0x67, + 0xff, 0x6, 0xdc, 0xc0, 0x3f, 0xf9, 0x84, 0x67, + 0xff, 0xc2, 0x4d, 0x70, 0xe, 0x6d, 0x43, 0x3f, + 0xfe, 0xa, 0x6b, 0x0, 0x7f, 0xff, 0xc0, 0x3f, + 0xf8, 0x6f, 0x39, 0x9f, 0xfc, 0x1d, 0xb4, 0x0, + 0xe5, 0xbd, 0xcc, 0xff, 0xe0, 0xed, 0xa8, 0x7, + 0xff, 0x30, 0x48, 0xcf, 0xff, 0x82, 0x42, 0x1, + 0xf0, 0x91, 0x9f, 0xff, 0x4, 0x84, 0x3, 0xff, + 0x9a, 0x8f, 0x55, 0xff, 0xc1, 0x96, 0x30, 0xe, + 0x36, 0xaa, 0xff, 0xe4, 0xc7, 0xaa, 0x10, 0x7, + 0xe1, 0x33, 0xe4, 0xcb, 0x55, 0xff, 0xe0, 0xb6, + 0x38, 0x7, 0x36, 0x2a, 0xff, 0xf2, 0x5c, 0x6a, + 0xf7, 0xfa, 0xd8, 0x80, 0x24, 0x8c, 0xcd, 0x6e, + 0x60, 0x1f, 0xfc, 0x91, 0x0, 0xff, 0xe5, 0x18, + 0x8, 0x4, 0x20, 0x3, 0x0, 0xff, 0xe7, 0x8, + 0x80, 0x3c, 0x60, 0x1f, 0xfc, 0x96, 0xd2, 0x0, + 0xc4, 0x41, 0x0, 0xff, 0xe7, 0x39, 0x8, 0x6, + 0x4a, 0x85, 0x44, 0x19, 0xff, 0xf0, 0x91, 0x66, + 0x14, 0x3, 0x26, 0x20, 0x7, 0xff, 0x3c, 0xed, + 0x88, 0x3, 0x1b, 0xd5, 0xdb, 0x33, 0xff, 0x85, + 0x74, 0xc6, 0x1, 0xa, 0xfa, 0x80, 0x7f, 0xf4, + 0x4e, 0x3e, 0x9d, 0x8, 0x82, 0x20, 0xf, 0xfe, + 0x28, 0x91, 0x11, 0xa7, 0x29, 0x0, 0x30, + + /* U+76EE "目" */ + 0x4, 0x9e, 0xff, 0xff, 0xf1, 0x63, 0x90, 0x6, + 0x10, 0xf, 0xff, 0x10, 0x80, 0x7f, 0xc9, 0x19, + 0x9f, 0xfd, 0x59, 0x51, 0x0, 0xff, 0xe2, 0x11, + 0x9f, 0xff, 0x59, 0x8, 0xc0, 0x3f, 0xff, 0x46, + 0x45, 0xff, 0xd6, 0x71, 0x30, 0xf, 0xfe, 0x22, + 0xce, 0xef, 0xff, 0x56, 0x98, 0x40, 0x3f, 0xff, + 0x4d, 0x7f, 0xff, 0xfd, 0x5d, 0x72, 0x0, 0xff, + 0xff, 0x80, 0x7f, 0xf9, 0x5e, 0x73, 0x3f, 0xfa, + 0xbe, 0xc4, 0x1, 0xff, 0xc4, 0x12, 0x33, 0xff, + 0xea, 0x90, 0x80, 0x7f, 0xf1, 0x51, 0xee, 0xff, + 0xfa, 0xb0, 0xa2, 0x1, 0xff, 0xc4, 0x2c, 0x44, + 0xff, 0xea, 0xa9, 0x18, 0x7, 0xff, 0xe8, 0xc4, + 0x3, 0xff, 0xaa, 0x20, 0x1f, 0xfc, 0x65, 0xaf, + 0xff, 0xfe, 0xae, 0x39, 0x0, 0x7f, 0xfe, 0x96, + 0x77, 0x7f, 0xfa, 0xb6, 0xc2, 0x1, 0xff, 0xc4, + 0x32, 0x2f, 0xfe, 0xb3, 0x9, 0x80, 0x7e, + + /* U+77E5 "知" */ + 0x0, 0xff, 0xff, 0x80, 0x49, 0x3d, 0xfd, 0xb8, + 0xe6, 0x1, 0xff, 0xef, 0x3c, 0x41, 0x1, 0x27, + 0x12, 0x0, 0xff, 0xe5, 0x8, 0xff, 0xf3, 0x40, + 0x3f, 0xe2, 0x45, 0x20, 0x8, 0x8d, 0x44, 0x3, + 0xff, 0x90, 0xb5, 0xdd, 0xff, 0xcc, 0xf9, 0x30, + 0xf, 0xc2, 0x96, 0x40, 0x18, 0x9f, 0x3f, 0xff, + 0xf8, 0x9d, 0x28, 0x1, 0xff, 0xda, 0x26, 0xa3, + 0x0, 0xff, 0xeb, 0x8b, 0xe7, 0xff, 0xfd, 0x4a, + 0x1, 0xff, 0xc1, 0x4b, 0x93, 0x0, 0x8e, 0x37, + 0xb9, 0x6c, 0x20, 0x19, 0x27, 0xbb, 0xf7, 0xca, + 0x0, 0x7e, 0x30, 0xf, 0xfe, 0x71, 0xc4, 0xb0, + 0x80, 0x5, 0x65, 0xc8, 0x44, 0xe2, 0x1, 0xe3, + 0x11, 0xfe, 0x0, 0xff, 0xed, 0x73, 0x90, 0x0, + 0xe2, 0xa, 0x1, 0xff, 0xef, 0x36, 0xad, 0xdc, + 0xc4, 0x1, 0xff, 0xf0, 0x38, 0xcd, 0xff, 0x66, + 0xef, 0xe6, 0x10, 0xc, 0x97, 0xbb, 0xfe, 0xc8, + 0x40, 0xf, 0xfe, 0xb0, 0x91, 0x7f, 0xf0, 0x4, + 0x40, 0x1e, 0x12, 0x2f, 0xf1, 0x88, 0x7, 0xff, + 0x58, 0xaf, 0x6e, 0xff, 0xd4, 0xc4, 0x1, 0x85, + 0x66, 0xef, 0xff, 0x80, 0xa0, 0x1f, 0xfd, 0x51, + 0x23, 0x44, 0xff, 0x8, 0x18, 0x6, 0x2d, 0x74, + 0x4f, 0xf8, 0x84, 0x3, 0xff, 0xc2, 0x26, 0xa2, + 0x1, 0x8e, 0x36, 0xc, 0x3, 0xff, 0xd6, 0x4d, + 0x66, 0x1, 0xf1, 0xbe, 0xdb, 0x10, 0x7, 0xff, + 0x9c, 0xaa, 0x86, 0x1, 0xb, 0x4c, 0x90, 0x40, + 0x52, 0x72, 0x94, 0x40, 0x3f, 0xfc, 0x42, 0xd2, + 0xe4, 0x1, 0xb, 0xd3, 0x32, 0xa8, 0xc4, 0x0, + 0x15, 0xac, 0x94, 0x10, 0xf, 0xfe, 0xe8, 0xb5, + 0x42, 0x0, 0x62, 0x9b, 0x30, 0x0, 0xa4, 0xfc, + 0x18, 0x4, 0x4d, 0x74, 0xc4, 0x1, 0xe2, 0x7d, + 0xee, 0xff, 0xa9, 0x40, 0x3f, 0xf8, 0x42, 0x91, + 0xb2, 0x82, 0x1, 0xa, 0xc3, 0x90, 0x7, 0x89, + 0xfa, 0x50, 0x0, 0x29, 0xae, 0x40, 0x1f, 0x84, + 0x7f, 0xf8, 0x0, 0x1f, 0xfc, 0x11, 0x59, 0xcb, + 0x73, 0x0, 0xe4, 0x88, 0x28, 0x7, 0xf8, 0x9a, + 0xae, 0xaa, 0x61, 0x0, 0xf8, 0x5a, 0xb7, 0x7f, + 0xd9, 0x8, 0x1, 0xff, 0x16, 0x21, 0x0, 0x70, + 0xa4, 0xd3, 0x10, 0x7, 0xff, 0x4, 0x51, 0x50, + 0x40, 0x3f, 0x8c, 0x58, 0x8b, 0xfc, 0x64, 0x23, + 0xc6, 0x20, 0x1c, 0x73, 0x26, 0x10, 0x1, 0xbe, + 0xdb, 0x8, 0x7, 0xff, 0x7d, 0x6b, 0xbb, 0x6c, + 0x18, 0x7, 0x92, 0x2a, 0x99, 0x88, 0x30, 0xf, + 0xfe, 0x72, 0xd7, 0xfe, 0xd8, 0x30, 0xf, 0xfe, + 0x50, + + /* U+7801 "码" */ + 0x0, 0x1c, 0xf7, 0xff, 0xff, 0x2a, 0xd8, 0x49, + 0xef, 0x77, 0xff, 0x99, 0xdb, 0xac, 0x73, 0x0, + 0xff, 0xec, 0xf, 0xb1, 0x17, 0xff, 0x30, 0x48, + 0x83, 0xe0, 0x1f, 0xc7, 0x3d, 0xff, 0xba, 0xd8, + 0x40, 0x22, 0x7c, 0xff, 0xfd, 0x6c, 0x27, 0x3f, + 0xbb, 0xff, 0xc8, 0xc7, 0x30, 0xc, 0x3e, 0x40, + 0x1f, 0xfc, 0x32, 0xc4, 0x10, 0x0, 0xa5, 0x98, + 0x7, 0xff, 0x0, 0x48, 0xde, 0xae, 0xea, 0x70, + 0x22, 0xff, 0x87, 0xc4, 0x3, 0x31, 0x8, 0x7, + 0xff, 0x8, 0x51, 0x4, 0x1, 0x3e, 0x98, 0x7, + 0xff, 0xc, 0xb1, 0x9b, 0xb1, 0x80, 0x3f, 0xe6, + 0xe3, 0x0, 0x84, 0xd8, 0x3, 0xff, 0x84, 0x2f, + 0x86, 0x1, 0x26, 0x20, 0x7, 0xff, 0x11, 0xcc, + 0x40, 0x23, 0x16, 0x0, 0xff, 0x84, 0x84, 0x2, + 0x2e, 0x10, 0xf, 0xfe, 0x12, 0x62, 0x0, 0x47, + 0xa8, 0x1, 0xff, 0xc5, 0x10, 0xe, 0x6e, 0x30, + 0xf, 0xf1, 0x11, 0x80, 0x33, 0x11, 0x0, 0x3f, + 0xf8, 0x2b, 0xea, 0x1, 0x8a, 0xa9, 0x77, 0xfd, + 0xa, 0x20, 0x18, 0x4d, 0x80, 0x30, 0x90, 0x80, + 0x7f, 0x9b, 0x88, 0x2, 0x13, 0x60, 0xf, 0xfe, + 0x1, 0x3c, 0xa8, 0x7, 0x9, 0xa2, 0x7f, 0xc4, + 0x1, 0xc5, 0xc2, 0x1, 0x9, 0x38, 0x7, 0xfc, + 0x44, 0x0, 0xc5, 0xc4, 0x1, 0xff, 0x2c, 0x49, + 0x80, 0x70, 0xac, 0xe6, 0x6a, 0x62, 0x0, 0xff, + 0x31, 0x10, 0x2, 0x16, 0xdd, 0xff, 0xba, 0x10, + 0x3, 0x1c, 0xfe, 0xef, 0x5b, 0x10, 0x1c, 0x5a, + 0x88, 0x7, 0x8c, 0x90, 0xcf, 0x3f, 0x8, 0x7, + 0xf1, 0x11, 0xc0, 0x38, 0x44, 0x45, 0xfe, 0x11, + 0x0, 0x78, 0x44, 0x45, 0xce, 0x6, 0x5, 0xc4, + 0x1, 0xff, 0xcf, 0x27, 0xdf, 0xff, 0xfe, 0x6e, + 0xb9, 0x0, 0x66, 0x31, 0x1, 0x7a, 0x55, 0x4c, + 0x20, 0x7, 0xff, 0x98, 0x44, 0x60, 0x10, 0x98, + 0x80, 0x42, 0xd5, 0x47, 0x10, 0xf, 0xfe, 0x48, + 0x91, 0x7f, 0xf3, 0x44, 0x2, 0x63, 0x10, 0x8, + 0xf9, 0x80, 0x3f, 0xfa, 0x27, 0x39, 0xbb, 0xff, + 0xcc, 0xa6, 0x12, 0x23, 0x0, 0x66, 0x22, 0x0, + 0x7f, 0xf0, 0xc4, 0x3, 0xc2, 0x1, 0xf8, 0x84, + 0x7f, 0xf9, 0xa0, 0x6, 0xe3, 0x0, 0x84, 0x98, + 0x3, 0xff, 0x84, 0x4f, 0x9f, 0xfb, 0x60, 0x80, + 0x3c, 0x71, 0x9d, 0xdf, 0xfc, 0xca, 0x60, 0x35, + 0x0, 0xc5, 0xe4, 0x1, 0xff, 0xc5, 0x11, 0xff, + 0x38, 0x80, 0x7f, 0xf4, 0x93, 0xc, 0x2, 0x14, + 0x51, 0x0, 0xff, 0xe1, 0x13, 0xef, 0x77, 0xfa, + 0xd8, 0x40, 0x3f, 0xf9, 0xe4, 0xf2, 0x80, 0x19, + 0xf0, 0xc0, 0x3f, 0x84, 0xc8, 0xce, 0x7e, 0x0, + 0xff, 0xe9, 0x93, 0xe7, 0xff, 0xdb, 0x6, 0x1, + 0x13, 0x52, 0x0, 0x7f, 0xcb, 0x39, 0x95, 0x31, + 0x0, 0x7f, 0xf4, 0x89, 0x10, 0x40, 0x1f, 0x9, + 0x1b, 0x4f, 0xc9, 0x80, 0x7f, 0xf9, 0xce, 0x37, + 0xff, 0xee, 0xdc, 0x96, 0x20, 0xf, 0x80, + + /* U+786E "确" */ + 0x0, 0xff, 0xff, 0x80, 0x7f, 0xf4, 0xc5, 0x6b, + 0xb6, 0xe9, 0xcc, 0x3, 0xff, 0x9a, 0x4d, 0x57, + 0x7f, 0xfc, 0xc8, 0x40, 0xe, 0x26, 0x95, 0x12, + 0x47, 0xf0, 0xf, 0xc2, 0x1, 0xff, 0xc5, 0x1f, + 0x44, 0xff, 0xe6, 0x99, 0x8, 0x4, 0x97, 0x26, + 0x1, 0x89, 0xf3, 0xff, 0xee, 0xfe, 0xc9, 0x52, + 0x0, 0xff, 0x8a, 0xea, 0xef, 0xa1, 0x44, 0x3, + 0x1b, 0xd5, 0xdf, 0xf4, 0x20, 0x80, 0xb7, 0xb0, + 0x80, 0x42, 0x46, 0x7c, 0x44, 0x10, 0xc, 0x26, + 0xa6, 0x1, 0xff, 0xc0, 0x12, 0x44, 0xf1, 0x8, + 0x80, 0x23, 0xb9, 0x54, 0x4f, 0xe3, 0x21, 0x4b, + 0x84, 0x0, 0x92, 0x73, 0x73, 0x36, 0xc3, 0x80, + 0x71, 0xc7, 0x31, 0x0, 0x7f, 0xf1, 0x93, 0x14, + 0x2, 0x15, 0x31, 0x0, 0xff, 0xa, 0xdd, 0x28, + 0x80, 0x9, 0xe1, 0x88, 0x2, 0x14, 0x8b, 0x51, + 0x0, 0x1c, 0x7b, 0x90, 0x7, 0xff, 0x1c, 0x8d, + 0x4, 0x2, 0x5c, 0x40, 0xf, 0xe3, 0x8d, 0xa5, + 0x10, 0xc, 0x4f, 0x9f, 0xfd, 0xd6, 0xc2, 0x1, + 0x8e, 0x33, 0xff, 0xfa, 0xd4, 0x3, 0xfc, 0xf8, + 0x40, 0x11, 0x63, 0x80, 0x7f, 0xde, 0xe2, 0x1, + 0xf0, 0x91, 0x70, 0x88, 0x3, 0x84, 0x44, 0x5e, + 0x10, 0xf, 0xfe, 0x22, 0x62, 0x80, 0x63, 0xa9, + 0xbb, 0xff, 0x22, 0x2f, 0x60, 0xc0, 0x31, 0xc6, + 0x6e, 0xec, 0x93, 0x0, 0x8e, 0x73, 0x77, 0xb2, + 0x10, 0x3, 0xff, 0x84, 0x7a, 0xe2, 0x1, 0x84, + 0x91, 0x3f, 0xed, 0x60, 0x33, 0x28, 0x7, 0xff, + 0x75, 0x25, 0xc4, 0x3, 0x13, 0x56, 0x67, 0x42, + 0x0, 0x7f, 0xf0, 0x8e, 0x7b, 0xff, 0x6c, 0x18, + 0x4, 0x71, 0xbf, 0xfd, 0xd2, 0x80, 0x1f, 0xf0, + 0xb7, 0xa8, 0x80, 0x7b, 0x9c, 0xcf, 0x88, 0x40, + 0x3f, 0xf8, 0x62, 0x46, 0x78, 0x84, 0x3, 0x84, + 0x8c, 0xf8, 0x84, 0x3, 0xfe, 0x4b, 0x84, 0x0, + 0xff, 0xe9, 0x9c, 0x66, 0x77, 0xc9, 0x80, 0x47, + 0x3f, 0x99, 0xe8, 0x40, 0xf, 0xe5, 0xe5, 0x10, + 0xf, 0xfe, 0x79, 0x80, 0x7f, 0xf6, 0x56, 0xe9, + 0x44, 0xd9, 0x48, 0x3, 0xff, 0x92, 0x22, 0x0, + 0xc7, 0x19, 0xbb, 0xbe, 0x4c, 0x2, 0x39, 0xfd, + 0xde, 0xc8, 0x40, 0xf, 0xf0, 0xad, 0xfe, 0xde, + 0x88, 0x7, 0xff, 0x20, 0x88, 0xe0, 0x1c, 0x24, + 0x5e, 0x10, 0xe, 0x12, 0x2f, 0x84, 0x3, 0xff, + 0x82, 0x23, 0x0, 0x7d, 0xe2, 0x1, 0xff, 0xc2, + 0x6d, 0x30, 0x8, 0xe3, 0x37, 0x7f, 0xf8, 0xf9, + 0x6, 0x1, 0xff, 0xc9, 0x27, 0xcf, 0xfe, 0xa5, + 0x0, 0xf2, 0x6a, 0x0, 0x47, 0x6a, 0x64, 0x5f, + 0xfc, 0x81, 0x70, 0xf, 0xfe, 0x58, 0x8f, 0xff, + 0x0, 0x33, 0x9c, 0x40, 0x4, 0x88, 0x20, 0xf, + 0xff, 0x1, 0x46, 0x77, 0x7f, 0xa8, 0xdd, 0x44, + 0x0, 0x4b, 0x66, 0x1, 0xff, 0xc2, 0x11, 0x80, + 0x31, 0x8b, 0x80, 0x61, 0x0, 0xff, 0x19, 0x91, + 0x57, 0x11, 0x80, 0x7e, 0x16, 0xf6, 0x10, 0x0, + 0xb4, 0xc1, 0x80, 0x7f, 0xf0, 0x4a, 0x33, 0xb9, + 0xff, 0xb6, 0xc, 0x2, 0x22, 0x30, 0x7, 0xf0, + 0xa4, 0x55, 0x50, 0xa2, 0x1, 0xf8, 0x5a, 0xad, + 0x8d, 0xaa, 0x10, 0x3, 0xff, 0x86, 0x56, 0xa2, + 0x1, 0xc2, 0x22, 0x45, 0x8e, 0x93, 0x0, 0xff, + 0xe8, 0xa, 0x4e, 0x4a, 0x8, 0x7, 0xff, 0x14, + 0xe3, 0xbf, 0xfb, 0xb9, 0xb7, 0x4e, 0x62, 0x1, + 0x0, + + /* U+79D2 "秒" */ + 0x0, 0xff, 0xe4, 0x9, 0x23, 0x43, 0xa0, 0x80, + 0x7f, 0xf1, 0x9, 0xf3, 0xbb, 0x4a, 0x0, 0x7f, + 0xf3, 0xc4, 0x8d, 0x19, 0xe2, 0x6b, 0x37, 0xfb, + 0x6e, 0x5e, 0x2f, 0x25, 0x4, 0x3, 0xff, 0x82, + 0x3e, 0x23, 0xc6, 0x20, 0x1f, 0xfc, 0x92, 0x7c, + 0xef, 0xf7, 0x6e, 0x5c, 0xc3, 0xb2, 0x99, 0x0, + 0x4, 0x91, 0x5e, 0x62, 0x94, 0x40, 0x3f, 0xfb, + 0xe4, 0x8a, 0x62, 0x44, 0x34, 0x56, 0x62, 0x8, + 0x6, 0x48, 0xdb, 0xa8, 0x65, 0x31, 0x0, 0xff, + 0xf0, 0x9c, 0xef, 0x6e, 0xb2, 0xea, 0x63, 0x48, + 0x3, 0xff, 0x8a, 0x2b, 0x39, 0x75, 0x2c, 0x60, + 0x1f, 0xfc, 0x14, 0x7b, 0xde, 0xe5, 0x28, 0x7, + 0xff, 0x79, 0x7d, 0x8d, 0x15, 0x38, 0x3, 0xff, + 0x84, 0xc0, 0xe4, 0x22, 0x58, 0x72, 0x0, 0xff, + 0x9, 0xa2, 0x7f, 0x78, 0x80, 0x67, 0xe4, 0x4f, + 0x19, 0x8, 0x1e, 0x20, 0x4, 0x29, 0x86, 0x1, + 0xff, 0xc1, 0x27, 0x95, 0x0, 0x8a, 0x6d, 0x0, + 0x3f, 0xb, 0x7d, 0xdf, 0xea, 0x62, 0x0, 0xc6, + 0xf7, 0x7e, 0xdb, 0x52, 0x44, 0x8, 0x4, 0x98, + 0x80, 0x1f, 0xfc, 0x45, 0x97, 0x10, 0x0, 0xb7, + 0xb0, 0x80, 0x7c, 0x2c, 0x45, 0xf8, 0x40, 0x3e, + 0x12, 0x2f, 0x84, 0x4b, 0x66, 0x1, 0x26, 0x20, + 0x7, 0xff, 0x18, 0xe9, 0x88, 0x2, 0x4d, 0x40, + 0xf, 0xb, 0x56, 0xef, 0xb2, 0xd4, 0x3, 0xc9, + 0x19, 0xbb, 0xd9, 0x79, 0x26, 0x1, 0x26, 0xb8, + 0x80, 0x7f, 0xf1, 0xca, 0xd4, 0x80, 0x24, 0xf5, + 0x0, 0xff, 0xe0, 0x93, 0x5a, 0x0, 0x79, 0x2e, + 0xca, 0x40, 0x2, 0x7f, 0x61, 0x0, 0xa, 0xfb, + 0x8, 0x7, 0xff, 0x24, 0xf1, 0x4, 0x2, 0x72, + 0x20, 0x7, 0xfc, 0x97, 0x24, 0x1, 0xf8, 0x96, + 0xb2, 0x98, 0x4e, 0xd4, 0x80, 0xe6, 0x10, 0x3, + 0xff, 0x92, 0x23, 0x25, 0xd5, 0xef, 0xeb, 0x90, + 0x7, 0xf0, 0xb7, 0xb0, 0x80, 0x8c, 0x1, 0x89, + 0x10, 0x22, 0x59, 0xee, 0x15, 0xef, 0x6b, 0x90, + 0x9, 0x19, 0xf2, 0x19, 0x0, 0x7f, 0x13, 0xe7, + 0x73, 0xfd, 0xc4, 0x1, 0xff, 0xc1, 0x5b, 0x84, + 0x0, 0x24, 0xb1, 0x0, 0x66, 0xd9, 0xa5, 0x10, + 0x24, 0xe4, 0x11, 0x80, 0x23, 0xae, 0xcc, 0xd0, + 0x80, 0x18, 0xb5, 0xc0, 0x9, 0x72, 0x40, 0x1b, + 0x50, 0x80, 0x3f, 0xc9, 0x36, 0xa2, 0x2, 0xd0, + 0xbc, 0x1, 0xf1, 0x25, 0xd3, 0xba, 0xa8, 0xa2, + 0x1, 0xc5, 0x54, 0x42, 0x28, 0xcc, 0x8a, 0xf5, + 0xee, 0x42, 0xbe, 0xc2, 0x1, 0x25, 0xb1, 0x0, + 0x7e, 0x15, 0xaa, 0x30, 0x80, 0x12, 0x2c, 0xcc, + 0x1, 0xfe, 0x14, 0x88, 0x20, 0x80, 0x7e, 0x27, + 0xbd, 0xdb, 0x31, 0x75, 0xa, 0x44, 0x6a, 0xb4, + 0x0, 0x85, 0x7d, 0x84, 0x3, 0xf8, 0x44, 0x60, + 0x11, 0xc4, 0xb1, 0x0, 0x7f, 0xf6, 0x5, 0x27, + 0xe5, 0x4, 0x0, 0x2b, 0x76, 0x40, 0xf, 0xfe, + 0x2, 0x45, 0xbc, 0xf3, 0x90, 0x7, 0xff, 0x58, + 0x4d, 0xa7, 0x2d, 0x88, 0x2, 0x38, 0xda, 0x51, + 0x0, 0xff, 0xe1, 0xa, 0xc3, 0x10, 0x7, 0xff, + 0x4c, 0x51, 0xeb, 0x7f, 0x25, 0x88, 0x2, 0x26, + 0xbd, 0x73, 0x0, 0xff, 0xef, 0x89, 0x22, 0xbc, + 0x55, 0xef, 0x72, 0xe1, 0x48, 0x40, 0x2, 0x8f, + 0x5b, 0xa9, 0x41, 0x0, 0xff, 0xef, 0x8a, 0xde, + 0x5d, 0x43, 0xaa, 0x10, 0x80, 0x44, 0x8d, 0x5b, + 0xd7, 0xa, 0x40, 0x1f, 0xfe, 0x31, 0x5b, 0x84, + 0x11, 0x1a, 0xbc, 0x56, 0x77, 0xed, 0xca, 0x90, + 0x7, 0xff, 0x68, 0x5b, 0x3f, 0xf5, 0xb0, 0x7, + 0xc2, 0xd7, 0xdc, 0xca, 0x87, 0x53, 0x10, 0xf, + 0xfe, 0x98, + + /* U+79FB "移" */ + 0x0, 0xff, 0xff, 0x80, 0x7f, 0xf0, 0xc4, 0x91, + 0x9e, 0x6e, 0x9c, 0xc0, 0x3f, 0xf8, 0x67, 0x3b, + 0xfe, 0xed, 0xa5, 0x10, 0xf, 0xfe, 0x58, 0x91, + 0xa2, 0xb3, 0xc4, 0xd5, 0xef, 0x7f, 0x6d, 0xcc, + 0x32, 0x2c, 0x6d, 0xb1, 0x0, 0x7f, 0xa, 0x4f, + 0x31, 0x0, 0x49, 0xc8, 0x20, 0x1f, 0x8, 0x7, + 0xff, 0x4, 0xe3, 0x37, 0x2e, 0xa6, 0x1d, 0x95, + 0x8, 0x40, 0x21, 0x35, 0x79, 0xac, 0xfb, 0x62, + 0x0, 0xf8, 0xe3, 0x6d, 0x88, 0x3, 0xb, 0x5f, + 0x7f, 0xfe, 0xef, 0xec, 0x84, 0x10, 0xf, 0x8e, + 0xad, 0x51, 0x59, 0xe2, 0x6a, 0x58, 0x80, 0x32, + 0xd5, 0x21, 0x94, 0xc4, 0x3, 0xc4, 0xb3, 0xb8, + 0xe6, 0x0, 0x12, 0x33, 0xff, 0x10, 0x80, 0x70, + 0x87, 0xb0, 0x80, 0x7e, 0x26, 0xab, 0xa9, 0x87, + 0x65, 0x7f, 0x10, 0xf, 0xfe, 0x8, 0x9b, 0x4e, + 0x62, 0x98, 0x80, 0x22, 0x7d, 0xd6, 0x67, 0xf7, + 0xa9, 0x80, 0x61, 0x59, 0x72, 0x0, 0xff, 0xea, + 0xa4, 0xe6, 0x25, 0x8c, 0x40, 0x46, 0x0, 0x13, + 0xee, 0x42, 0x8, 0x4, 0x27, 0x1c, 0xe4, 0x0, + 0x15, 0xbb, 0x28, 0x7, 0xfc, 0x46, 0x89, 0xfd, + 0xe2, 0x1, 0x9b, 0xd5, 0x13, 0x6, 0x52, 0x11, + 0x16, 0x73, 0xfb, 0xed, 0xcc, 0x44, 0x6f, 0x79, + 0x51, 0xd, 0xc7, 0x20, 0x1, 0x35, 0x5a, 0x88, + 0x7, 0xfc, 0x2b, 0xf7, 0x7f, 0xa9, 0x88, 0x3, + 0x13, 0x55, 0xdf, 0xbb, 0xf7, 0x54, 0xc6, 0x20, + 0x29, 0x19, 0x89, 0x51, 0x2, 0x57, 0x71, 0x80, + 0x9, 0xaf, 0x25, 0x4, 0x3, 0xff, 0x84, 0x4c, + 0x67, 0xf1, 0x8, 0x7, 0xc2, 0x46, 0x7c, 0x5c, + 0xe0, 0x1f, 0x89, 0x5e, 0x29, 0x4, 0x3, 0x8d, + 0xf3, 0x12, 0x82, 0x1, 0xff, 0xc4, 0x15, 0xac, + 0xcf, 0x6d, 0xa8, 0x7, 0x8e, 0x33, 0x3e, 0x72, + 0x35, 0x68, 0x9b, 0xdf, 0xda, 0x85, 0x31, 0x1, + 0x10, 0x0, 0x44, 0x72, 0xc6, 0x1, 0xff, 0xce, + 0x39, 0xb4, 0x0, 0xf1, 0xc6, 0xb9, 0x80, 0x44, + 0xd5, 0x95, 0x2e, 0xc8, 0x40, 0x2, 0x47, 0xab, + 0x94, 0x0, 0x84, 0x9f, 0x54, 0xc0, 0x3f, 0xf9, + 0xab, 0x2c, 0x40, 0x1f, 0x84, 0xe3, 0x31, 0x6, + 0x4d, 0x34, 0xca, 0xf3, 0x79, 0xdf, 0xb5, 0x9b, + 0x12, 0xa2, 0x1, 0x8e, 0x37, 0xff, 0xfd, 0xd9, + 0x2a, 0x40, 0x1f, 0xc4, 0xf2, 0xa2, 0x4, 0x41, + 0x0, 0xc6, 0xcc, 0x30, 0x37, 0xcc, 0x38, 0xac, + 0xd4, 0x32, 0x18, 0x2c, 0xed, 0xb9, 0x80, 0x42, + 0x3f, 0xfc, 0x0, 0xe, 0x13, 0x20, 0x30, 0xf, + 0x85, 0xa6, 0xc, 0x5, 0xae, 0x88, 0x3, 0x3f, + 0xc7, 0x41, 0x80, 0x7, 0x80, 0x31, 0x2c, 0xe7, + 0xd3, 0x18, 0x0, 0xdf, 0x3b, 0xbf, 0xed, 0x62, + 0x0, 0xc2, 0xbe, 0xa2, 0x1, 0xc2, 0xb5, 0x8, + 0x0, 0x29, 0xb7, 0x10, 0xf, 0x84, 0x9f, 0xaa, + 0x93, 0xab, 0x39, 0xdb, 0x4c, 0x62, 0x1, 0xc4, + 0x76, 0xa2, 0x1, 0xf1, 0x3f, 0xb9, 0x0, 0x47, + 0x30, 0x80, 0x1c, 0x2d, 0x54, 0x41, 0x1, 0x58, + 0x62, 0x0, 0xff, 0xe0, 0x12, 0xa9, 0x1f, 0x94, + 0xc4, 0x5, 0x1e, 0x6a, 0x10, 0x40, 0x51, 0xef, + 0xf2, 0x10, 0x44, 0x93, 0xf0, 0x60, 0x11, 0x3f, + 0xb9, 0x0, 0x78, 0x50, 0xc8, 0x5, 0x2e, 0xca, + 0x20, 0x1f, 0xfc, 0x53, 0x8d, 0xcb, 0xde, 0xb8, + 0x65, 0x7b, 0xfc, 0x84, 0x10, 0x13, 0x7b, 0xff, + 0x5b, 0x10, 0x4, 0x93, 0xf0, 0x60, 0x1f, 0xc5, + 0x13, 0x2b, 0xa5, 0x10, 0xf, 0xfe, 0x48, 0x9a, + 0x10, 0x7, 0xc2, 0x6f, 0x74, 0xc4, 0x1, 0x8, + 0x80, 0x23, 0x7b, 0xa6, 0x20, 0xf, 0xfe, 0xa, + 0x32, 0x88, 0x7, 0xff, 0x50, 0x4d, 0xa7, 0x3a, + 0xd8, 0x80, 0x30, 0xa4, 0x66, 0x21, 0x4, 0x3, + 0xff, 0xbc, 0x26, 0x8c, 0xf3, 0x59, 0xdc, 0xc9, + 0x63, 0x10, 0x1, 0x23, 0xd6, 0xf5, 0xb9, 0x80, + 0x7f, 0xf7, 0x89, 0xf3, 0xfb, 0x2e, 0x61, 0x94, + 0xc4, 0x0, 0x24, 0xb1, 0x7b, 0xab, 0x85, 0x20, + 0xf, 0xff, 0x11, 0x3c, 0x30, 0x80, 0x92, 0x33, + 0xcd, 0xef, 0x73, 0x69, 0xd0, 0x80, 0x3f, 0xfb, + 0x22, 0xd9, 0xff, 0xad, 0x80, 0x3e, 0x49, 0xef, + 0xed, 0xb9, 0x86, 0x42, 0x10, 0xf, 0xfe, 0x90, + + /* U+7A0B "程" */ + 0x0, 0xff, 0xe4, 0x9, 0xab, 0xcc, 0x29, 0x0, + 0x7f, 0xf9, 0xc4, 0x8d, 0x15, 0xe2, 0x6a, 0xf7, + 0xbf, 0xb2, 0xa1, 0x9e, 0xb2, 0x94, 0x41, 0x27, + 0xbf, 0xff, 0xfa, 0x3d, 0x26, 0x1, 0xf1, 0xc6, + 0xff, 0xbb, 0x72, 0xea, 0x1d, 0x95, 0x8, 0x40, + 0x2, 0x6a, 0xd1, 0x54, 0x84, 0x10, 0xf, 0xc2, + 0x22, 0x2f, 0xfe, 0x28, 0x80, 0x7f, 0xf0, 0xce, + 0xd4, 0x84, 0x8d, 0x15, 0x9d, 0xc8, 0x20, 0x19, + 0x23, 0x2a, 0x5d, 0x50, 0x84, 0x3, 0xf1, 0x4e, + 0x6e, 0xff, 0xf1, 0x69, 0x80, 0x3f, 0xf8, 0x67, + 0x1b, 0xdb, 0x97, 0x53, 0x13, 0xa4, 0x1, 0xff, + 0xff, 0x0, 0xff, 0xf6, 0x9, 0x19, 0xfe, 0x5e, + 0x10, 0xc, 0xfc, 0x86, 0x7e, 0x20, 0xf, 0xef, + 0x10, 0xf, 0xfe, 0x28, 0x98, 0x7, 0xff, 0x8, + 0x5b, 0xb3, 0x3f, 0x5b, 0x90, 0x6, 0x37, 0xbc, + 0xce, 0xdb, 0x40, 0xf, 0x89, 0xf3, 0xff, 0xff, + 0x8b, 0x4a, 0x1, 0xff, 0xc3, 0x16, 0x22, 0xfc, + 0x20, 0x1f, 0x9, 0x17, 0xc2, 0xe0, 0xe2, 0x45, + 0xff, 0xd3, 0x10, 0xf, 0xc2, 0xd5, 0xbb, 0xf4, + 0x20, 0x7, 0x8e, 0x73, 0x77, 0xb2, 0xc, 0xe, + 0x33, 0x77, 0xff, 0xa3, 0x90, 0x60, 0x1f, 0xfc, + 0x32, 0x79, 0x50, 0xf, 0x1c, 0x64, 0x20, 0x80, + 0x42, 0xd5, 0xbb, 0xff, 0xd6, 0xc8, 0x30, 0xf, + 0xfe, 0x2, 0x5c, 0x98, 0x7, 0xf1, 0x3d, 0xec, + 0x18, 0x0, 0x58, 0x8b, 0xff, 0xae, 0x2e, 0x1, + 0xfe, 0x16, 0xf6, 0x10, 0x33, 0x10, 0x6, 0x47, + 0x71, 0x81, 0xbe, 0xdb, 0xae, 0xf7, 0x7f, 0xf0, + 0x2d, 0x44, 0x3, 0x2d, 0x77, 0x7f, 0xf0, 0x7e, + 0x50, 0x3, 0xf9, 0x22, 0x8, 0x2, 0xd5, 0x62, + 0x1, 0xdd, 0x3c, 0xe4, 0x2, 0xb8, 0xc0, 0x23, + 0xff, 0xc0, 0x73, 0x0, 0xf0, 0x8f, 0xff, 0xc, + 0x3, 0xf8, 0xe6, 0x4c, 0x20, 0x4d, 0x6e, 0x20, + 0x1f, 0x9, 0x44, 0xc4, 0x2a, 0xd0, 0x40, 0x3f, + 0xf8, 0xe, 0x1, 0xf0, 0x80, 0x7f, 0xf2, 0x5, + 0x2b, 0x58, 0x80, 0x9, 0x72, 0x40, 0x1f, 0xfc, + 0x4, 0x77, 0x20, 0x81, 0xc6, 0xff, 0xff, 0xad, + 0x84, 0x3, 0x2d, 0x7f, 0xff, 0xf0, 0x31, 0x84, + 0x3, 0x84, 0xc, 0x2, 0x28, 0x96, 0x10, 0xf, + 0xfe, 0x38, 0xf8, 0x91, 0x7f, 0x84, 0x3, 0xe1, + 0x22, 0xff, 0xe0, 0x30, 0x7, 0xe4, 0x88, 0x2b, + 0xf3, 0x90, 0x7, 0xff, 0x24, 0x9f, 0x37, 0x7f, + 0xe6, 0x10, 0xc, 0xb5, 0xbb, 0xff, 0xc0, 0xa6, + 0x10, 0xf, 0x85, 0xaa, 0xc, 0x3, 0xff, 0xfe, + 0x1, 0xff, 0xff, 0x0, 0xff, 0xe0, 0xb, 0x67, + 0xff, 0xff, 0xf, 0x18, 0x40, 0x32, 0xdf, 0xff, + 0xff, 0xf, 0x1c, 0x40, 0x3f, 0xff, 0xa0, + + /* U+7A7A "空" */ + 0x0, 0xff, 0xe8, 0x11, 0xa2, 0x71, 0x0, 0x7f, + 0xfb, 0x45, 0x3e, 0xef, 0x4d, 0x10, 0x7, 0xff, + 0xfc, 0x3, 0xff, 0x92, 0x93, 0xdf, 0xff, 0xfc, + 0xbe, 0x93, 0x0, 0xc4, 0xfb, 0xff, 0xff, 0xcc, + 0xd8, 0x20, 0xf, 0xff, 0xf8, 0xb5, 0xf7, 0x7f, + 0x63, 0x90, 0x6, 0x27, 0xce, 0xef, 0x6c, 0x18, + 0x6, 0x38, 0xde, 0xef, 0xed, 0x83, 0x0, 0xff, + 0xe3, 0x38, 0x8f, 0xf3, 0x19, 0x0, 0x67, 0xd3, + 0x11, 0xf1, 0x80, 0x7c, 0x26, 0x23, 0xfc, 0x62, + 0xe0, 0x1f, 0xfc, 0xe1, 0x6e, 0x40, 0xc, 0x7a, + 0x80, 0x1f, 0xfc, 0xe1, 0x5c, 0x66, 0xcb, 0xa6, + 0x1, 0x24, 0x7f, 0x75, 0xf0, 0x60, 0x1c, 0x2b, + 0x70, 0x80, 0x19, 0x25, 0x84, 0x3, 0xff, 0x9e, + 0x47, 0xfe, 0xab, 0x85, 0x10, 0xc, 0x23, 0xf0, + 0x0, 0x4d, 0xab, 0x29, 0x44, 0x2, 0x38, 0x95, + 0x10, 0xf, 0xfe, 0x18, 0x88, 0xc0, 0x3f, 0xcb, + 0xd1, 0x39, 0xb6, 0xc2, 0x1, 0x84, 0x8d, 0x5a, + 0x2b, 0x37, 0xb2, 0x54, 0x80, 0x21, 0x49, 0xe7, + 0x20, 0xf, 0xf0, 0x93, 0x0, 0x62, 0x8d, 0xfe, + 0xef, 0xdf, 0x6a, 0x20, 0x2, 0x35, 0x10, 0x9, + 0x23, 0x31, 0x52, 0xea, 0x64, 0x1, 0x89, 0x62, + 0xfe, 0xd8, 0x80, 0x3f, 0xf8, 0x2b, 0x30, 0x84, + 0x1, 0xc2, 0x3f, 0x80, 0x31, 0x34, 0x49, 0x80, + 0x64, 0x9b, 0x51, 0x11, 0x1a, 0xbc, 0x5e, 0xf6, + 0xd3, 0xa0, 0x80, 0x7f, 0xf1, 0x4d, 0xef, 0x7f, + 0xee, 0xef, 0xfb, 0xfe, 0xd9, 0x51, 0x0, 0xf9, + 0x6b, 0xb9, 0xb9, 0x50, 0xe8, 0x42, 0x1, 0xff, + 0xd1, 0x11, 0xff, 0x80, 0x3f, 0xf8, 0xc4, 0xfb, + 0xff, 0xff, 0xe2, 0xd7, 0x20, 0xf, 0xfe, 0x20, + 0x80, 0x7f, 0xf8, 0x84, 0x3, 0xff, 0x88, 0x4f, + 0x9f, 0xff, 0xfc, 0x5e, 0x93, 0x0, 0xc4, 0xfb, + 0xff, 0xff, 0xc7, 0xc7, 0x20, 0xf, 0xff, 0xf8, + 0x7, 0xff, 0xfc, 0x3, 0xff, 0xfe, 0x1, 0xf1, + 0x88, 0x7, 0xc2, 0x1, 0xff, 0xd1, 0x5a, 0xff, + 0xff, 0xe6, 0xec, 0x18, 0x6, 0x27, 0xcf, 0xff, + 0xfe, 0x6e, 0xc1, 0x80, 0x7f, 0xfd, 0xc0, + + /* U+7AD6 "竖" */ + 0x0, 0xff, 0xe3, 0x12, 0xbc, 0x44, 0xc6, 0x1, + 0x84, 0x7f, 0xfa, 0x20, 0x1f, 0xfc, 0x21, 0x48, + 0x99, 0x9d, 0x4, 0x3, 0x9b, 0x25, 0xde, 0xd5, + 0x10, 0x2, 0xdf, 0x77, 0xff, 0x43, 0xf1, 0xcc, + 0x3, 0xfc, 0x78, 0xac, 0xd5, 0x19, 0x80, 0x3f, + 0xf8, 0x82, 0x64, 0x20, 0x18, 0x44, 0x45, 0xff, + 0xc2, 0x10, 0xe, 0x14, 0x41, 0x80, 0x7f, 0xf5, + 0xd2, 0x7e, 0x48, 0x2, 0x36, 0xed, 0xdf, 0xfb, + 0x2d, 0x40, 0x31, 0x4d, 0x18, 0x7, 0xff, 0x68, + 0x9a, 0x14, 0x0, 0x4f, 0xec, 0x40, 0x1f, 0x92, + 0xe1, 0x0, 0x24, 0xb6, 0x20, 0xf, 0xfe, 0xe0, + 0xac, 0xb9, 0x0, 0xe, 0x79, 0xcc, 0x2, 0x15, + 0xaa, 0x28, 0x80, 0x9, 0xe1, 0x84, 0x3, 0xff, + 0xbe, 0x71, 0xce, 0x60, 0x3, 0x8d, 0xb8, 0x9c, + 0xa5, 0x10, 0x1, 0xcf, 0xc1, 0x80, 0x7f, 0xf8, + 0xce, 0x3a, 0xc, 0x0, 0x28, 0xec, 0x40, 0x1, + 0x5a, 0xd6, 0x20, 0xf, 0xff, 0x29, 0x2d, 0x60, + 0x80, 0x7f, 0x9b, 0x1c, 0xc4, 0x3, 0xff, 0xba, + 0x24, 0x8d, 0x15, 0x9d, 0xb4, 0xe8, 0x40, 0x2, + 0x45, 0x42, 0x0, 0x9, 0xb4, 0xe7, 0x6d, 0xcb, + 0xb2, 0x10, 0x80, 0x7f, 0xf4, 0xcd, 0x23, 0x2e, + 0x5d, 0x4c, 0x40, 0x4, 0xb1, 0x7d, 0xb7, 0x57, + 0xba, 0xb7, 0x41, 0x0, 0x89, 0x1a, 0x26, 0xf7, + 0xb1, 0xc8, 0x3, 0xc5, 0x3d, 0x99, 0x73, 0x10, + 0x7, 0xff, 0x4, 0xd2, 0xe4, 0x80, 0x21, 0x5a, + 0xed, 0xa7, 0x41, 0x0, 0xe2, 0x48, 0xbe, 0xe6, + 0x54, 0x32, 0x10, 0x0, 0xe3, 0x9c, 0x80, 0x3e, + 0x13, 0x3e, 0x10, 0xf, 0x24, 0xf7, 0xfd, 0x6c, + 0x20, 0x62, 0xc0, 0x10, 0xbe, 0x98, 0x7, 0xff, + 0xc, 0x4d, 0x5e, 0x6f, 0x7f, 0xb5, 0xc8, 0x3, + 0xf8, 0x8d, 0x13, 0xff, 0x92, 0xa6, 0x44, 0x0, + 0x89, 0xa1, 0x91, 0x3f, 0xf9, 0x44, 0x60, 0x1f, + 0xe3, 0xae, 0xbb, 0xff, 0xe5, 0x53, 0x10, 0x6, + 0x15, 0x9b, 0xbf, 0xfe, 0x57, 0x51, 0x0, 0x7f, + 0xf, 0x3a, 0x27, 0xfc, 0x64, 0x22, 0x24, 0x4f, + 0xfe, 0x49, 0x90, 0x88, 0x8d, 0x13, 0xff, 0x81, + 0xc0, 0x1f, 0xe2, 0x6a, 0xbb, 0xfd, 0xe4, 0xa6, + 0x42, 0x9, 0xf7, 0x7f, 0xfc, 0x7a, 0xa3, 0x8, + 0x88, 0xd4, 0xfe, 0xef, 0xf4, 0xb1, 0x0, 0x7f, + 0xf2, 0x17, 0x10, 0x2, 0x16, 0xf5, 0x10, 0xf, + 0xfe, 0x2a, 0x6a, 0x0, 0x64, 0xc4, 0x0, 0xff, + 0xe9, 0x8a, 0xfa, 0x80, 0x64, 0xe4, 0x0, 0xff, + 0xe2, 0x2f, 0xa0, 0x4, 0x2d, 0xc8, 0x1, 0xff, + 0xd6, 0x4c, 0x52, 0x35, 0x7d, 0x61, 0x0, 0xff, + 0xe1, 0x2f, 0xa8, 0x4, 0x2f, 0x48, 0x1, 0xff, + 0xc7, 0x5a, 0xff, 0xff, 0xe1, 0x74, 0xa9, 0x1a, + 0xbc, 0xe7, 0x7f, 0xff, 0xf0, 0xa9, 0x40, 0x30, + 0xb6, 0x7f, 0xff, 0xf0, 0xb5, 0xc8, 0x3, 0xff, + 0xf6, + + /* U+7AEF "端" */ + 0x0, 0xff, 0xff, 0x80, 0x7e, 0x15, 0x9c, 0xca, + 0xdc, 0x80, 0x3f, 0xf9, 0x67, 0x1b, 0xff, 0xad, + 0x40, 0x3f, 0xfa, 0x84, 0xa6, 0x72, 0xf8, 0x80, + 0x7f, 0x1c, 0x6f, 0x75, 0x6c, 0x20, 0x1f, 0xfc, + 0x93, 0x8d, 0xee, 0xb6, 0xc, 0x3, 0xff, 0xac, + 0x26, 0x23, 0x38, 0x80, 0x7f, 0xf2, 0xc4, 0xc4, + 0x63, 0x0, 0xff, 0xff, 0x80, 0x78, 0x91, 0x9d, + 0xfa, 0x70, 0x80, 0x21, 0x4a, 0x77, 0xe6, 0x41, + 0x0, 0xff, 0xf1, 0xb6, 0xcc, 0x47, 0x3a, 0x8, + 0x6, 0x36, 0x88, 0xf6, 0x90, 0x7, 0xc7, 0x1d, + 0xff, 0xd8, 0xe4, 0x1, 0x92, 0xbf, 0xfe, 0xc6, + 0x10, 0xf, 0xfe, 0xb, 0x63, 0xbf, 0xff, 0x21, + 0xb0, 0x40, 0x3f, 0xfc, 0x64, 0x99, 0xe0, 0x22, + 0xda, 0x88, 0xf5, 0xf9, 0x90, 0x87, 0x5a, 0x90, + 0x1c, 0xf7, 0xff, 0xff, 0x57, 0xa0, 0xc0, 0x3f, + 0x8a, 0xdd, 0x99, 0xee, 0x1, 0xe5, 0xc4, 0x56, + 0x7f, 0x72, 0x7b, 0xcc, 0xff, 0xed, 0x5b, 0x98, + 0x7, 0x84, 0x94, 0x40, 0xf, 0xa4, 0x1, 0x8b, + 0x98, 0x2, 0x3e, 0x51, 0xf5, 0x33, 0xff, 0xed, + 0x27, 0x38, 0x7, 0xcb, 0xc4, 0x0, 0x23, 0x70, + 0xc, 0xc4, 0x40, 0x0, 0xa9, 0x89, 0xce, 0x67, + 0xff, 0xa, 0x54, 0x40, 0x38, 0xe3, 0x33, 0xff, + 0x89, 0x68, 0x1, 0xf0, 0x9b, 0x0, 0x4c, 0x44, + 0x0, 0x9, 0x30, 0x4, 0xbe, 0xa0, 0x1, 0x23, + 0x3f, 0xfe, 0x1, 0x3, 0x8, 0x6, 0x59, 0x73, + 0x3f, 0xfe, 0x21, 0x0, 0x7f, 0x39, 0x10, 0x0, + 0x5c, 0xc0, 0x2, 0xf2, 0x0, 0x11, 0xa8, 0x80, + 0x46, 0xf9, 0xbb, 0xfe, 0xf8, 0x30, 0xe, 0x48, + 0xdd, 0xff, 0xe1, 0xdb, 0x90, 0x7, 0xf0, 0xf8, + 0x80, 0x46, 0x20, 0x2a, 0x42, 0x0, 0x7d, 0x30, + 0xe, 0xe2, 0x2f, 0xf8, 0x44, 0x1, 0xe1, 0x22, + 0xff, 0xe2, 0x37, 0x88, 0x7, 0xf1, 0x8b, 0x1a, + 0x2e, 0x30, 0x2f, 0xa8, 0x0, 0xf1, 0x0, 0x21, + 0x13, 0x80, 0x71, 0xc6, 0xff, 0xa9, 0x40, 0x23, + 0x8d, 0xff, 0xa9, 0x0, 0x23, 0x8e, 0xff, 0x63, + 0x90, 0x7, 0xff, 0xc, 0x5a, 0xb2, 0xe9, 0x8c, + 0x8c, 0x84, 0x0, 0x55, 0xba, 0xef, 0xea, 0xe3, + 0x0, 0xe1, 0x30, 0x0, 0x80, 0x67, 0x13, 0x0, + 0xc2, 0x1, 0x38, 0x88, 0x0, 0x3e, 0x20, 0x1f, + 0xf0, 0x9a, 0xbc, 0x4d, 0x5e, 0x77, 0xfb, 0x61, + 0x0, 0x21, 0x33, 0x10, 0x80, 0x18, 0x44, 0x1, + 0xff, 0xe0, 0x5a, 0xb8, 0x76, 0x54, 0x31, 0x0, + 0xe1, 0x34, 0x67, 0x8a, 0xbd, 0xed, 0xf2, 0x0, + 0xff, 0xf0, 0x27, 0xa8, 0x88, 0xd1, 0x9e, 0x6a, + 0xf7, 0xbf, 0xb2, 0xe6, 0x1d, 0x50, 0x84, 0x1c, + 0x3, 0xff, 0xc4, 0xd7, 0xdc, 0xcb, 0x98, 0x65, + 0x42, 0x10, 0xf, 0xff, 0xf8, 0x7, 0xff, 0x67, + 0xde, 0xaf, 0xa4, 0xc0, 0x21, 0xf1, 0x0, 0xff, + 0xef, 0x39, 0x19, 0xc4, 0x62, 0x1, 0xfd, 0xe4, + 0xa, 0x62, 0x2, 0x6d, 0x2c, 0x40, 0x1f, 0xfd, + 0x33, 0x9e, 0xff, 0xb1, 0x84, 0x0, 0x71, 0x99, + 0x4a, 0x80, 0x65, 0xaf, 0xfa, 0xd9, 0x6b, 0xbf, + 0xee, 0xc9, 0x51, 0x0, 0xc0, + + /* U+7B2C "第" */ + 0x0, 0xff, 0xff, 0x80, 0x7e, 0x16, 0xcf, 0xf7, + 0x64, 0xa8, 0x80, 0x7f, 0xf1, 0x85, 0xaf, 0xfd, + 0xdb, 0x6e, 0x60, 0x1f, 0xfd, 0x54, 0x88, 0x18, + 0x0, 0x46, 0x61, 0x0, 0xff, 0xe2, 0x9c, 0xda, + 0x0, 0x4, 0xc4, 0x88, 0x1, 0xff, 0xd3, 0x27, + 0x96, 0x10, 0xc, 0x4f, 0x9f, 0xff, 0xfc, 0x2b, + 0x63, 0x7f, 0x72, 0x0, 0xc2, 0xb5, 0xdf, 0xff, + 0xfc, 0x7a, 0x50, 0xf, 0xc9, 0x3f, 0x4, 0x1, + 0x9, 0x90, 0x80, 0x71, 0x1a, 0x27, 0xe3, 0xb, + 0xe8, 0x30, 0x8, 0x4d, 0x10, 0x64, 0x1, 0xe1, + 0x24, 0x4f, 0xfe, 0x6, 0xb0, 0x7, 0x13, 0x5d, + 0x31, 0x0, 0x5, 0x27, 0x32, 0x84, 0x0, 0xc3, + 0x73, 0x77, 0xab, 0xcc, 0x10, 0x88, 0x0, 0x26, + 0xbf, 0xcb, 0xb6, 0x62, 0x94, 0x40, 0x21, 0x16, + 0x4d, 0xdf, 0xf9, 0xcc, 0x3, 0x12, 0x6a, 0x88, + 0x0, 0x9a, 0xa8, 0xc4, 0x2, 0xde, 0xc2, 0x0, + 0x2c, 0x42, 0x0, 0x88, 0xa1, 0x0, 0xa, 0xd6, + 0x4a, 0x8, 0x6, 0x15, 0xbb, 0x28, 0x80, 0x7, + 0x10, 0x80, 0x3f, 0xf8, 0x64, 0xd7, 0xf9, 0x76, + 0x81, 0x8c, 0xdd, 0xe9, 0x70, 0x11, 0x1b, 0x5f, + 0xee, 0xdd, 0x6e, 0x2, 0x0, 0x78, 0xcd, 0xdf, + 0xec, 0x84, 0x1, 0x20, 0x6b, 0xfd, 0xd5, 0x31, + 0x0, 0x7f, 0xf0, 0x44, 0xd1, 0x2, 0x22, 0x2f, + 0xc2, 0x38, 0x8b, 0xfe, 0x10, 0x12, 0x2f, 0xfe, + 0x10, 0x8c, 0x45, 0xf3, 0x88, 0x7, 0xff, 0x19, + 0x27, 0xbf, 0xff, 0xf8, 0xfb, 0x6, 0x1, 0x92, + 0x7b, 0xff, 0xff, 0x83, 0xd2, 0x80, 0x1f, 0xfe, + 0x23, 0x0, 0xfc, 0x20, 0x1f, 0xfc, 0x11, 0x30, + 0xf, 0xfe, 0x81, 0xc6, 0x6e, 0xff, 0xf1, 0x32, + 0x4c, 0x3, 0x24, 0x6e, 0xff, 0xf0, 0xed, 0x0, + 0x3f, 0xf9, 0xc5, 0x6a, 0x64, 0x5f, 0xfc, 0x51, + 0x0, 0xf0, 0x91, 0x7f, 0xf0, 0xc4, 0x3, 0xff, + 0x9c, 0x28, 0x64, 0x1, 0x1c, 0x6f, 0xff, 0xfd, + 0xb0, 0x60, 0x19, 0x27, 0xbf, 0xff, 0xf9, 0x1a, + 0xe4, 0x1, 0xff, 0xc6, 0x5c, 0x40, 0x8, 0x54, + 0xc8, 0x3, 0xff, 0xe2, 0x7a, 0x80, 0x18, 0x5a, + 0xff, 0xff, 0xf8, 0x1b, 0x6, 0x1, 0x92, 0x7b, + 0xff, 0xff, 0x99, 0xd0, 0x60, 0x1f, 0xfc, 0x2, + 0xb4, 0x10, 0xc, 0x24, 0x5f, 0xc2, 0x1, 0xff, + 0xc0, 0x12, 0x2f, 0xfe, 0x30, 0x88, 0x3, 0x8b, + 0xc4, 0x3, 0xff, 0x80, 0x79, 0x70, 0xec, 0xf5, + 0x9b, 0xbd, 0x9d, 0x4c, 0x60, 0x1f, 0xf2, 0x46, + 0xef, 0xff, 0x1d, 0x84, 0x3, 0x39, 0x10, 0x3, + 0xff, 0x80, 0x28, 0xcf, 0x13, 0xa, 0x42, 0x6b, + 0x19, 0xf9, 0x8, 0x40, 0x4b, 0x37, 0x6, 0x1, + 0xff, 0xcc, 0x53, 0x10, 0x8, 0x4d, 0x80, 0x3f, + 0xf8, 0x84, 0x8d, 0x15, 0xbf, 0x94, 0xe6, 0x20, + 0x29, 0x19, 0x8a, 0x65, 0x0, 0xff, 0xe1, 0x8, + 0xe0, 0xe, 0x12, 0x7d, 0x40, 0xc, 0xba, 0x60, + 0x1f, 0xc4, 0xaf, 0x37, 0xbf, 0xb7, 0x2e, 0xa4, + 0x20, 0x26, 0xd3, 0xbd, 0x6e, 0x62, 0x1, 0xff, + 0xc5, 0x58, 0xfe, 0xff, 0xee, 0xd8, 0x40, 0xc, + 0x9a, 0x80, 0x1f, 0xf1, 0xe3, 0xa1, 0x0, 0x62, + 0x47, 0xad, 0xec, 0x96, 0x20, 0xf, 0xfe, 0x52, + 0x6b, 0x88, 0xfe, 0x22, 0x1a, 0xbd, 0xd3, 0x8, + 0x7, 0xf8, 0x9a, 0xa9, 0xf, 0x37, 0xbf, 0xb7, + 0xa, 0x40, 0x1f, 0xfd, 0x4, 0x9e, 0xef, 0xdb, + 0xac, 0xa8, 0x41, 0x0, 0xfc, + + /* U+7B80 "简" */ + 0x0, 0xff, 0x1c, 0x67, 0x65, 0xd4, 0x28, 0x80, + 0x7f, 0xf1, 0xd6, 0x77, 0x2e, 0x9d, 0x4, 0x3, + 0xff, 0xa2, 0x2d, 0xe, 0x62, 0x68, 0x81, 0x10, + 0x7, 0xff, 0x18, 0x9e, 0x58, 0x8d, 0x11, 0xa2, + 0x2, 0x3f, 0xfc, 0x50, 0xf, 0xf9, 0x22, 0x8, + 0x1, 0xc2, 0xd7, 0xdf, 0xff, 0xfc, 0xd, 0x82, + 0x3, 0xba, 0x30, 0xc, 0x2b, 0x5d, 0xdf, 0xfc, + 0x5d, 0x61, 0x0, 0xf1, 0x35, 0xd3, 0x8, 0x4, + 0x46, 0x86, 0x40, 0x1e, 0x13, 0x44, 0xf3, 0xfa, + 0x4e, 0xb1, 0x0, 0x44, 0x68, 0x83, 0x10, 0xf, + 0x9, 0xa2, 0x7e, 0x53, 0x0, 0xc4, 0xb5, 0x92, + 0x82, 0x0, 0x37, 0xcd, 0xcb, 0xcc, 0x52, 0x8, + 0x4, 0x69, 0x17, 0x7a, 0xb3, 0x10, 0xc2, 0x0, + 0x27, 0xbd, 0xcb, 0xb6, 0x62, 0x50, 0x3, 0x9b, + 0xaa, 0xef, 0xd2, 0xa2, 0x0, 0x11, 0x19, 0x88, + 0x40, 0x9f, 0x36, 0x8, 0xa1, 0x1, 0x59, 0x91, + 0x81, 0x8, 0x94, 0x80, 0x21, 0x69, 0xb7, 0x45, + 0x9f, 0x84, 0x0, 0xe2, 0x6a, 0x94, 0x11, 0x10, + 0x11, 0x4, 0x3, 0xfc, 0x26, 0xd3, 0x9d, 0xfb, + 0x2f, 0x39, 0xfb, 0xac, 0x94, 0x12, 0x7c, 0xdb, + 0x65, 0xae, 0xcc, 0xee, 0x94, 0x76, 0xae, 0xcc, + 0xfe, 0xda, 0x72, 0x20, 0x35, 0xfe, 0xe6, 0x2d, + 0xcc, 0x3, 0xff, 0x82, 0x2b, 0xac, 0x1, 0x13, + 0x5e, 0xb9, 0x80, 0x5, 0xcc, 0xff, 0xfb, 0xb, + 0xc0, 0x1f, 0xfc, 0x31, 0x5a, 0xc8, 0x30, 0x8, + 0xe6, 0x4a, 0x6d, 0xf9, 0x9f, 0xfd, 0x29, 0x50, + 0xf, 0xfe, 0x21, 0xb5, 0x56, 0x95, 0x7, 0xe9, + 0x66, 0x56, 0x52, 0x88, 0x88, 0xcf, 0xff, 0xa4, + 0x46, 0x20, 0x1f, 0xfc, 0x37, 0xc5, 0x5c, 0x9a, + 0x20, 0x4d, 0x32, 0x50, 0x6a, 0xbb, 0xff, 0xe6, + 0xb9, 0x80, 0x7f, 0xf6, 0xdb, 0xd1, 0x3f, 0xf9, + 0xda, 0xc0, 0x1f, 0xfe, 0x13, 0x9e, 0xff, 0xff, + 0xe0, 0x74, 0x98, 0x7, 0xff, 0x9c, 0xb6, 0x23, + 0xff, 0x85, 0xa4, 0x1, 0xff, 0xe7, 0x14, 0x67, + 0x7f, 0xfe, 0x3, 0x20, 0x80, 0x7f, 0xf9, 0xce, + 0x3b, 0xff, 0xff, 0x81, 0xb0, 0x60, 0x1f, 0xff, + 0xf0, 0xf, 0xff, 0x9, 0xc7, 0x7f, 0xff, 0xf0, + 0x36, 0xc, 0x3, 0xff, 0xce, 0x26, 0xab, 0xff, + 0xc8, 0xd6, 0x0, 0xff, 0xed, 0xbf, 0x29, 0x9c, + 0xf3, 0x55, 0xff, 0xc8, 0x73, 0x0, 0xf8, 0xc4, + 0x3, 0xff, 0xa4, 0x6f, 0x79, 0x94, 0xa8, 0x7, + 0xff, 0xc, 0x9e, 0xfb, 0xbf, 0xbe, 0xd4, 0x3, + 0x2f, 0x98, 0x7, 0xff, 0x8c, 0x9b, 0x48, 0x47, + 0xf8, 0x8d, 0x15, 0xee, 0x98, 0x3, 0xc0, + + /* U+7B97 "算" */ + 0x0, 0xff, 0x85, 0x15, 0xc, 0x40, 0x3f, 0xf9, + 0x42, 0x6a, 0xa4, 0x32, 0x10, 0xf, 0xfe, 0x98, + 0xad, 0xd5, 0x2f, 0x3a, 0xd4, 0x40, 0x3f, 0xf8, + 0xc5, 0x3d, 0x54, 0xbc, 0xc4, 0x18, 0x7, 0xff, + 0x44, 0xe2, 0xa, 0x20, 0x10, 0xbf, 0x5d, 0x57, + 0xff, 0x6, 0x10, 0x44, 0xd2, 0xe4, 0x1, 0x8d, + 0x66, 0xab, 0xff, 0x8c, 0xe6, 0x1, 0xf1, 0xc7, + 0xb1, 0x0, 0x70, 0x9a, 0x2a, 0xff, 0xf0, 0x93, + 0x63, 0x65, 0x0, 0x3c, 0x46, 0xab, 0xff, 0xc7, + 0xd6, 0x0, 0xc4, 0xd7, 0xae, 0x60, 0x1, 0x6a, + 0xdc, 0x84, 0x0, 0xc2, 0xb5, 0xbd, 0xdb, 0x72, + 0x5d, 0xcc, 0x60, 0x11, 0xbd, 0xef, 0x73, 0x65, + 0x4, 0x3, 0x13, 0x5e, 0xf7, 0x7e, 0xb5, 0x0, + 0x13, 0xf4, 0xa0, 0x80, 0x5, 0xaa, 0x54, 0x8d, + 0xfd, 0x44, 0x0, 0x2b, 0xee, 0x23, 0x81, 0x75, + 0x44, 0x2, 0x38, 0xe8, 0x42, 0x11, 0x13, 0x4c, + 0x20, 0x4, 0x4d, 0xce, 0x23, 0xfc, 0x1, 0x13, + 0xed, 0xb9, 0xa4, 0x6c, 0xb2, 0x3b, 0xe3, 0x31, + 0x0, 0x9a, 0x91, 0x1d, 0xf2, 0x8e, 0x32, 0x90, + 0x9a, 0x82, 0xbb, 0xfc, 0xa2, 0x46, 0x2, 0x6c, + 0x44, 0x75, 0x20, 0xf, 0xf8, 0x52, 0x32, 0xdc, + 0xc1, 0xfa, 0x23, 0x98, 0xc0, 0x4d, 0x5e, 0x23, + 0xf3, 0xa9, 0x9, 0xb4, 0x47, 0xfc, 0xc6, 0x2, + 0x6c, 0xf1, 0xe, 0x40, 0xf, 0xfe, 0x68, 0xb5, + 0x77, 0x7f, 0xf5, 0x25, 0x40, 0x3f, 0xfa, 0x82, + 0xd5, 0xdd, 0xff, 0xd4, 0x95, 0x0, 0xff, 0xea, + 0xa, 0xce, 0x67, 0xff, 0x52, 0x10, 0x3, 0xff, + 0xa8, 0x22, 0xe5, 0x5f, 0xfe, 0xa7, 0x38, 0x7, + 0xff, 0x55, 0x1e, 0x23, 0xff, 0xa8, 0xc6, 0x1, + 0xff, 0xd4, 0x16, 0xbf, 0xff, 0xfe, 0xa5, 0x28, + 0x7, 0xff, 0x50, 0x5a, 0xfb, 0xbf, 0xfa, 0x94, + 0xa0, 0x1f, 0xfc, 0xe4, 0x9a, 0xaf, 0x9c, 0xc0, + 0x38, 0xde, 0xab, 0xff, 0x85, 0x2c, 0x40, 0x18, + 0x52, 0x2a, 0xbd, 0xe8, 0x1, 0xff, 0xc7, 0x13, + 0x55, 0xfb, 0x14, 0x3, 0x9b, 0x15, 0x7f, 0xf8, + 0x4f, 0xe2, 0x1, 0x8c, 0xc8, 0xab, 0xe4, 0x20, + 0xf, 0xf1, 0x35, 0xee, 0xff, 0xf0, 0xe9, 0x80, + 0x39, 0x6b, 0x77, 0xff, 0x85, 0x90, 0x60, 0x18, + 0x9b, 0x77, 0xff, 0x85, 0x28, 0x1, 0x85, 0xc8, + 0xbf, 0xf8, 0x62, 0x1, 0xf0, 0x91, 0x7f, 0xf0, + 0xc4, 0x3, 0xc2, 0x22, 0x2f, 0xfe, 0x9, 0x88, + 0x4, 0x4f, 0x9f, 0xff, 0xee, 0xb7, 0x30, 0xe, + 0x15, 0xbf, 0xff, 0xfe, 0x27, 0x49, 0x80, 0x62, + 0x7c, 0xff, 0xff, 0xe0, 0xd2, 0x80, 0x7f, 0x89, + 0x1a, 0x2b, 0x7a, 0xdc, 0xc0, 0x23, 0x7d, 0xb4, + 0x0, 0xff, 0xf1, 0x13, 0xe7, 0x7e, 0xdc, 0xba, + 0x90, 0x0, 0x51, 0xeb, 0x72, 0xc, 0x40, 0x3f, + 0xfc, 0x64, 0xfe, 0xc6, 0x24, 0x8d, 0x15, 0x9d, + 0xcb, 0x85, 0x20, 0xf, 0xff, 0x49, 0xc6, 0x76, + 0xdc, 0xba, 0x98, 0x80, 0x7f, 0xf3, 0x85, 0xb3, + 0xff, 0x6c, 0x18, 0x7, 0xff, 0x10, + + /* U+7BA1 "管" */ + 0x0, 0xff, 0xff, 0x80, 0x7e, 0x39, 0xde, 0xdc, + 0xa8, 0x51, 0x0, 0xff, 0xe3, 0x1c, 0x67, 0x6d, + 0xd3, 0x18, 0x7, 0xff, 0x54, 0x9f, 0xd8, 0x84, + 0x8d, 0x8, 0xcc, 0x45, 0xff, 0xc1, 0x10, 0x0, + 0xac, 0x39, 0x89, 0x20, 0x88, 0x8, 0xbf, 0xf9, + 0x2, 0x1, 0xfe, 0x26, 0xe8, 0x30, 0xe, 0x15, + 0x9d, 0xdf, 0xfe, 0x15, 0x3b, 0x55, 0xa0, 0x7, + 0x24, 0x66, 0xef, 0xff, 0x1f, 0xe4, 0xc0, 0x3c, + 0x2b, 0x5f, 0x26, 0x1, 0x9, 0xaa, 0x10, 0x7, + 0x9, 0xaa, 0xfc, 0x84, 0xb1, 0x28, 0x20, 0x2, + 0x45, 0x59, 0x8, 0x3, 0xc4, 0x8a, 0xbf, 0xf2, + 0x68, 0x80, 0x62, 0x7d, 0xa5, 0x20, 0x1, 0x2d, + 0x7e, 0x55, 0xfb, 0x90, 0x4, 0x2f, 0xf7, 0x55, + 0x46, 0xb9, 0x8, 0x4, 0x4d, 0x79, 0x75, 0x55, + 0xfc, 0xa0, 0x80, 0x46, 0x19, 0x75, 0x5f, 0xd2, + 0xa4, 0x1, 0x89, 0xfa, 0xdd, 0x5e, 0xf2, 0x94, + 0x40, 0x22, 0x89, 0x86, 0x79, 0xe7, 0x0, 0xc4, + 0xb6, 0x40, 0x19, 0xf5, 0x4, 0x3, 0x89, 0xaa, + 0xdd, 0x9e, 0x3d, 0x0, 0x3f, 0xf8, 0xe4, 0x0, + 0x13, 0xfa, 0xbb, 0xfd, 0xf8, 0x47, 0xbd, 0x35, + 0x77, 0xba, 0x88, 0x3, 0x24, 0x5d, 0xff, 0x57, + 0x19, 0x1e, 0xfc, 0xd5, 0xdf, 0xd2, 0xa2, 0x1, + 0xfc, 0x46, 0x89, 0xff, 0xcc, 0x32, 0x0, 0xe1, + 0x34, 0x4f, 0xfe, 0x71, 0x18, 0x7, 0xff, 0xd, + 0x27, 0xbf, 0xff, 0xfc, 0x1d, 0x28, 0x1, 0xff, + 0xcb, 0x31, 0x0, 0x1b, 0x4c, 0xff, 0xf6, 0x18, + 0xc0, 0x2, 0x60, 0x1f, 0xfd, 0x7, 0xc6, 0x6f, + 0xfe, 0xc6, 0xb0, 0x7, 0xff, 0x25, 0xaf, 0xff, + 0x5a, 0x80, 0x7f, 0x1c, 0x6f, 0xff, 0xff, 0x2b, + 0x1c, 0x80, 0x3f, 0x96, 0xff, 0xf6, 0xb9, 0x0, + 0x7f, 0xff, 0xc0, 0x3f, 0xf9, 0x67, 0x1b, 0xff, + 0xff, 0xca, 0xc7, 0x20, 0xf, 0xff, 0x0, 0x9a, + 0xb3, 0x7f, 0xf4, 0x75, 0x80, 0x3f, 0xfb, 0x45, + 0x71, 0x33, 0xff, 0xd1, 0x63, 0x0, 0xff, 0xed, + 0x1c, 0x6f, 0xff, 0xff, 0x5b, 0xa0, 0xc0, 0x3f, + 0xfa, 0x82, 0x48, 0xab, 0xff, 0xcf, 0x42, 0x0, + 0xff, 0xee, 0x15, 0x57, 0xff, 0x46, 0x14, 0x40, + 0x3f, 0xff, 0xe0, 0x1f, 0xfd, 0x83, 0xaa, 0x5d, + 0xff, 0xf3, 0xfd, 0x44, 0x3, 0xff, 0xb8, 0x48, + 0x9f, 0xfd, 0x3, 0x20, 0xf, 0xfe, 0xb2, 0x57, + 0xff, 0xff, 0x77, 0xa0, 0xc0, 0x3f, 0xc0, + + /* U+7CFB "系" */ + 0x0, 0xff, 0xf2, 0x89, 0x19, 0x91, 0x59, 0xe1, + 0xd0, 0x40, 0x3f, 0xf8, 0xc2, 0x31, 0x16, 0x33, + 0x91, 0x32, 0xac, 0xcd, 0x9d, 0xe8, 0x8a, 0x65, + 0x54, 0xbb, 0x66, 0x37, 0x5d, 0xff, 0xbb, 0x73, + 0x17, 0x53, 0xf, 0x17, 0xae, 0x60, 0x1f, 0xfc, + 0x21, 0x6a, 0xee, 0x6e, 0xec, 0xca, 0xef, 0x55, + 0x53, 0x3a, 0x22, 0x77, 0x99, 0x8a, 0xa4, 0x41, + 0x98, 0x88, 0x20, 0x1c, 0x22, 0x23, 0x45, 0x66, + 0x3c, 0x51, 0x0, 0x80, 0x7f, 0xf0, 0x45, 0x35, + 0x4, 0x62, 0x2c, 0x67, 0xc8, 0x98, 0x84, 0x3, + 0xc2, 0x6f, 0x35, 0x4b, 0xb6, 0x63, 0x75, 0xdc, + 0xff, 0xbb, 0x9b, 0x97, 0x53, 0x28, 0x76, 0x53, + 0x10, 0xf, 0xfe, 0x11, 0x35, 0xf7, 0x5b, 0xbb, + 0x33, 0xae, 0x78, 0x4c, 0x40, 0x31, 0xbe, 0xea, + 0x19, 0x54, 0x88, 0x33, 0x10, 0x3d, 0xda, 0x9d, + 0x8, 0x3, 0xff, 0xaa, 0x23, 0x0, 0x42, 0xb5, + 0xf4, 0xa2, 0x0, 0x26, 0xbd, 0x83, 0x10, 0xf, + 0x13, 0x56, 0x4a, 0xa2, 0xc5, 0xf3, 0x90, 0x7, + 0xff, 0x3c, 0x52, 0x33, 0xb9, 0xf9, 0x57, 0x94, + 0xa4, 0x0, 0x37, 0xbc, 0x94, 0x10, 0xf, 0x13, + 0x56, 0x4a, 0x88, 0x0, 0x52, 0x73, 0xe, 0x40, + 0x1f, 0xfc, 0xf3, 0x0, 0x38, 0x80, 0x9a, 0xa1, + 0x0, 0x49, 0x5b, 0x8, 0x20, 0x1c, 0x26, 0xf9, + 0x89, 0x51, 0x0, 0x13, 0x56, 0x5b, 0x18, 0x7, + 0xff, 0x48, 0x92, 0x2f, 0xb6, 0x98, 0xc4, 0x3, + 0x25, 0x64, 0xa9, 0x0, 0x9, 0x6b, 0x31, 0x6, + 0x20, 0x26, 0xf9, 0x89, 0x52, 0x0, 0x84, 0x40, + 0x1f, 0xfd, 0x52, 0x59, 0xcc, 0x53, 0x18, 0x4, + 0x4d, 0x5b, 0xdc, 0xca, 0x52, 0x0, 0x1b, 0x56, + 0x62, 0xc, 0x40, 0x96, 0x33, 0xb9, 0xf6, 0xe6, + 0x1, 0xff, 0xd6, 0x25, 0x9c, 0xd9, 0x41, 0x0, + 0x84, 0x60, 0x25, 0xad, 0xc9, 0x52, 0x0, 0xe3, + 0x60, 0xc, 0x29, 0x19, 0xb2, 0x82, 0x1, 0xff, + 0xd3, 0x13, 0x79, 0x84, 0x10, 0x8, 0x52, 0x2f, + 0x2d, 0xc, 0x47, 0x88, 0xb1, 0x8d, 0x7d, 0xb1, + 0x0, 0x44, 0xd7, 0xf4, 0xc4, 0x1, 0xff, 0xc0, + 0x48, 0xde, 0xef, 0x7f, 0xfd, 0xd9, 0x8, 0x20, + 0x1c, 0x29, 0x17, 0xdd, 0xfd, 0xbb, 0xf6, 0x53, + 0x10, 0x7, 0x85, 0x67, 0x2d, 0x88, 0x3, 0xf9, + 0xc0, 0x2, 0x3e, 0x0, 0xff, 0xeb, 0x8, 0xf1, + 0x17, 0x19, 0x88, 0x40, 0x2, 0x93, 0x94, 0xa2, + 0x1, 0xe3, 0xa9, 0xaa, 0xeb, 0xbf, 0xb3, 0x3d, + 0xbb, 0xee, 0xa6, 0x10, 0xc, 0x71, 0xdf, 0xfd, + 0xdd, 0xdb, 0xbd, 0x98, 0xdd, 0x39, 0x0, 0x42, + 0x9c, 0xe4, 0x1, 0xe2, 0x45, 0x5e, 0x44, 0xe5, + 0x4, 0xb4, 0x60, 0x22, 0xf8, 0x58, 0x3, 0xe1, + 0x0, 0xf8, 0x96, 0x6a, 0x8c, 0x60, 0x1c, 0x71, + 0xf4, 0xf1, 0x9f, 0x6c, 0x40, 0x1f, 0xfc, 0x31, + 0x38, 0xdb, 0x87, 0x8a, 0xcc, 0x41, 0x80, 0x7f, + 0xf1, 0xd2, 0x7e, 0x99, 0x55, 0x39, 0xb4, 0xc4, + 0x1, 0x12, 0xc3, 0x98, 0x80, 0x7f, 0xf0, 0xc4, + 0xe3, 0x71, 0xcc, 0x2, 0x15, 0xac, 0x83, 0x0, + 0xff, 0xe3, 0xa4, 0xfd, 0x31, 0x0, 0x44, 0xb3, + 0xba, 0xa5, 0x20, 0xf, 0xfe, 0x20, 0x9b, 0xdf, + 0xe3, 0x98, 0x4, 0x29, 0x39, 0x4a, 0x20, 0x1f, + 0xfc, 0xb2, 0x59, 0xdd, 0x4a, 0x90, 0x4, 0x4b, + 0x59, 0x88, 0x41, 0x0, 0xfc, 0x29, 0x19, 0xf9, + 0x8, 0x20, 0x10, 0xa4, 0xed, 0xb1, 0x0, 0x7f, + 0xf4, 0x89, 0xab, 0x2d, 0xcc, 0x2, 0x13, 0x7b, + 0xc9, 0x41, 0x0, 0xfe, 0x10, 0xc, 0x6f, 0x7f, + 0x6c, 0x60, 0x1f, 0xfd, 0x81, 0x48, 0xcc, 0x41, + 0x80, 0x42, 0x30, 0x7, 0xc2, 0x91, 0x9b, 0x53, + 0x7b, 0x90, 0x82, 0x1, 0xff, 0xdf, 0x37, 0xdc, + 0xab, 0xfc, 0x84, 0x10, 0x8, + + /* U+7EA7 "级" */ + 0x0, 0xff, 0xe1, 0x91, 0x98, 0x40, 0x3f, 0xfe, + 0xe9, 0x1b, 0x9d, 0xcb, 0x73, 0x0, 0xff, 0xf8, + 0x8b, 0x7a, 0x88, 0x0, 0x40, 0x88, 0x1, 0xc9, + 0x3b, 0xbf, 0xfd, 0x1b, 0x62, 0x0, 0xff, 0xe4, + 0x93, 0x52, 0x0, 0x44, 0xf0, 0xa2, 0x1, 0xc2, + 0x64, 0x5f, 0xfd, 0x40, 0xf, 0xfe, 0x41, 0xd5, + 0xc, 0x2, 0x3b, 0x93, 0x0, 0xf9, 0x23, 0x33, + 0x5b, 0x98, 0x7, 0x24, 0x66, 0x7d, 0x2a, 0x20, + 0x19, 0x31, 0x0, 0x3f, 0xf8, 0xe2, 0xb0, 0xe4, + 0x0, 0x16, 0x86, 0x10, 0x0, 0x8c, 0x1, 0x9, + 0x19, 0xe4, 0xe7, 0x0, 0xc2, 0x46, 0x7f, 0x10, + 0xb0, 0x80, 0x47, 0xa8, 0x1, 0xff, 0xc7, 0x39, + 0x84, 0x0, 0xa, 0xdc, 0x20, 0x4, 0x97, 0xfd, + 0xb2, 0xc4, 0x1, 0xc2, 0xe, 0x1, 0x8c, 0x5c, + 0x3, 0xc9, 0x86, 0x1, 0x12, 0x20, 0x40, 0x3f, + 0xf8, 0xa4, 0xfe, 0xe4, 0x0, 0x48, 0xb5, 0x10, + 0x1, 0x3c, 0x28, 0x81, 0x3f, 0xb0, 0x7, 0x84, + 0x3, 0x87, 0xc4, 0x3, 0x93, 0x14, 0x2, 0x14, + 0xb2, 0x0, 0xff, 0xe1, 0x8a, 0x4f, 0xc1, 0x80, + 0x5, 0x74, 0x95, 0x4c, 0xc8, 0x99, 0x18, 0x0, + 0x56, 0xa5, 0x0, 0x38, 0xc0, 0x40, 0x38, 0x4c, + 0x3, 0x1e, 0x20, 0x80, 0x49, 0xe4, 0x0, 0x11, + 0xc0, 0x1f, 0xc2, 0xfe, 0xc4, 0x1, 0x85, 0x66, + 0xed, 0x53, 0x27, 0x41, 0x1, 0x5b, 0xb2, 0x0, + 0x7c, 0x3e, 0x1, 0xe1, 0x0, 0xc4, 0x88, 0x20, + 0xc, 0xb3, 0xdf, 0xee, 0xee, 0xb6, 0x20, 0xe, + 0x17, 0xd4, 0x0, 0x9, 0x1a, 0x2a, 0xc6, 0x20, + 0x1c, 0x91, 0x6a, 0x20, 0x1f, 0x98, 0x88, 0x1, + 0x8e, 0xd8, 0x80, 0x5f, 0x44, 0x8b, 0xf0, 0x88, + 0x3, 0x8, 0x88, 0x80, 0x1e, 0x16, 0xbf, 0xf7, + 0x6e, 0x5d, 0xbc, 0x8, 0x40, 0x2, 0xb5, 0x46, + 0x10, 0xf, 0xe2, 0x23, 0x0, 0x78, 0xea, 0x84, + 0x2b, 0x5b, 0xbf, 0xb2, 0x8, 0x3, 0x2f, 0xa0, + 0x7, 0xff, 0x8, 0x9a, 0xad, 0x44, 0x9, 0xaa, + 0x8a, 0x20, 0x1, 0x33, 0x10, 0x7, 0x37, 0x10, + 0x7, 0xc4, 0xd6, 0x60, 0x1f, 0xc2, 0xd4, 0x60, + 0x12, 0x62, 0x0, 0x7f, 0xf0, 0x4e, 0x3e, 0x50, + 0x40, 0x6, 0x83, 0xb5, 0x7b, 0xdf, 0xd9, 0xb4, + 0x60, 0x10, 0x91, 0x4, 0x3, 0xf0, 0xb4, 0x30, + 0x80, 0x78, 0x9a, 0xcc, 0x2, 0x3d, 0x71, 0x0, + 0xfe, 0x14, 0x7c, 0xd7, 0x20, 0xe, 0x36, 0x76, + 0x54, 0x21, 0x11, 0x23, 0xe8, 0x80, 0x45, 0xea, + 0x1, 0xb, 0x55, 0x10, 0x2, 0x48, 0xb4, 0x0, + 0xc9, 0x72, 0x60, 0x12, 0x4b, 0x88, 0x7, 0xf2, + 0x45, 0x41, 0x88, 0x7, 0x9, 0x22, 0xbc, 0x56, + 0x6f, 0xf6, 0xdc, 0xa9, 0x0, 0xe, 0xdc, 0x40, + 0x24, 0xd5, 0x54, 0xc1, 0x80, 0x5, 0x66, 0xc, + 0xd1, 0x2c, 0x20, 0x2, 0x89, 0x51, 0x0, 0xff, + 0x26, 0xb9, 0x1a, 0xbc, 0xde, 0xf7, 0x36, 0xea, + 0x1d, 0x4c, 0x80, 0x21, 0x22, 0x8, 0x1d, 0xa8, + 0x80, 0x49, 0xe8, 0x0, 0x27, 0xf7, 0x20, 0x1, + 0x3e, 0x61, 0xc8, 0x0, 0x2d, 0x2e, 0x40, 0x1f, + 0xfc, 0x14, 0x9d, 0xca, 0x86, 0x42, 0x10, 0xc, + 0x26, 0xaf, 0x37, 0xbd, 0xcd, 0x97, 0x4b, 0x52, + 0x0, 0x8f, 0x50, 0x3, 0x8e, 0x25, 0x84, 0x3, + 0xe4, 0x88, 0x20, 0x7, 0xff, 0x24, 0x4d, 0x5e, + 0x6f, 0x7b, 0x99, 0x50, 0xc8, 0x42, 0x2, 0x1f, + 0xe5, 0x20, 0x8, 0xad, 0x4, 0x3, 0xc6, 0x62, + 0x0, 0xfc, 0xde, 0x82, 0x1, 0xff, 0xc2, 0x14, + 0x7a, 0xcd, 0xfe, 0xca, 0x86, 0x42, 0x10, 0x1, + 0x23, 0x45, 0xef, 0x66, 0x15, 0x8, 0x2, 0x3a, + 0x52, 0x0, 0x85, 0x23, 0x31, 0x8, 0x20, 0x1, + 0x10, 0x4, 0x4d, 0x5f, 0x6e, 0x60, 0x1f, 0xf0, + 0x8b, 0x54, 0xc8, 0x2, 0x13, 0x57, 0x9b, 0xdf, + 0xdb, 0x97, 0x43, 0x79, 0x83, 0x0, 0xcb, 0x2e, + 0x44, 0x59, 0xcf, 0xb7, 0x30, 0x8, 0x9a, 0xff, + 0xb6, 0x10, 0x40, 0x2, 0x91, 0x9d, 0x70, 0xa4, + 0x1, 0xf2, 0x7b, 0xb4, 0x56, 0x77, 0x32, 0xa1, + 0x90, 0x80, 0x39, 0x6e, 0x10, 0x3, 0x1c, 0x4b, + 0x46, 0xea, 0x98, 0xc4, 0x0, 0x29, 0x19, 0xb2, + 0x82, 0x4, 0xf7, 0x94, 0xc4, 0x1, 0xa, 0x3d, + 0x7c, 0x18, 0x7, 0xa, 0xc4, 0xba, 0x98, 0x80, + 0x7f, 0xf0, 0x16, 0xe9, 0xd0, 0x4e, 0x39, 0xcc, + 0xd1, 0xce, 0x62, 0x4b, 0x39, 0xf6, 0xe6, 0x1, + 0xf8, 0x96, 0x77, 0xae, 0x10, 0x92, 0x7e, 0xc, + 0x3, 0xff, 0x9c, 0x29, 0x17, 0xd8, 0xe4, 0x1, + 0x8e, 0x33, 0xb6, 0x98, 0xc4, 0x3, 0xff, 0x86, + 0x28, 0xf7, 0xb6, 0xc4, 0x1, 0x80, + + /* U+7EBF "线" */ + 0x0, 0xff, 0xff, 0x80, 0x7f, 0xf0, 0xd, 0xee, + 0xa1, 0x4c, 0x40, 0x3f, 0xf8, 0xa2, 0xd7, 0xff, + 0xb1, 0x84, 0x0, 0x4a, 0xec, 0x82, 0x1, 0xff, + 0xd0, 0x49, 0x92, 0x2b, 0xd7, 0x49, 0x80, 0x7f, + 0xf3, 0x89, 0xfa, 0xa2, 0x6f, 0xb6, 0xdd, 0x4, + 0x3, 0xff, 0x92, 0x2d, 0xea, 0x20, 0x12, 0x44, + 0x98, 0x7, 0xff, 0x38, 0x9f, 0x36, 0x98, 0xc4, + 0x92, 0x2f, 0x5c, 0x80, 0x3f, 0xf8, 0xc4, 0xd6, + 0x80, 0x11, 0x3c, 0x28, 0x80, 0x7f, 0xf4, 0x89, + 0x67, 0x3e, 0xe1, 0xeb, 0x9c, 0x80, 0x3f, 0xf8, + 0xa9, 0x72, 0x40, 0x12, 0x44, 0x98, 0x7, 0xff, + 0x38, 0x7d, 0xd5, 0x9e, 0x26, 0x55, 0x48, 0xa5, + 0xbd, 0xfb, 0x60, 0xf, 0xfe, 0x11, 0x3c, 0xb0, + 0x80, 0x12, 0x69, 0x44, 0x0, 0x93, 0x98, 0x96, + 0x31, 0x12, 0x34, 0x42, 0x6a, 0xf3, 0x28, 0x40, + 0xc, 0x4d, 0x35, 0x30, 0xec, 0xc5, 0x43, 0x22, + 0x8, 0x1, 0xb8, 0xc0, 0x3f, 0xe2, 0x7e, 0x82, + 0x0, 0x1c, 0x4b, 0x8, 0x0, 0xa2, 0x58, 0xcc, + 0xd1, 0x4a, 0x66, 0xa7, 0x73, 0x2a, 0x19, 0x88, + 0x40, 0x3c, 0x26, 0x8a, 0xcf, 0x13, 0x2a, 0xbc, + 0xde, 0xe7, 0xec, 0x18, 0x7, 0xe1, 0x48, 0xf8, + 0x30, 0x0, 0xa5, 0x92, 0x33, 0x1e, 0x79, 0xc8, + 0x0, 0x2b, 0x50, 0x84, 0xb2, 0xee, 0x89, 0xaa, + 0x5e, 0x5b, 0x10, 0x6, 0x59, 0xba, 0x98, 0x76, + 0x62, 0xa1, 0x90, 0x88, 0x3, 0xff, 0x80, 0x9e, + 0xe4, 0x1, 0x85, 0x22, 0xa6, 0x68, 0x63, 0x0, + 0xa, 0xdd, 0x90, 0x40, 0x4, 0xb1, 0x7, 0x65, + 0x52, 0x1a, 0x7b, 0x0, 0x67, 0x22, 0x0, 0x7e, + 0x12, 0x34, 0x56, 0x74, 0x20, 0xf, 0x97, 0x94, + 0x44, 0x46, 0x8a, 0xcc, 0x53, 0x10, 0xc, 0x29, + 0x76, 0x51, 0x0, 0xff, 0xe1, 0x98, 0x80, 0x62, + 0xb8, 0x9a, 0xbc, 0xde, 0xff, 0x76, 0xe5, 0xd4, + 0xc4, 0x14, 0x40, 0x3e, 0x5a, 0xee, 0x6e, 0x5d, + 0x5f, 0x89, 0x88, 0x0, 0x56, 0xa8, 0xa2, 0x1, + 0x84, 0xd5, 0x9e, 0x26, 0xaf, 0x37, 0xbe, 0x94, + 0x3, 0x9, 0xab, 0x2a, 0x19, 0x8, 0x0, 0x48, + 0xd1, 0x59, 0xec, 0xc0, 0x3f, 0xf8, 0x47, 0x1f, + 0x28, 0x0, 0x27, 0xda, 0x41, 0x0, 0xf2, 0xcd, + 0x4c, 0x3b, 0x2a, 0x19, 0x8, 0x7, 0xe1, 0x47, + 0xab, 0xcd, 0xef, 0xf7, 0x6e, 0x55, 0xcc, 0x3a, + 0x8, 0x7, 0xf8, 0x9a, 0xf5, 0xc8, 0x0, 0x6f, + 0x36, 0xea, 0xcc, 0x78, 0x9a, 0x73, 0x5f, 0x75, + 0x67, 0x89, 0xab, 0xcd, 0xef, 0xc7, 0x10, 0x8, + 0x45, 0xaa, 0x86, 0x42, 0x0, 0x15, 0xaf, 0xee, + 0x6d, 0x31, 0x0, 0x78, 0x4d, 0xef, 0xe5, 0x4, + 0x3, 0x1b, 0xde, 0x5d, 0x4c, 0xa1, 0xd9, 0x79, + 0xc5, 0x62, 0xa6, 0x1d, 0x95, 0xc, 0x84, 0xf, + 0x54, 0x3, 0x3e, 0x98, 0x6, 0x26, 0xaa, 0x28, + 0x80, 0xb6, 0x21, 0x0, 0x7c, 0x96, 0x84, 0x1, + 0xf8, 0x48, 0xd1, 0x5e, 0x26, 0xaf, 0x21, 0x0, + 0x3f, 0xf8, 0x6e, 0x64, 0x1, 0x11, 0xa9, 0x11, + 0xaf, 0x25, 0x0, 0x2, 0xb5, 0x46, 0x20, 0xf, + 0x85, 0xa5, 0x95, 0xe2, 0xaf, 0x37, 0xfd, 0xdb, + 0x97, 0x50, 0xec, 0xa8, 0x62, 0x1, 0xff, 0xc4, + 0x2b, 0x41, 0x0, 0x92, 0x33, 0x12, 0x82, 0x2, + 0x91, 0xb4, 0xa2, 0x1, 0xfe, 0x15, 0x9a, 0x87, + 0x54, 0x32, 0x0, 0xfc, 0x46, 0xad, 0xc, 0x80, + 0x1f, 0xfc, 0x43, 0xc4, 0x0, 0xc2, 0x30, 0xa, + 0xce, 0x5b, 0x98, 0x7, 0xff, 0x20, 0x49, 0x15, + 0xe2, 0xaf, 0x7b, 0xf7, 0x2a, 0x5e, 0x30, 0xc0, + 0x3f, 0xe2, 0x58, 0xbd, 0xa5, 0x0, 0xf1, 0x3e, + 0xd3, 0x10, 0x4, 0x48, 0xa4, 0x1, 0xf8, 0x92, + 0x26, 0xf3, 0xbf, 0xb6, 0xea, 0x1d, 0x50, 0x84, + 0x4, 0xd5, 0xa2, 0xec, 0x40, 0x18, 0x4d, 0x5e, + 0x73, 0xb6, 0x9d, 0x8, 0x0, 0x22, 0x0, 0xc4, + 0xb4, 0x60, 0x1c, 0xdd, 0x5b, 0xa8, 0x40, 0xf, + 0x1a, 0x32, 0x18, 0x80, 0x4, 0x91, 0x5e, 0x6b, + 0x3b, 0xfb, 0x2a, 0x5d, 0xe6, 0x9b, 0xde, 0xe6, + 0x54, 0x31, 0x88, 0x0, 0x96, 0x2f, 0x7b, 0xe5, + 0x0, 0x22, 0x6d, 0xb7, 0x43, 0x5d, 0x70, 0x1, + 0x83, 0x80, 0x71, 0x25, 0x3c, 0x4d, 0xef, 0x73, + 0x6e, 0xa1, 0x94, 0xc4, 0x3, 0xc6, 0x38, 0xe8, + 0x42, 0x0, 0x12, 0x57, 0x9c, 0xed, 0xa7, 0x42, + 0x1, 0x69, 0xa4, 0x10, 0x0, 0xa4, 0x5e, 0x53, + 0x10, 0xb, 0xe1, 0x80, 0x78, 0xda, 0x1d, 0x90, + 0x84, 0x3, 0xff, 0x86, 0x2b, 0x54, 0x98, 0xac, + 0xee, 0x6d, 0x43, 0x18, 0x80, 0x7e, 0x25, 0xbc, + 0xa7, 0x42, 0x10, 0x0, 0x92, 0x3d, 0x42, 0x0, + 0x40, + + /* U+7EC4 "组" */ + 0x0, 0xff, 0xff, 0x80, 0x7f, 0xf0, 0x9, 0xf3, + 0xf6, 0xe1, 0x48, 0x3, 0xff, 0xe4, 0x97, 0x26, + 0x4, 0x88, 0x20, 0xf, 0xf1, 0x3e, 0x7f, 0xff, + 0xf3, 0x7a, 0x50, 0x3, 0xff, 0x90, 0x2d, 0xec, + 0x20, 0x1, 0x68, 0x72, 0x0, 0xff, 0xec, 0x89, + 0x80, 0x7f, 0xf2, 0x9, 0xad, 0x0, 0x23, 0x88, + 0x20, 0x7, 0xff, 0x19, 0x6b, 0xff, 0xff, 0x83, + 0x6c, 0x20, 0x1f, 0xfc, 0xb1, 0x58, 0x92, 0x0, + 0x13, 0xfb, 0x8, 0x7, 0xff, 0x1c, 0xc4, 0x3, + 0xff, 0x82, 0xe2, 0x1, 0xff, 0xcb, 0x38, 0x82, + 0x88, 0x13, 0x74, 0x18, 0x4, 0x2b, 0x7d, 0xb4, + 0xe8, 0x20, 0x1f, 0xfe, 0x33, 0x8e, 0x62, 0x1, + 0x69, 0x91, 0x80, 0x64, 0xbb, 0x20, 0x92, 0x60, + 0x80, 0x7f, 0xf8, 0x4d, 0xaf, 0x5c, 0x80, 0x4, + 0x82, 0x71, 0x14, 0xd6, 0x52, 0x88, 0xa, 0x5d, + 0x28, 0x80, 0x7f, 0x35, 0xf7, 0x7f, 0xf0, 0x71, + 0xc4, 0x3, 0xff, 0x88, 0x2b, 0xa8, 0x20, 0x18, + 0x95, 0xe1, 0xde, 0x65, 0x31, 0x1, 0x5b, 0xa5, + 0x10, 0xf, 0xfe, 0x8, 0x8f, 0xff, 0x4, 0x3, + 0xff, 0x8e, 0x2f, 0xcc, 0x68, 0xcc, 0x78, 0x9a, + 0x96, 0x20, 0xc, 0x2b, 0x76, 0x51, 0x0, 0xff, + 0xe0, 0xad, 0x7f, 0xff, 0xf0, 0x6d, 0x84, 0x3, + 0xff, 0x8a, 0x2b, 0x39, 0x73, 0x28, 0x74, 0x3d, + 0x62, 0x0, 0x1b, 0xed, 0x28, 0x80, 0x7f, 0xf0, + 0xcc, 0x40, 0x3f, 0xf8, 0x2e, 0x20, 0x1f, 0xfc, + 0xc1, 0x49, 0xf9, 0x40, 0x14, 0xad, 0x83, 0x0, + 0xff, 0xf6, 0x9c, 0x6d, 0xb1, 0x0, 0xd, 0xb4, + 0xda, 0x26, 0xaf, 0x37, 0xbe, 0xd8, 0x3, 0xff, + 0xc2, 0x4d, 0x5b, 0x8e, 0x60, 0x1c, 0x6f, 0x32, + 0x87, 0x65, 0x43, 0x21, 0x18, 0xc0, 0x3f, 0xcd, + 0x7d, 0xdf, 0xfc, 0x1c, 0x71, 0x0, 0xff, 0xe2, + 0x98, 0x31, 0x0, 0x78, 0x48, 0xd5, 0x9e, 0x26, + 0xaf, 0x3b, 0xfd, 0xd4, 0xa0, 0x1f, 0xfc, 0x1, + 0x1f, 0xfe, 0x8, 0x7, 0xff, 0x20, 0x5e, 0x21, + 0x35, 0x9b, 0xdf, 0xdb, 0x95, 0x30, 0xec, 0xa8, + 0x62, 0x1, 0xff, 0xc3, 0x5a, 0xff, 0xff, 0xe0, + 0xdb, 0x8, 0x7, 0xff, 0x18, 0x51, 0xd9, 0x4c, + 0x84, 0x3, 0xff, 0xa0, 0x62, 0x1, 0xff, 0xc1, + 0x71, 0x0, 0xff, 0xe9, 0x9, 0xa2, 0xb4, 0x4d, + 0x5e, 0xf7, 0xec, 0x18, 0x7, 0xff, 0x84, 0x4d, + 0x5e, 0x26, 0xaf, 0x7b, 0xfd, 0xd9, 0x75, 0x2e, + 0xca, 0x84, 0x20, 0x13, 0x80, 0x7f, 0xf8, 0x56, + 0xae, 0x1d, 0x95, 0x8, 0x40, 0x31, 0x1a, 0xb4, + 0x4d, 0xe7, 0x7e, 0xc2, 0x0, 0x70, 0x80, 0x63, + 0x0, 0xff, 0xe1, 0x88, 0x7, 0xff, 0x19, 0x7d, + 0x44, 0xd1, 0x9e, 0x6b, 0x37, 0xbf, 0x72, 0xa5, + 0xd9, 0xc, 0x44, 0xd9, 0xff, 0xb6, 0x8, 0x3, + 0x2d, 0xff, 0xff, 0xf0, 0x71, 0x84, 0x3, 0x2d, + 0xff, 0xea, 0x40, 0xe, 0x16, 0xbe, 0xcb, 0x98, + 0x65, 0x32, 0x10, 0xf, 0xff, 0x60, + + /* U+7EC8 "终" */ + 0x0, 0xff, 0xe1, 0x91, 0x90, 0x7, 0xff, 0x28, + 0x48, 0xc8, 0x82, 0x1, 0xff, 0xdb, 0x16, 0xec, + 0xdf, 0xdb, 0x63, 0x0, 0xff, 0xe2, 0x24, 0x66, + 0x37, 0x5d, 0xc9, 0x30, 0xf, 0xfe, 0xb9, 0xcd, + 0x98, 0x4, 0x62, 0x46, 0x1, 0xff, 0xc2, 0x26, + 0x86, 0x10, 0x9, 0x22, 0x6, 0x1, 0xff, 0xd6, + 0x4a, 0x62, 0x0, 0x8e, 0x61, 0x0, 0x3f, 0xf8, + 0x22, 0xd3, 0x23, 0x0, 0xe4, 0x8f, 0xee, 0xff, + 0xe0, 0xed, 0xc2, 0x10, 0x7, 0xff, 0xc, 0x57, + 0xd8, 0x40, 0x2, 0xb2, 0xe4, 0x1, 0xff, 0xc0, + 0x38, 0xd9, 0x40, 0xf, 0xc2, 0x3f, 0xfc, 0x32, + 0x43, 0x23, 0x0, 0xff, 0xe1, 0x1c, 0xc2, 0x0, + 0x47, 0x30, 0xa0, 0x10, 0x8c, 0x1, 0xc4, 0xd7, + 0xae, 0x60, 0x1c, 0x4d, 0x7d, 0xff, 0xfb, 0xad, + 0x88, 0x3, 0x13, 0xcb, 0x8, 0x7, 0xff, 0x0, + 0x9b, 0xdc, 0x80, 0x4, 0xfe, 0xe4, 0x0, 0x16, + 0xae, 0xfc, 0x96, 0x7a, 0xf9, 0x41, 0x0, 0x8, + 0xc0, 0x2, 0x69, 0x83, 0x0, 0xe2, 0x6a, 0xa3, + 0x10, 0x0, 0x5a, 0x60, 0x80, 0x3f, 0xf8, 0x4, + 0xd3, 0x23, 0x0, 0xb, 0x4c, 0x18, 0x4, 0x97, + 0x8, 0x2, 0x6f, 0x72, 0xa4, 0x0, 0x14, 0x8c, + 0xec, 0x94, 0x10, 0x26, 0xdb, 0x62, 0x38, 0xe9, + 0x41, 0x0, 0x13, 0x54, 0xa0, 0x7, 0xfc, 0x29, + 0x3f, 0x28, 0x1, 0x9, 0x1e, 0xcd, 0x52, 0xf2, + 0x94, 0x40, 0x4, 0xfb, 0xaf, 0xa6, 0x64, 0xe5, + 0xb9, 0x1, 0x35, 0x51, 0x88, 0x5, 0x27, 0x71, + 0xcc, 0x0, 0x29, 0x3f, 0x28, 0x1, 0xff, 0xc1, + 0x10, 0x1, 0x80, 0x70, 0x9a, 0xb3, 0x15, 0x48, + 0x62, 0x0, 0x38, 0xf8, 0x30, 0x15, 0x99, 0x31, + 0x0, 0x78, 0x52, 0xa8, 0x60, 0x1f, 0x89, 0xa1, + 0x88, 0x3, 0xff, 0x88, 0x95, 0xc, 0xf1, 0x32, + 0xab, 0xa8, 0x40, 0xe, 0x38, 0xe7, 0x20, 0xf, + 0xfe, 0x0, 0xa3, 0xde, 0xe4, 0x18, 0x7, 0xe2, + 0x7c, 0xd9, 0x63, 0x10, 0xf, 0xfe, 0x11, 0xb4, + 0xc3, 0xb3, 0x10, 0x7e, 0x50, 0x0, 0x29, 0x3c, + 0xe4, 0x1, 0xf8, 0x4d, 0x5e, 0xb7, 0xee, 0x10, + 0x80, 0x2, 0x91, 0x7d, 0xb6, 0xe6, 0x20, 0x2, + 0x69, 0xcf, 0xc9, 0x64, 0x20, 0xf, 0xfe, 0x11, + 0x3e, 0xd2, 0x88, 0x13, 0x55, 0xb1, 0x0, 0x70, + 0xa4, 0x5f, 0x73, 0x2a, 0x14, 0x84, 0x0, 0x4b, + 0x39, 0xf6, 0xe8, 0x24, 0x91, 0x9f, 0x6e, 0x62, + 0x0, 0x13, 0x69, 0xbd, 0xfd, 0xa5, 0x20, 0xf, + 0x13, 0x56, 0x41, 0x80, 0x5, 0x17, 0xc9, 0xe2, + 0x65, 0x57, 0x98, 0x82, 0xc3, 0x30, 0x4, 0x48, + 0xf3, 0x9d, 0xb4, 0xa9, 0x12, 0xc8, 0x40, 0x18, + 0x52, 0x33, 0xf6, 0x9d, 0x48, 0x2, 0x24, 0xe4, + 0x20, 0x8, 0x9f, 0x31, 0x2a, 0x20, 0x18, 0x51, + 0xe6, 0x50, 0xec, 0xc5, 0x43, 0x31, 0x2, 0xc7, + 0xe6, 0x3b, 0x6e, 0x18, 0xc5, 0x27, 0xa1, 0x99, + 0x37, 0xbf, 0xb7, 0xa, 0x62, 0x2, 0x4b, 0x15, + 0xbd, 0xb9, 0xf2, 0x82, 0x1, 0x88, 0x8c, 0x20, + 0x1c, 0x24, 0x68, 0xac, 0xc7, 0x89, 0xab, 0xcd, + 0xd5, 0x30, 0x81, 0x19, 0x84, 0x3, 0xc9, 0x39, + 0xb5, 0xa, 0x62, 0x4, 0x8f, 0x59, 0xfb, 0x2a, + 0x40, 0x10, 0x91, 0x90, 0x7, 0xe5, 0x9b, 0xb6, + 0x6f, 0xfb, 0xb7, 0x2e, 0xa6, 0x50, 0xec, 0xa8, + 0x64, 0x41, 0x0, 0xff, 0xe1, 0x89, 0x2b, 0xd6, + 0x76, 0xd3, 0xa0, 0x80, 0x80, 0xb1, 0x0, 0x7f, + 0xf1, 0xd, 0x10, 0x64, 0x1, 0xff, 0xc3, 0x11, + 0x11, 0x90, 0x80, 0x61, 0x58, 0x83, 0x29, 0x88, + 0x7, 0xc4, 0xb1, 0x7d, 0xba, 0xc8, 0x30, 0xf, + 0xfe, 0x48, 0x91, 0xa2, 0xb3, 0xc4, 0x26, 0xaf, + 0x37, 0xbf, 0xb9, 0xba, 0xb5, 0x0, 0x13, 0xed, + 0x3b, 0xa6, 0xb3, 0xbf, 0xb2, 0xa1, 0xd4, 0xc4, + 0x2, 0x22, 0x8, 0x7, 0xff, 0x15, 0x67, 0x7b, + 0xfd, 0xdb, 0x97, 0x53, 0xe, 0xe6, 0x54, 0x32, + 0x10, 0x0, 0x92, 0xf3, 0x80, 0x9, 0xba, 0xe6, + 0x19, 0x8, 0x40, 0x4d, 0x5e, 0x2b, 0x3b, 0xf6, + 0xe5, 0xd0, 0x84, 0x3, 0xff, 0x86, 0x20, 0x62, + 0x1, 0x84, 0x8d, 0x15, 0x9e, 0x26, 0xf3, 0x7b, + 0xfd, 0xdb, 0x6e, 0x60, 0x10, 0x92, 0x33, 0xcd, + 0xef, 0x73, 0x6e, 0x5d, 0x4c, 0x40, 0x4, 0x8d, + 0x17, 0xbd, 0xb7, 0xc, 0x62, 0x1, 0xfc, 0x97, + 0x57, 0x9b, 0xdf, 0xdb, 0x97, 0x53, 0xe, 0xc8, + 0x64, 0x20, 0x1f, 0xfc, 0x71, 0x24, 0x68, 0xac, + 0xee, 0x65, 0x42, 0x98, 0x80, 0x9, 0x17, 0xdc, + 0x3, 0xfe, 0x24, 0x41, 0x90, 0x80, 0x7f, 0xf7, + 0x44, 0xd5, 0xeb, 0x3b, 0x6a, 0x27, 0xa5, 0x4, + 0x3, 0xe0, + + /* U+7ECF "经" */ + 0x0, 0xff, 0xe2, 0x8, 0x80, 0x3f, 0xff, 0x7, + 0x3f, 0xdb, 0x72, 0xa4, 0x1, 0xff, 0xf2, 0x59, + 0x61, 0x2, 0x45, 0x20, 0xf, 0x85, 0xf3, 0xff, + 0xff, 0xa1, 0xdb, 0x4e, 0x62, 0x1, 0xff, 0xc5, + 0x17, 0x95, 0x0, 0x85, 0x65, 0xc8, 0x3, 0xff, + 0xb2, 0x24, 0xfe, 0x2, 0x1, 0xff, 0xc4, 0x39, + 0xa3, 0x0, 0x8a, 0x61, 0x40, 0x3f, 0xb, 0xe7, + 0xff, 0xff, 0x1f, 0xad, 0x88, 0x3, 0x89, 0xba, + 0xc, 0x3, 0xff, 0x86, 0x2d, 0xe, 0x40, 0x1, + 0x69, 0x72, 0x0, 0x84, 0x60, 0xf, 0xfe, 0x59, + 0x35, 0x51, 0x88, 0x2, 0x26, 0x99, 0x18, 0x7, + 0xff, 0x11, 0x22, 0x8, 0x0, 0x15, 0xb8, 0x40, + 0x8, 0x5a, 0xbb, 0xf2, 0x14, 0x80, 0x3f, 0xf8, + 0x62, 0x8f, 0x79, 0x28, 0x20, 0x1, 0x5a, 0xc9, + 0x40, 0xf, 0xfe, 0x22, 0x4c, 0x98, 0x40, 0x9, + 0x16, 0xa2, 0x0, 0x15, 0xb8, 0x40, 0x13, 0x6f, + 0x61, 0x0, 0xff, 0x9, 0xbd, 0xfd, 0xc2, 0x8, + 0x4, 0x73, 0x94, 0xa2, 0x1, 0xff, 0xc3, 0x37, + 0xba, 0x62, 0x0, 0x8c, 0x7a, 0x26, 0xa9, 0x79, + 0x6a, 0x20, 0x1, 0x5a, 0xb4, 0x10, 0xe, 0x14, + 0x7a, 0xcf, 0xc8, 0x41, 0x0, 0xf8, 0xe7, 0xee, + 0x18, 0xc4, 0x3, 0xff, 0x82, 0xfa, 0x82, 0x1, + 0xc6, 0xae, 0xcc, 0x55, 0x21, 0x8, 0x0, 0x5a, + 0xad, 0x4, 0x44, 0x8d, 0x17, 0xbd, 0x70, 0xa6, + 0x20, 0x1, 0x47, 0x9a, 0x96, 0x31, 0x0, 0x12, + 0x3c, 0xe7, 0x73, 0x25, 0x8c, 0x40, 0x3e, 0x4e, + 0x63, 0x45, 0x67, 0x88, 0x4c, 0x29, 0x0, 0x71, + 0x35, 0x4b, 0x3d, 0xf7, 0x36, 0xe5, 0xd0, 0x80, + 0x21, 0x47, 0xad, 0xeb, 0x86, 0x56, 0x9c, 0xee, + 0x5c, 0xb1, 0x88, 0x0, 0x4d, 0xa7, 0x3b, 0x65, + 0x0, 0x39, 0x27, 0x2e, 0xa6, 0x1d, 0x46, 0xd4, + 0x80, 0x23, 0x8f, 0x94, 0x2, 0x7e, 0x41, 0x0, + 0x89, 0x1e, 0x6f, 0x7a, 0xe1, 0x48, 0x3, 0xf8, + 0x51, 0xa7, 0x3b, 0x6e, 0x14, 0x80, 0x4, 0xb4, + 0x80, 0x1f, 0xe1, 0x5a, 0xf8, 0x30, 0x0, 0xad, + 0xeb, 0x90, 0x6, 0x15, 0xac, 0xc6, 0xf6, 0xdc, + 0x32, 0x10, 0x7, 0xff, 0x20, 0x91, 0xeb, 0x76, + 0xc8, 0x30, 0xf, 0xc2, 0x91, 0x94, 0xa4, 0x1, + 0x1b, 0xe9, 0xcc, 0xaa, 0xf3, 0x7b, 0x1c, 0x8d, + 0x3b, 0x9f, 0xff, 0xfd, 0x4a, 0x20, 0xf, 0x89, + 0xaf, 0x2d, 0xc8, 0x3, 0xc6, 0xd1, 0x7, 0x65, + 0x43, 0x21, 0x0, 0x18, 0x7, 0xff, 0x84, 0xc1, + 0xc8, 0x3, 0xf0, 0x91, 0xab, 0x3c, 0x55, 0xe6, + 0xf6, 0x38, 0x89, 0xf3, 0xff, 0xff, 0x81, 0x28, + 0x1, 0x8a, 0x37, 0xff, 0xfe, 0xd8, 0x30, 0xf, + 0x85, 0x29, 0x51, 0xa2, 0xaf, 0x7b, 0xfb, 0x72, + 0xa6, 0x1d, 0x50, 0xc8, 0x40, 0x3f, 0xfc, 0xa4, + 0xd5, 0x72, 0xea, 0x84, 0x20, 0x1f, 0xff, 0xf1, + 0x23, 0x46, 0x78, 0xab, 0xca, 0x51, 0x0, 0xff, + 0xf1, 0x9, 0x1a, 0x2b, 0xc4, 0xd6, 0x6f, 0x7f, + 0x6e, 0x5c, 0xc3, 0xaa, 0x1b, 0xe9, 0x0, 0x7f, + 0xf8, 0x4e, 0x73, 0x17, 0x50, 0xec, 0xa6, 0x42, + 0x1, 0x9, 0x22, 0xbc, 0x55, 0xf5, 0x10, 0x8f, + 0xff, 0x8, 0x85, 0xc0, 0x3b, 0xc4, 0x7f, 0xf8, + 0xa0, 0x1c, 0x7c, 0xa0, 0x10, 0x9a, 0x34, 0x4d, + 0xe7, 0x7f, 0x6d, 0xd4, 0x3a, 0xa3, 0x4f, 0x77, + 0xff, 0xf, 0x60, 0xc0, 0x31, 0x3e, 0x77, 0x7f, + 0xf0, 0xe9, 0x40, 0x39, 0xeb, 0x7b, 0xfb, 0x2e, + 0x5d, 0x90, 0xc4, 0x3, 0xff, 0xd6, + + /* U+7ED3 "结" */ + 0x0, 0xff, 0xe1, 0x88, 0xc0, 0x1f, 0xfc, 0xf2, + 0x45, 0x5c, 0x84, 0x1, 0xff, 0xd4, 0x15, 0xae, + 0xe6, 0xdc, 0xb1, 0x80, 0x7f, 0xf2, 0x49, 0x66, + 0xab, 0x4a, 0x90, 0x7, 0xff, 0x48, 0x9a, 0x50, + 0x0, 0x48, 0x8e, 0x0, 0xff, 0xf8, 0x9d, 0xc9, + 0x80, 0x64, 0xb9, 0x30, 0xf, 0xfe, 0x48, 0xf8, + 0x7, 0xbc, 0x40, 0x3f, 0xf9, 0xe2, 0xb2, 0xc2, + 0x1, 0xb, 0xc3, 0x8, 0x7, 0x85, 0xaf, 0xff, + 0xff, 0x83, 0x8e, 0x40, 0x18, 0x9f, 0x3f, 0xff, + 0xf8, 0x34, 0xa0, 0x1f, 0xf1, 0xcc, 0x28, 0x4, + 0x29, 0x72, 0x60, 0x10, 0x8c, 0x1, 0xff, 0xe8, + 0x27, 0xf7, 0x20, 0x9, 0x22, 0x94, 0x40, 0x4, + 0xfb, 0xdf, 0x92, 0xeb, 0x3d, 0xdf, 0xfc, 0x1c, + 0x72, 0x0, 0xc4, 0xf9, 0xdd, 0xff, 0xc1, 0xb5, + 0x0, 0xf8, 0xe3, 0xa0, 0xc0, 0x23, 0x89, 0x61, + 0x0, 0xa, 0xcc, 0x18, 0x9, 0xbe, 0x39, 0x8, + 0xff, 0xf0, 0xbc, 0x3, 0xde, 0x23, 0xff, 0xc3, + 0x0, 0xe1, 0x5a, 0xd7, 0x30, 0xc, 0x21, 0xb1, + 0x76, 0xcc, 0xa9, 0x0, 0x21, 0x5a, 0xb4, 0x0, + 0xff, 0xef, 0x8b, 0xe9, 0x80, 0x78, 0x4d, 0x54, + 0x88, 0x33, 0x10, 0x4, 0x2b, 0x76, 0x41, 0x2, + 0x7b, 0xee, 0xff, 0xb2, 0x8, 0x3, 0x14, 0x67, + 0x77, 0xfd, 0xb0, 0x60, 0x1e, 0x25, 0x98, 0x84, + 0xd5, 0xe6, 0xea, 0xd8, 0x80, 0x38, 0x56, 0xec, + 0xa2, 0x1, 0xce, 0x23, 0xff, 0xc0, 0x0, 0xfc, + 0x23, 0xff, 0xc0, 0x30, 0xf, 0xe2, 0x47, 0x73, + 0x2a, 0x18, 0xdc, 0xb1, 0x0, 0x44, 0xdb, 0x4a, + 0x20, 0x1c, 0x4d, 0xd9, 0x9f, 0xfd, 0x59, 0x30, + 0xf, 0xfe, 0x0, 0xad, 0x6b, 0x10, 0x4, 0x73, + 0xf2, 0x60, 0x1f, 0xc2, 0x46, 0x7f, 0xfd, 0x42, + 0x10, 0xf, 0xf8, 0xe3, 0x69, 0x44, 0x0, 0x29, + 0x10, 0x27, 0x67, 0x89, 0xab, 0xb6, 0xd2, 0x80, + 0x42, 0x46, 0x7f, 0xfd, 0x12, 0x10, 0xf, 0xc2, + 0x91, 0x9a, 0xe6, 0x1, 0xc2, 0x91, 0x76, 0xa9, + 0x87, 0x65, 0x44, 0x13, 0x10, 0x81, 0xcf, 0xe6, + 0x7f, 0xf4, 0x65, 0x0, 0x3f, 0x88, 0xcc, 0x20, + 0x1f, 0xc2, 0x46, 0x8a, 0xcf, 0x13, 0x57, 0x9c, + 0xc2, 0x1, 0xf8, 0x48, 0xcf, 0xff, 0x88, 0x42, + 0x1, 0xff, 0xc3, 0x17, 0xe7, 0x56, 0x89, 0xbc, + 0xde, 0xff, 0x76, 0xe5, 0xd4, 0xc3, 0xb2, 0xa1, + 0x90, 0x80, 0x7f, 0x24, 0xe6, 0x7f, 0xf1, 0x39, + 0x88, 0x3, 0xff, 0x86, 0x2b, 0x15, 0x2e, 0xc8, + 0x64, 0x20, 0x1f, 0xff, 0xb1, 0x11, 0x1a, 0x2b, + 0x3c, 0x4d, 0x5e, 0x6f, 0x6c, 0x18, 0x7, 0xff, + 0x7c, 0x96, 0x26, 0xaf, 0x37, 0x5d, 0xfd, 0xcd, + 0xcb, 0xa9, 0x87, 0x65, 0x43, 0x21, 0x22, 0x38, + 0x7, 0xf0, 0x80, 0x7f, 0xf1, 0x1c, 0x4c, 0x3, + 0xff, 0x84, 0x38, 0xcc, 0x54, 0x32, 0x20, 0x80, + 0x70, 0x9a, 0x2b, 0x3c, 0x55, 0xe6, 0xf5, 0x20, + 0x7, 0xe5, 0xaf, 0xff, 0xfe, 0x25, 0xb0, 0x80, + 0x7f, 0xf0, 0x8b, 0x1d, 0x15, 0x9e, 0x26, 0xf3, + 0x7b, 0xfd, 0xd9, 0x75, 0x30, 0xea, 0x86, 0x42, + 0x1, 0xff, 0xe1, 0x15, 0x9b, 0xa9, 0x87, 0x64, + 0x32, 0x10, 0xf, 0xfe, 0x62, 0xdf, 0xff, 0xff, + 0x13, 0x20, 0xc4, 0x78, 0x3, 0xe0, + + /* U+7EDD "绝" */ + 0x0, 0xff, 0xe2, 0x9, 0x10, 0x3, 0xff, 0x90, + 0x26, 0x84, 0x20, 0x1f, 0xfd, 0xf4, 0x8c, 0xde, + 0xda, 0x63, 0x0, 0xff, 0xe1, 0x24, 0x6d, 0xef, + 0x6c, 0x18, 0x7, 0xff, 0x68, 0x57, 0xd8, 0x40, + 0x48, 0x40, 0x80, 0x3f, 0xf8, 0x2, 0xde, 0xc2, + 0x0, 0x25, 0xa3, 0x0, 0xff, 0xec, 0x93, 0x4a, + 0x0, 0x42, 0xd0, 0xc2, 0x1, 0xff, 0x14, 0xda, + 0x0, 0x62, 0x6c, 0xee, 0xff, 0xe0, 0x64, 0xa9, + 0x0, 0x7f, 0xf2, 0x4e, 0xe4, 0xc0, 0x23, 0x9b, + 0x30, 0xf, 0xf8, 0x5a, 0x5c, 0x80, 0x3c, 0x23, + 0xff, 0xc2, 0x37, 0xf6, 0x10, 0xf, 0xfe, 0x30, + 0xb4, 0x30, 0x80, 0x5, 0xa1, 0xc8, 0x3, 0xfc, + 0x4d, 0x52, 0x80, 0x12, 0x4e, 0xff, 0xfe, 0xd8, + 0x30, 0xe, 0x48, 0xb4, 0x10, 0xf, 0xfe, 0x2a, + 0x44, 0x10, 0x0, 0x2b, 0x70, 0x80, 0x12, 0x4e, + 0xea, 0x58, 0xcc, 0xdd, 0x28, 0x1, 0x1c, 0x4b, + 0x10, 0x7, 0xc9, 0x72, 0x60, 0x11, 0xcc, 0x98, + 0x40, 0x3f, 0xf8, 0xa9, 0x32, 0x61, 0x0, 0x24, + 0x5a, 0x88, 0x0, 0x9e, 0x18, 0x88, 0xd3, 0x98, + 0x93, 0x0, 0x85, 0x69, 0x40, 0x8b, 0xe4, 0x89, + 0x61, 0x0, 0xb, 0x4a, 0x1, 0x17, 0x84, 0x3, + 0xf8, 0x9a, 0xa8, 0xc4, 0x0, 0x15, 0xd3, 0x46, + 0x63, 0xcf, 0x41, 0x80, 0x5, 0x1d, 0x8c, 0x3, + 0x85, 0x67, 0x77, 0xfa, 0xdc, 0x80, 0x30, 0xb5, + 0x6e, 0xfd, 0x90, 0x60, 0x1f, 0xa, 0x52, 0x88, + 0x6, 0x15, 0x9a, 0xa4, 0xca, 0x18, 0xc0, 0x2, + 0xd5, 0x48, 0x9c, 0xd8, 0x40, 0xe, 0x13, 0x3f, + 0x8, 0x7, 0x11, 0x9f, 0xc2, 0x1, 0xff, 0xc2, + 0x17, 0xa4, 0x12, 0x34, 0x55, 0x33, 0xa9, 0x80, + 0x71, 0x3e, 0xca, 0x8, 0x4, 0x46, 0x42, 0x1, + 0x1c, 0xee, 0x66, 0xe6, 0x20, 0x9, 0x2f, 0x73, + 0x3b, 0xa4, 0x80, 0x3f, 0xf8, 0x42, 0xd7, 0xdb, + 0x97, 0x55, 0x3, 0x98, 0x0, 0x52, 0x7e, 0xc, + 0x3, 0xff, 0xda, 0x4d, 0x7a, 0xe4, 0x4, 0xfb, + 0x6c, 0x40, 0x1f, 0xfe, 0xc2, 0x5a, 0xc9, 0x41, + 0x1, 0x45, 0xfb, 0x9a, 0xbc, 0xde, 0xe7, 0xfa, + 0xd8, 0x3, 0xe3, 0xad, 0xbb, 0xdc, 0xa4, 0x1, + 0x2d, 0xed, 0xdf, 0x75, 0x10, 0x7, 0xff, 0x9, + 0x23, 0x31, 0x4a, 0x20, 0x18, 0x51, 0xe1, 0xd9, + 0x50, 0xc8, 0x44, 0x2, 0x44, 0x0, 0xfc, 0x46, + 0x89, 0x8c, 0x80, 0x30, 0x91, 0xa2, 0x71, 0x90, + 0x7, 0xff, 0xd, 0x80, 0x44, 0x1, 0xe1, 0x34, + 0x56, 0x78, 0xab, 0xcd, 0xef, 0xf7, 0x4a, 0x0, + 0x7c, 0x4f, 0x7b, 0xbf, 0xfc, 0xcc, 0x83, 0x0, + 0xfc, 0x55, 0x10, 0x9b, 0xce, 0xff, 0x76, 0x5d, + 0x4c, 0x3a, 0xa1, 0x90, 0x80, 0x7f, 0xf0, 0x7, + 0xd4, 0x8b, 0xff, 0x9a, 0x20, 0x1f, 0xe2, 0x57, + 0x64, 0x31, 0x0, 0xff, 0xe2, 0x9, 0x8, 0x7, + 0xff, 0x50, 0x48, 0xc4, 0x3, 0xff, 0x92, 0x26, + 0x8a, 0xf1, 0x37, 0x9b, 0xfe, 0xec, 0x84, 0x0, + 0xff, 0xe9, 0x95, 0x77, 0x59, 0x8, 0x20, 0x18, + 0x4d, 0x59, 0xe2, 0xaf, 0x37, 0xfd, 0xd9, 0x75, + 0xe, 0xc8, 0x64, 0x1, 0x9, 0x80, 0x7f, 0x18, + 0x7, 0xff, 0x29, 0xc4, 0x80, 0x4c, 0x84, 0x40, + 0x19, 0x22, 0xa6, 0x1d, 0x50, 0xc8, 0x3, 0x9, + 0xa2, 0xbc, 0x4d, 0xe6, 0xf7, 0xd2, 0x30, 0x98, + 0x4, 0x5a, 0xe2, 0x1, 0xff, 0xc7, 0x14, 0xd7, + 0x0, 0x88, 0x8e, 0x1, 0xcf, 0x88, 0x48, 0xad, + 0x13, 0x59, 0xbd, 0xfd, 0x97, 0x50, 0xec, 0x86, + 0x42, 0x1, 0x16, 0x38, 0x80, 0x5, 0x6b, 0xbf, + 0xff, 0xf8, 0xfd, 0x6c, 0x20, 0x2, 0x5a, 0x20, + 0xe, 0x27, 0xbd, 0xba, 0x97, 0x65, 0x32, 0x10, + 0xf, 0xfe, 0x22, 0x5d, 0x42, 0x99, 0x8, 0x80, + 0x3f, 0xf9, 0x2, 0x46, 0xd3, 0xf0, 0x40, 0x10, + + /* U+7EDF "统" */ + 0x0, 0xff, 0xe1, 0x89, 0x10, 0x40, 0x3f, 0xf9, + 0xe2, 0x46, 0x40, 0x1f, 0xfd, 0x82, 0x6e, 0xde, + 0xe6, 0x53, 0x18, 0x7, 0xff, 0x18, 0x9f, 0x3f, + 0xb7, 0x39, 0xc8, 0x3, 0xff, 0xaa, 0x75, 0x26, + 0x0, 0x13, 0x10, 0x20, 0xf, 0xfe, 0x31, 0x2d, + 0x98, 0x4, 0x73, 0x68, 0x1, 0xff, 0xd3, 0x4a, + 0x61, 0x0, 0x85, 0xbd, 0x84, 0x3, 0xff, 0x8e, + 0x4d, 0x48, 0x1, 0x19, 0x19, 0x80, 0x3f, 0xfa, + 0x2, 0xbe, 0xc2, 0x1, 0x1c, 0xda, 0x0, 0x78, + 0x5a, 0xff, 0xff, 0xf8, 0x3d, 0x28, 0x1, 0x12, + 0x46, 0x7f, 0xff, 0xf0, 0x76, 0xc, 0x3, 0xfe, + 0x29, 0x84, 0x0, 0x85, 0xa1, 0xc8, 0x4, 0x88, + 0x20, 0x1f, 0xfd, 0xd3, 0x10, 0xf, 0xf0, 0xac, + 0xb9, 0x0, 0x5, 0x6e, 0x10, 0x0, 0x91, 0x9b, + 0xf9, 0x28, 0x8a, 0xff, 0xfb, 0xb6, 0x50, 0x3, + 0x85, 0x6b, 0xbf, 0xfd, 0xdd, 0x7f, 0xfd, 0xd2, + 0x60, 0x1f, 0xa, 0x5d, 0x90, 0x2, 0x48, 0xb5, + 0x10, 0x27, 0x86, 0x10, 0x13, 0x52, 0x1, 0x0, + 0xf0, 0xa4, 0xc2, 0x0, 0x42, 0xb5, 0x6a, 0x20, + 0x1, 0x47, 0xac, 0xc5, 0xa0, 0x80, 0x7f, 0xf0, + 0x4d, 0xaa, 0x8a, 0x20, 0x1, 0x43, 0x16, 0x88, + 0x57, 0x49, 0x80, 0x44, 0xfe, 0xe4, 0x1, 0xc2, + 0xd5, 0x68, 0x20, 0x1, 0x5a, 0xb4, 0x10, 0xc, + 0x66, 0xb5, 0x22, 0x2d, 0x42, 0x0, 0x7f, 0xc4, + 0x96, 0x82, 0x1, 0x85, 0x1e, 0x20, 0xee, 0x53, + 0x10, 0x0, 0xac, 0xc1, 0x80, 0x71, 0x3e, 0xca, + 0x8, 0x0, 0x5a, 0xad, 0x4, 0x3, 0xc4, 0xfd, + 0x6, 0x0, 0x16, 0xa9, 0x40, 0xf, 0xe2, 0x5a, + 0x30, 0x8, 0x44, 0x46, 0x86, 0x20, 0x1e, 0x48, + 0xb4, 0x0, 0x89, 0x1e, 0xf2, 0xc, 0x3, 0x12, + 0x71, 0xb4, 0x42, 0x65, 0x54, 0xbc, 0xc6, 0xfc, + 0x98, 0x6, 0x16, 0x98, 0x30, 0xf, 0xc4, 0xdd, + 0xbd, 0xfd, 0xcd, 0xec, 0x1, 0x0, 0x85, 0x26, + 0x98, 0x40, 0x4, 0xfd, 0x70, 0x82, 0x1, 0xe2, + 0x58, 0x89, 0xdc, 0xcc, 0x55, 0x21, 0x98, 0x88, + 0x20, 0x1f, 0x13, 0xfb, 0x10, 0x7, 0xc2, 0x44, + 0x10, 0x1, 0xc7, 0xc1, 0x80, 0x5, 0x6e, 0x98, + 0x40, 0x31, 0x2d, 0x90, 0x7, 0x8, 0x88, 0xcc, + 0x8a, 0xa6, 0x63, 0xc4, 0x26, 0x55, 0x4b, 0xcc, + 0x6e, 0xbb, 0x9b, 0x6, 0x1, 0x1d, 0xd1, 0x0, + 0x7f, 0xa, 0x57, 0x39, 0x0, 0x5, 0x6e, 0x10, + 0xcc, 0xac, 0xf0, 0xe8, 0x6d, 0xf9, 0xbd, 0xfd, + 0x8, 0x20, 0x7, 0x2e, 0x99, 0x43, 0xb9, 0x46, + 0x62, 0x7b, 0xe8, 0x46, 0x27, 0x87, 0x69, 0xcc, + 0x41, 0x0, 0x78, 0x52, 0x36, 0xd4, 0x80, 0x30, + 0xad, 0x6f, 0x6e, 0x54, 0xc3, 0xd9, 0x98, 0x48, + 0xc8, 0x40, 0xf9, 0xcc, 0xf1, 0x8, 0x7, 0xbc, + 0x8b, 0x18, 0xb8, 0x6, 0x48, 0x96, 0x31, 0x0, + 0xf9, 0x2e, 0xce, 0x60, 0x1f, 0xfc, 0x1, 0x34, + 0x56, 0x89, 0x43, 0x0, 0xf0, 0x88, 0xc0, 0x31, + 0x88, 0x7, 0xff, 0x4d, 0x39, 0x84, 0x4, 0xd5, + 0x9e, 0x6a, 0xf7, 0xbf, 0xdd, 0x97, 0x52, 0xea, + 0x62, 0x1, 0xe6, 0x31, 0x0, 0x84, 0x4e, 0x1, + 0xff, 0xd4, 0x48, 0xff, 0x76, 0x54, 0xc3, 0x2a, + 0x10, 0x80, 0x78, 0x4c, 0xc4, 0x20, 0x1c, 0x98, + 0x80, 0x19, 0x34, 0xc0, 0x3f, 0xf8, 0xe2, 0x30, + 0x7, 0xfc, 0x22, 0x0, 0xf8, 0x49, 0x15, 0xe6, + 0xb3, 0xbf, 0xb3, 0x10, 0xa0, 0x18, 0xf5, 0x4, + 0x2, 0x3c, 0x40, 0xf, 0xfe, 0x43, 0xd7, 0xe5, + 0x39, 0x80, 0x78, 0x48, 0xd5, 0xa2, 0xaf, 0x7b, + 0x9b, 0x75, 0xc, 0xa6, 0x20, 0x2, 0x42, 0x1, + 0x3, 0x8e, 0x62, 0x0, 0x8e, 0xd0, 0x40, 0x3f, + 0xf8, 0xe2, 0x0, 0x13, 0x5b, 0x51, 0x0, 0xc9, + 0x7b, 0x95, 0x2e, 0xa8, 0x42, 0x0, 0x12, 0x46, + 0x8a, 0xce, 0xfd, 0xb9, 0x76, 0xbd, 0x72, 0x0, + 0x89, 0xfd, 0xc8, 0x3, 0xff, 0x84, 0x62, 0x1, + 0x8f, 0x98, 0x2, 0x73, 0x10, 0xc, 0xb8, 0x80, + 0x1, 0x35, 0x79, 0xbd, 0xee, 0x6d, 0xcb, 0xa9, + 0x99, 0x6b, 0x7f, 0x21, 0x4, 0x2, 0x38, 0xf8, + 0x30, 0xf, 0xe2, 0xf2, 0x0, 0xcb, 0x5d, 0xdb, + 0x5c, 0x80, 0x4, 0x6e, 0x1, 0xc2, 0xd5, 0xdf, + 0xd9, 0x50, 0xc8, 0x42, 0x1, 0xf1, 0x27, 0xb8, + 0x4, 0x26, 0xd5, 0xb8, 0xe4, 0x1, 0xff, 0xb, + 0x43, 0x98, 0x88, 0x0, 0x23, 0x80, 0x2, 0x6d, + 0x32, 0x20, 0xf, 0x84, 0x40, 0x1f, 0xfc, 0x51, + 0x5b, 0xdb, 0xde, 0xc9, 0x52, 0x0, 0xff, 0xe1, + 0x8a, 0x46, 0x77, 0x3f, 0xff, 0x76, 0x4a, 0x8, + 0x4, + + /* U+7EF4 "维" */ + 0x0, 0xff, 0xe1, 0x88, 0x80, 0x3f, 0xff, 0x2, + 0xd5, 0xdc, 0xca, 0x73, 0x10, 0xf, 0xfe, 0x11, + 0xc6, 0xff, 0x65, 0xc2, 0x8, 0x92, 0x2b, 0x3b, + 0x65, 0x0, 0x3f, 0xfa, 0x4, 0xd4, 0x80, 0x26, + 0xfe, 0x2, 0x1, 0xff, 0xc1, 0x3b, 0x52, 0x1, + 0x36, 0x6, 0x11, 0x38, 0xb9, 0x89, 0x34, 0xb9, + 0x0, 0x7f, 0xf3, 0x4a, 0xa8, 0x60, 0x12, 0x5c, + 0x98, 0x7, 0xff, 0x4, 0xe9, 0x88, 0x2, 0x4b, + 0x92, 0x0, 0x1c, 0x41, 0x0, 0x22, 0x9b, 0x40, + 0xf, 0xfe, 0x59, 0xd3, 0x10, 0x0, 0x5b, 0xd8, + 0x40, 0x3f, 0xf8, 0x2, 0xb2, 0xc2, 0x1, 0x2f, + 0xb0, 0x80, 0x61, 0x5f, 0x52, 0x22, 0xb6, 0x30, + 0x7, 0xff, 0x24, 0x56, 0x5c, 0x40, 0x7, 0x36, + 0x80, 0x11, 0x19, 0x0, 0x7c, 0x4d, 0x2a, 0x1, + 0xcb, 0x7f, 0xff, 0xad, 0x48, 0x8a, 0xf5, 0xbf, + 0xff, 0x74, 0xa0, 0x7, 0xf8, 0xa6, 0x14, 0x0, + 0x4d, 0xee, 0x40, 0x1, 0x69, 0xcd, 0xec, 0x73, + 0x1, 0x58, 0x93, 0x0, 0xff, 0xef, 0xb, 0x4b, + 0x90, 0xa, 0xc4, 0xc, 0x2, 0x48, 0x82, 0x0, + 0x4c, 0x64, 0x73, 0xa, 0x20, 0x18, 0x9f, 0x3f, + 0xff, 0x63, 0x90, 0x4, 0x2d, 0x7f, 0xff, 0xba, + 0x50, 0x3, 0xc6, 0xfb, 0x28, 0x0, 0x27, 0xc0, + 0x46, 0x63, 0xd4, 0xb0, 0x80, 0xad, 0xc3, 0xcf, + 0x39, 0x0, 0x7e, 0x10, 0xf, 0xc3, 0xe0, 0x1e, + 0x70, 0xf, 0xfe, 0x22, 0x4c, 0x18, 0x6, 0x26, + 0x9a, 0xa4, 0xca, 0x14, 0x80, 0x9, 0x16, 0xeb, + 0xee, 0x40, 0x1f, 0xe1, 0x0, 0xfc, 0x3e, 0x1, + 0xe7, 0x0, 0xff, 0xe2, 0x27, 0xa8, 0x88, 0x8c, + 0xc8, 0xac, 0xa6, 0x20, 0x18, 0xe2, 0x58, 0x49, + 0x6c, 0xc0, 0x59, 0xd4, 0x40, 0x22, 0x7c, 0xff, + 0xfd, 0x8e, 0x40, 0x10, 0xb5, 0xff, 0xfd, 0x6a, + 0x1, 0xf9, 0x6b, 0xb9, 0xb9, 0x8b, 0x8f, 0x12, + 0x10, 0x14, 0x9e, 0x72, 0x0, 0x89, 0xff, 0x31, + 0x36, 0x60, 0x1f, 0xfd, 0x31, 0x0, 0xff, 0xe1, + 0x9c, 0x7c, 0xa0, 0x89, 0x6e, 0x98, 0x80, 0x3e, + 0x33, 0x10, 0x7, 0xc4, 0xfb, 0xff, 0xfb, 0x60, + 0x80, 0x21, 0x6c, 0xff, 0xfa, 0x94, 0x3, 0xfe, + 0x37, 0xbd, 0x72, 0x1, 0x49, 0xf0, 0x77, 0x44, + 0x26, 0xaf, 0x21, 0x0, 0x3f, 0xfc, 0x42, 0x93, + 0x98, 0x84, 0x10, 0x8, 0x52, 0x2a, 0x93, 0xe, + 0xe6, 0x55, 0x8, 0x38, 0x7, 0xf8, 0x9b, 0xf3, + 0x3f, 0x7c, 0x90, 0x4, 0x2f, 0xd9, 0x9f, 0x4a, + 0x0, 0x7c, 0x20, 0x2, 0x0, 0xc2, 0x46, 0xac, + 0xf1, 0x35, 0x79, 0xbd, 0xfd, 0xb0, 0x60, 0x1f, + 0xf0, 0x91, 0x9f, 0xe2, 0x10, 0xe, 0x12, 0x33, + 0xf8, 0x84, 0x3, 0xf2, 0x5e, 0xde, 0x77, 0xf6, + 0xe5, 0x4c, 0x3b, 0x2a, 0x19, 0x8, 0x7, 0xff, + 0xc, 0x5a, 0xb7, 0x7f, 0x53, 0x10, 0x4, 0x2b, + 0x5b, 0xbf, 0x52, 0x0, 0x7f, 0x11, 0xa1, 0x88, + 0x7, 0xff, 0x4, 0x8d, 0x15, 0xd4, 0xc0, 0x3f, + 0x8c, 0x5c, 0x8b, 0xf3, 0xf0, 0x7, 0x1b, 0x11, + 0x7c, 0x22, 0x0, 0xff, 0xe1, 0x9, 0x22, 0xb3, + 0xcd, 0x5e, 0x77, 0xfb, 0x72, 0xea, 0x20, 0x84, + 0x1, 0xff, 0xe0, 0x16, 0xad, 0xef, 0xf7, 0x6d, + 0xd4, 0xc3, 0x2a, 0x18, 0x80, 0x4, 0x91, 0x5e, + 0xcc, 0xc0, 0x1f, 0x89, 0xf7, 0xff, 0xf6, 0xc1, + 0x0, 0x42, 0xd9, 0xff, 0xfd, 0xb0, 0x60, 0x18, + 0x4c, 0x48, 0x40, 0x21, 0x23, 0x56, 0x89, 0xac, + 0xde, 0xfe, 0xdb, 0xa8, 0x64, 0x10, 0xf, 0xfe, + 0xc9, 0x88, 0x7, 0x92, 0x2a, 0xf3, 0xbf, 0xb7, + 0x2a, 0x5d, 0x94, 0xc8, 0x40, 0x3f, 0xf8, 0xa4, + 0xd7, 0xdd, 0xff, 0xce, 0xf8, 0x30, 0xe, 0x13, + 0x54, 0x31, 0x0, 0xff, 0xe9, 0xb, 0x8, 0xff, + 0xf4, 0x0, 0x20, + + /* U+7F6E "置" */ + 0x0, 0xff, 0xff, 0x2d, 0x7f, 0xff, 0xfa, 0x7a, + 0x4c, 0x3, 0xff, 0x8a, 0x28, 0xce, 0xff, 0x29, + 0x0, 0x61, 0x46, 0x77, 0xf9, 0x8c, 0x40, 0x21, + 0x36, 0x77, 0xfc, 0xa4, 0x1, 0xff, 0xcc, 0x2c, + 0x88, 0xfd, 0xc8, 0x1, 0x8b, 0x62, 0x3f, 0x5d, + 0x8c, 0x2, 0x34, 0xb8, 0x8f, 0xde, 0xe0, 0x1f, + 0xfc, 0xc2, 0xbb, 0x4c, 0xfd, 0xe8, 0x1, 0x8a, + 0xae, 0x67, 0xf5, 0x90, 0x4, 0x4b, 0x33, 0xfd, + 0xce, 0x1, 0xff, 0xcc, 0x13, 0x56, 0x6f, 0x90, + 0x80, 0x30, 0x9a, 0xb3, 0x7c, 0x86, 0x1, 0xc4, + 0x8c, 0xdf, 0x90, 0x80, 0x31, 0x88, 0x7, 0xff, + 0x1, 0x6b, 0xff, 0xff, 0x95, 0xd2, 0x80, 0x18, + 0x9f, 0x3f, 0xff, 0xf9, 0x3b, 0x6, 0x1, 0xf0, + 0xb6, 0x7f, 0xff, 0xf3, 0x7a, 0x50, 0x3, 0x13, + 0xe7, 0xff, 0xff, 0x33, 0x60, 0xc0, 0x30, 0x92, + 0x2a, 0xff, 0xf3, 0x4c, 0x40, 0x30, 0x92, 0x2a, + 0xff, 0xf3, 0x53, 0x44, 0x3, 0x92, 0x2a, 0xbf, + 0xf8, 0x77, 0x13, 0x3f, 0x7a, 0x98, 0x6, 0x25, + 0xf9, 0x9f, 0xfe, 0x44, 0x5d, 0x55, 0x2a, 0x40, + 0x1f, 0x85, 0x66, 0xef, 0x4a, 0x88, 0x4, 0x4d, + 0xf9, 0x9f, 0x53, 0x10, 0x6, 0x37, 0xbc, 0xcf, + 0xfe, 0x44, 0x20, 0x7, 0xff, 0xc, 0x95, 0x13, + 0x29, 0x0, 0x7f, 0x85, 0xaf, 0xff, 0xff, 0x99, + 0xb0, 0x60, 0x1f, 0xfd, 0xb1, 0x6b, 0xff, 0xff, + 0xe6, 0x6c, 0x18, 0x7, 0xff, 0x6c, 0x56, 0x73, + 0x3f, 0xf9, 0x94, 0xc4, 0x1, 0xff, 0xdc, 0x11, + 0x33, 0x7f, 0xf3, 0xc, 0xc0, 0x1f, 0xfd, 0xc1, + 0x49, 0xbb, 0xff, 0xe6, 0x42, 0x90, 0x7, 0xff, + 0x6c, 0x56, 0x33, 0x3f, 0xf9, 0x94, 0xc4, 0x1, + 0xff, 0xdb, 0x15, 0x9d, 0xdf, 0xfe, 0x65, 0xb1, + 0x0, 0x7f, 0xf5, 0x49, 0xf3, 0xbb, 0xff, 0xb3, + 0x4a, 0x1, 0xff, 0xc9, 0x39, 0xcc, 0xf6, 0xef, + 0xff, 0x6b, 0x33, 0xd4, 0xc4, 0x1, 0xff, 0xc3, + 0x12, 0x33, 0xff, 0xf2, 0xb0, 0x80, 0x7f, 0xf0, + 0xce, 0x3b, 0xff, 0xff, 0xcb, 0x8e, 0x40, 0x0, + + /* U+7FFB "翻" */ + 0x0, 0xff, 0xff, 0x80, 0x42, 0x22, 0x21, 0x99, + 0x10, 0xaa, 0x67, 0x74, 0x4d, 0x5d, 0xb7, 0xb9, + 0xb2, 0x82, 0x1, 0xff, 0xda, 0x5a, 0xef, 0xfb, + 0xb9, 0xba, 0xcc, 0x5d, 0xaa, 0x93, 0x10, 0x76, + 0x54, 0x41, 0x98, 0x98, 0xf1, 0x45, 0x27, 0xbf, + 0xff, 0xee, 0xaa, 0x5f, 0xff, 0xff, 0x2, 0xd8, + 0x40, 0x32, 0x74, 0x3b, 0x31, 0x59, 0xe6, 0x55, + 0x48, 0x41, 0x0, 0x24, 0xf7, 0xfb, 0xaa, 0xeb, + 0xa6, 0x48, 0x2f, 0xc4, 0x67, 0xe2, 0x10, 0xe, + 0x31, 0x22, 0xf8, 0x40, 0x3f, 0xe1, 0x47, 0xe2, + 0x65, 0x72, 0x23, 0x2a, 0x90, 0xc0, 0x21, 0x31, + 0x2, 0x68, 0x99, 0x54, 0x20, 0x81, 0xbe, 0x67, + 0xdc, 0xe2, 0x1, 0x15, 0x53, 0x77, 0xd9, 0x26, + 0x1, 0xff, 0xc0, 0x16, 0xe5, 0x1, 0x5e, 0x50, + 0xf, 0xf1, 0x55, 0xc, 0x9, 0xe1, 0x44, 0x3, + 0xff, 0x90, 0x22, 0x0, 0xff, 0xe1, 0x92, 0xcc, + 0xde, 0xc2, 0x22, 0x1f, 0xa9, 0x85, 0x10, 0x2, + 0x4d, 0x73, 0x10, 0x4, 0x75, 0x2e, 0x8b, 0x3d, + 0xfb, 0x6, 0x1, 0xf8, 0x6e, 0xbf, 0xb2, 0x8, + 0x3, 0xff, 0x82, 0x38, 0xec, 0xc5, 0x31, 0x11, + 0x22, 0xa9, 0x90, 0x80, 0x21, 0x35, 0x31, 0x0, + 0x89, 0x19, 0x98, 0x4f, 0x8a, 0x4, 0xd4, 0x80, + 0x1f, 0xe, 0x61, 0x0, 0x96, 0x88, 0x3, 0xff, + 0x80, 0x73, 0xdf, 0xfe, 0xea, 0x62, 0x0, 0xfe, + 0x36, 0xad, 0xef, 0xfd, 0x6c, 0x4b, 0xca, 0x2, + 0xdc, 0x8e, 0x1, 0xe7, 0x76, 0x98, 0x12, 0xd2, + 0x80, 0x7f, 0xf1, 0x8d, 0xf6, 0x98, 0x80, 0x3c, + 0x23, 0x1b, 0x56, 0xe5, 0x31, 0x0, 0x72, 0x62, + 0x0, 0x13, 0x70, 0x3, 0xe1, 0x44, 0x10, 0x12, + 0x67, 0x0, 0x7f, 0xf0, 0x45, 0x22, 0xf6, 0xc, + 0x5, 0x26, 0x98, 0x40, 0x9, 0x79, 0x4c, 0x40, + 0x4b, 0x3b, 0xaa, 0x52, 0x1, 0x7c, 0x42, 0x51, + 0x3, 0x0, 0xf8, 0xae, 0x91, 0x55, 0xe0, 0x1f, + 0xe1, 0x37, 0xbf, 0xb7, 0x41, 0x2, 0x6a, 0xa3, + 0x30, 0x40, 0x38, 0x96, 0x77, 0x1c, 0xc0, 0x22, + 0x62, 0x0, 0xb, 0xde, 0xdc, 0x59, 0x80, 0x7e, + 0x37, 0xba, 0x96, 0xe0, 0xf, 0xe1, 0x6d, 0x41, + 0x0, 0x13, 0x5e, 0x4a, 0x8, 0x4, 0x62, 0x23, + 0x0, 0xe3, 0x8c, 0xcb, 0xa0, 0xc0, 0x3e, 0x14, + 0xa4, 0x10, 0xf, 0xf8, 0xda, 0xcc, 0x3, 0xf9, + 0x65, 0xc8, 0x49, 0x8f, 0xae, 0xab, 0x49, 0x3a, + 0x20, 0xfe, 0xab, 0xe9, 0x95, 0xa8, 0x80, 0x71, + 0xc6, 0xdb, 0x10, 0x7, 0xf1, 0x35, 0xec, 0x18, + 0x7, 0xfc, 0x75, 0x43, 0x24, 0x55, 0xff, 0xe6, + 0x11, 0x80, 0xd, 0xf3, 0x5c, 0xc0, 0x3f, 0x85, + 0x6b, 0x25, 0x4, 0x70, 0x7, 0xff, 0x10, 0x9f, + 0x3f, 0xf5, 0xb0, 0x80, 0x16, 0xbf, 0xf5, 0xb0, + 0x80, 0x66, 0x65, 0xec, 0x18, 0x93, 0x5d, 0x30, + 0x80, 0x47, 0x1b, 0x4a, 0x24, 0xd7, 0xb2, 0x40, + 0x1f, 0xfc, 0x43, 0x35, 0x3b, 0xed, 0x51, 0x0, + 0x3f, 0xbb, 0xed, 0x51, 0x0, 0xce, 0x60, 0x2, + 0x5a, 0xc9, 0x46, 0x0, 0xe2, 0xea, 0x56, 0xbc, + 0x94, 0x20, 0xf, 0xfe, 0x30, 0xa3, 0x44, 0x66, + 0x30, 0x8, 0x96, 0x23, 0x31, 0x80, 0x70, 0xad, + 0x7e, 0x52, 0x88, 0x7, 0xe1, 0x66, 0x54, 0xa0, + 0x80, 0x7f, 0xf2, 0x49, 0xf3, 0xff, 0x5b, 0x8, + 0x1, 0x6b, 0xff, 0x5b, 0x8, 0x7, 0x84, 0x60, + 0xf, 0xff, 0xf8, 0x7, 0xff, 0x54, 0x9f, 0x3f, + 0xf5, 0xb0, 0x80, 0x16, 0xbf, 0xf5, 0xb0, 0x80, + 0x7f, 0xf0, 0x9c, 0x4, 0x3, 0xff, 0x80, 0x60, + 0x1f, 0xfc, 0x72, 0x45, 0x5f, 0xfe, 0x1a, 0x10, + 0x7, 0xe2, 0x7c, 0xfe, 0xff, 0x5b, 0x0, 0x45, + 0xe4, 0x71, 0xbf, 0xfb, 0x60, 0xc0, 0x22, 0x20, + 0x80, 0x7f, 0x89, 0x62, 0xab, 0xff, 0x87, 0xe8, + 0x20, 0x1f, 0x12, 0xd9, 0x80, 0x88, 0x8d, 0x1a, + 0x7d, 0xc4, 0xe9, 0x48, 0x4, 0x62, 0x35, 0x7b, + 0x84, 0x0, 0x0, + + /* U+8054 "联" */ + 0x0, 0xff, 0xec, 0x12, 0x3b, 0x90, 0x40, 0x3f, + 0xf8, 0x22, 0x8f, 0xc, 0xa6, 0x42, 0x1, 0xfe, + 0x39, 0xef, 0xff, 0xfe, 0x66, 0x38, 0x80, 0x12, + 0xb2, 0xe2, 0x17, 0xae, 0x40, 0x1f, 0xe2, 0x68, + 0x83, 0xcd, 0x6c, 0x20, 0x80, 0x7f, 0xf6, 0x44, + 0x2, 0x4b, 0xb2, 0x88, 0x0, 0xe3, 0x9c, 0x80, + 0x3e, 0x4b, 0x93, 0x0, 0x8e, 0x61, 0x44, 0x3, + 0xf8, 0xe7, 0xb9, 0x28, 0x1, 0xb, 0x67, 0xff, + 0xd2, 0x80, 0x11, 0x3e, 0xe3, 0x8, 0x4, 0x2b, + 0x76, 0x51, 0x0, 0x1c, 0x4b, 0x8, 0x4, 0x4f, + 0xc, 0x20, 0x2, 0x7f, 0x72, 0x0, 0xff, 0xef, + 0x8, 0xe0, 0x4e, 0x63, 0x33, 0x4f, 0xa0, 0x9, + 0x34, 0xc1, 0x80, 0x5, 0x62, 0x88, 0x47, 0x80, + 0x3f, 0xf8, 0xee, 0x1, 0xe1, 0x0, 0xff, 0x13, + 0xe7, 0x77, 0x5b, 0x99, 0x9a, 0x6f, 0x7b, 0x9b, + 0x28, 0x1, 0x85, 0x6b, 0x7b, 0xba, 0xd0, 0x3, + 0xff, 0x88, 0x2d, 0x7f, 0xfe, 0xe9, 0x40, 0xf, + 0xf0, 0x8f, 0xfc, 0x1, 0xfc, 0x23, 0xff, 0xc0, + 0x30, 0xf, 0xfe, 0x30, 0x91, 0x9f, 0xc2, 0x1, + 0xfc, 0x4f, 0x9d, 0xdf, 0xea, 0x50, 0xc, 0x2d, + 0x7d, 0xdf, 0xfc, 0x9, 0x40, 0xf, 0xfe, 0x20, + 0xbf, 0x66, 0x7d, 0x8, 0x1, 0xff, 0xff, 0x0, + 0xff, 0xf7, 0xb8, 0x7, 0x84, 0x4e, 0x1, 0xff, + 0xc8, 0x13, 0x10, 0xf, 0xfe, 0xc8, 0xb5, 0xff, + 0xfb, 0xa0, 0xc0, 0x3e, 0x5b, 0xff, 0xff, 0xba, + 0x50, 0x3, 0xb, 0x5f, 0xff, 0xff, 0xb, 0x1c, + 0x40, 0x3f, 0xf8, 0x42, 0x46, 0x7f, 0x10, 0x7, + 0xf0, 0x80, 0x7f, 0xf9, 0xc5, 0xfb, 0x33, 0xeb, + 0x40, 0xf, 0x96, 0xbf, 0xff, 0xea, 0x50, 0xf, + 0x2d, 0x7f, 0xff, 0xf0, 0xb1, 0xc4, 0x3, 0xff, + 0xc0, 0x98, 0x80, 0x1e, 0x5e, 0x61, 0x0, 0xff, + 0xeb, 0x89, 0x27, 0x38, 0x4, 0x49, 0x35, 0x76, + 0x83, 0x0, 0xf9, 0x79, 0xc4, 0x3, 0xe4, 0xb9, + 0x30, 0xf, 0xfe, 0x31, 0x23, 0x33, 0x58, 0x2, + 0x17, 0xde, 0xff, 0xbb, 0x6d, 0xcc, 0x3, 0x1a, + 0x2a, 0x20, 0xd8, 0x3, 0x89, 0xe5, 0x44, 0x2, + 0x46, 0x61, 0x0, 0x9, 0xfa, 0xc, 0x3, 0xff, + 0x88, 0xdd, 0x30, 0x84, 0x1, 0x84, 0x60, 0x8, + 0x48, 0xa1, 0x0, 0x85, 0x66, 0xf3, 0x69, 0x40, + 0x23, 0x7e, 0x83, 0x0, 0x89, 0xe2, 0x65, 0xa, + 0x20, 0x2, 0x7e, 0x94, 0x10, 0xf, 0xfe, 0xa, + 0xfb, 0xab, 0x3c, 0x4d, 0x5e, 0x63, 0x7b, 0xfd, + 0xdb, 0xab, 0x50, 0x8, 0xc9, 0x10, 0x64, 0x20, + 0x2b, 0x5b, 0x6, 0x1, 0x13, 0x74, 0x18, 0x1, + 0x6e, 0xca, 0x20, 0x2, 0x6b, 0xc9, 0x41, 0x0, + 0xff, 0xa, 0xc5, 0x4c, 0x3b, 0x2a, 0x19, 0x88, + 0x40, 0x3f, 0xf8, 0x42, 0x6f, 0x7f, 0x4a, 0x20, + 0x11, 0xc7, 0x49, 0x80, 0x70, 0xad, 0x6b, 0x98, + 0x4, 0x4d, 0x7f, 0x92, 0xc6, 0x20, 0x1f, 0xfd, + 0x21, 0x59, 0xfc, 0x84, 0x10, 0x8, 0xdf, 0x30, + 0xe6, 0x1, 0xfe, 0x38, 0xdc, 0x73, 0x10, 0x0, + 0x9b, 0x44, 0x1c, 0x80, 0x3f, 0xfa, 0x22, 0x91, + 0x6a, 0x40, 0x4d, 0x5b, 0x90, 0x60, 0x1f, 0xfc, + 0x31, 0x38, 0xcf, 0xb8, 0x54, 0x6a, 0xb6, 0x20, + 0xf, 0xfe, 0x5b, 0x5f, 0xfd, 0xb0, 0x62, 0xb5, + 0xbf, 0xb2, 0xa4, 0x1, 0xff, 0xca, 0x14, 0x7a, + 0xb9, 0x40, 0xe, + + /* U+8109 "脉" */ + 0x0, 0xf8, 0x47, 0xff, 0x8e, 0x1, 0xff, 0x1b, + 0xdd, 0x4c, 0x32, 0x99, 0x8, 0x7, 0xff, 0x44, + 0xe7, 0xfb, 0xbf, 0xf8, 0xbf, 0x26, 0x1, 0xf0, + 0xb4, 0x41, 0x15, 0x9e, 0x6b, 0x37, 0xbf, 0xb2, + 0xa5, 0xd4, 0xc4, 0x3, 0xff, 0xcc, 0x2d, 0x7d, + 0xb7, 0x50, 0xea, 0x64, 0x20, 0x26, 0xad, 0x15, + 0x9d, 0x8e, 0x40, 0x1f, 0xfc, 0xb4, 0x9e, 0xff, + 0xee, 0x93, 0x0, 0xff, 0xe2, 0x9, 0x22, 0xbc, + 0x56, 0x6f, 0x73, 0x6e, 0x5d, 0x4c, 0x92, 0x98, + 0x80, 0x3f, 0xfb, 0xe4, 0xd7, 0xbb, 0xff, 0xc2, + 0xcf, 0x8e, 0xba, 0xcd, 0xb6, 0x10, 0xf, 0xff, + 0xf, 0x31, 0x17, 0xff, 0x14, 0x5c, 0x3, 0xff, + 0xa4, 0x93, 0xdf, 0xfd, 0xd2, 0x60, 0x1f, 0xc5, + 0x53, 0x77, 0xfe, 0x95, 0x10, 0xf, 0xfe, 0x9, + 0x34, 0x39, 0x88, 0x7, 0xff, 0x68, 0x91, 0x3f, + 0xf8, 0x4, 0x60, 0x10, 0x98, 0x80, 0x71, 0x3f, + 0x4b, 0xc6, 0x7d, 0x29, 0x0, 0x7f, 0xf0, 0x89, + 0xa6, 0xab, 0xa5, 0x48, 0x3, 0x9c, 0x4, 0x7f, + 0xf8, 0x0, 0x1f, 0xe4, 0xc4, 0x0, 0x1c, 0x74, + 0x18, 0x4, 0x4f, 0xc8, 0x40, 0x1f, 0x9c, 0x3, + 0x9b, 0xdd, 0x57, 0x9f, 0x4, 0x3, 0x85, 0xf7, + 0xbb, 0xfe, 0xfa, 0x51, 0x0, 0xf0, 0xa6, 0xbc, + 0xf3, 0x98, 0x0, 0x96, 0xb2, 0x50, 0x40, 0x3f, + 0xfa, 0x82, 0xe0, 0x1f, 0xf0, 0x93, 0x8, 0x7, + 0xc4, 0xd0, 0xc4, 0x4, 0xd5, 0x94, 0xa2, 0x1, + 0xff, 0xc2, 0x10, 0x9, 0xc4, 0xc4, 0x78, 0x84, + 0x3, 0xcc, 0xcb, 0xff, 0xeb, 0x50, 0xc, 0xba, + 0x60, 0x1f, 0xf0, 0xad, 0x64, 0xa8, 0x80, 0x7f, + 0xf1, 0xc, 0x3, 0x1c, 0x6f, 0x77, 0x64, 0x18, + 0x7, 0xff, 0x1, 0x39, 0x40, 0x22, 0x37, 0x0, + 0xff, 0xe0, 0xb, 0x11, 0x80, 0x7f, 0xf1, 0x84, + 0x3, 0xff, 0x9e, 0x9c, 0xa0, 0x11, 0x2d, 0x90, + 0x7, 0xe4, 0x41, 0x80, 0xe, 0x61, 0x44, 0x3, + 0xff, 0x86, 0x26, 0x20, 0x19, 0x2b, 0xff, 0xdd, + 0x26, 0x1, 0xfe, 0x4e, 0x50, 0x8, 0x96, 0x8c, + 0x3, 0xf0, 0x97, 0xc2, 0x88, 0xa, 0xc4, 0x98, + 0x7, 0xff, 0x8, 0xc5, 0x80, 0x21, 0x21, 0x0, + 0xff, 0xe2, 0x93, 0xc2, 0x80, 0x45, 0x54, 0x20, + 0xf, 0xfe, 0x2, 0x44, 0x90, 0x0, 0x9f, 0xdc, + 0x80, 0x3f, 0xf8, 0xd, 0xc4, 0x1, 0x18, 0xb0, + 0x7, 0xff, 0x9, 0xc9, 0xa6, 0xc, 0x0, 0x2b, + 0x2e, 0x40, 0x1f, 0xfc, 0x22, 0x68, 0x50, 0x8, + 0xe3, 0xe9, 0x4, 0x3, 0xf0, 0x92, 0x80, 0x66, + 0xe2, 0x0, 0xff, 0xe0, 0xa, 0x47, 0xca, 0x0, + 0x47, 0x16, 0x80, 0x1f, 0xfc, 0x51, 0x5b, 0x94, + 0x10, 0x1, 0x2d, 0xe5, 0x29, 0x0, 0x72, 0xf9, + 0x0, 0x42, 0x4a, 0x1, 0xff, 0xc2, 0x10, 0xc, + 0x2b, 0x5a, 0xc2, 0x1, 0xff, 0xc8, 0x16, 0xaa, + 0x31, 0x0, 0x42, 0x42, 0x60, 0x18, 0xf5, 0xc4, + 0x0, 0x2f, 0x46, 0x0, 0x11, 0xe5, 0xf1, 0x0, + 0x85, 0x63, 0xaa, 0x99, 0x4a, 0x20, 0x1, 0x18, + 0x2, 0x16, 0x13, 0x0, 0xe7, 0x0, 0xf0, 0xa4, + 0xe5, 0x4d, 0x6c, 0x20, 0x80, 0x47, 0x6e, 0x20, + 0x1, 0x7a, 0x30, 0x16, 0xae, 0xed, 0x6c, 0x40, + 0x11, 0x72, 0x9a, 0xa8, 0x80, 0x32, 0xdf, 0x73, + 0xfe, 0xeb, 0x61, 0x0, 0x8b, 0xc8, 0x3, 0xf8, + 0x55, 0x94, 0x40, 0x3c, 0x57, 0x67, 0x43, 0x6a, + 0x30, 0x0, 0xbe, 0x18, 0x4, 0x22, 0x24, 0x69, + 0xf7, 0x10, 0xf, 0xcb, 0xe8, 0x1, 0xe1, 0x23, + 0x59, 0xf6, 0x10, 0xf, 0xfe, 0x40, 0x9a, 0xc5, + 0xe4, 0x18, 0x6, 0x17, 0xcf, 0xfb, 0xb9, 0xb7, + 0x2c, 0x60, 0x1f, 0xf2, 0xdf, 0xff, 0xbb, 0x72, + 0x98, 0xc0, 0x3f, 0xf9, 0x20, + + /* U+81EA "自" */ + 0x0, 0xff, 0xe5, 0x88, 0xc0, 0x1f, 0xfe, 0x53, + 0x8f, 0xee, 0x7f, 0xba, 0xd4, 0x40, 0x3f, 0xfb, + 0xc2, 0x88, 0x10, 0xc, 0xba, 0x82, 0x1, 0xff, + 0xde, 0x4c, 0x30, 0xc, 0xbe, 0xc2, 0x1, 0xff, + 0xcc, 0x27, 0xdf, 0xff, 0xfe, 0x25, 0x20, 0x7, + 0x2d, 0xff, 0xff, 0xf2, 0xad, 0x84, 0x1, 0xe0, + 0x1f, 0xfe, 0x47, 0x0, 0xff, 0x1c, 0x66, 0xef, + 0xff, 0x56, 0x54, 0x40, 0x3f, 0xf8, 0x6e, 0x46, + 0x45, 0xff, 0xd5, 0x53, 0x0, 0xff, 0xfd, 0x25, + 0x7f, 0xff, 0xf5, 0xb1, 0x84, 0x3, 0xff, 0xf2, + 0x91, 0xbd, 0xdf, 0xfd, 0x5a, 0x51, 0x0, 0xff, + 0xe2, 0x11, 0x4, 0x7f, 0xfa, 0xac, 0x60, 0x1f, + 0xff, 0xa4, 0xbd, 0xcc, 0xff, 0xea, 0xf3, 0x88, + 0x7, 0xff, 0x10, 0x48, 0xcf, 0xff, 0xaa, 0x42, + 0x1, 0xff, 0xc4, 0x37, 0xbc, 0xcf, 0xfe, 0xac, + 0xa0, 0x7, 0xff, 0x11, 0xf5, 0xc, 0xff, 0xfa, + 0xaa, 0x42, 0x1, 0xff, 0xf9, 0x7d, 0x43, 0x3f, + 0xfe, 0xaa, 0x98, 0x80, 0x7f, 0xf0, 0xcd, 0xef, + 0x33, 0xff, 0xab, 0x2a, 0x1, 0xff, 0xc5, 0x12, + 0x2f, 0xfe, 0xb0, 0x88, 0x3, 0xff, 0x88, 0x97, + 0xbb, 0xff, 0xd7, 0x62, 0x11, 0xce, 0x0, + + /* U+82F1 "英" */ + 0x0, 0xff, 0xe3, 0x88, 0xf8, 0x3, 0xff, 0x90, + 0x23, 0xe0, 0xf, 0xfe, 0xda, 0xdf, 0x76, 0xc8, + 0x30, 0xf, 0xfe, 0x20, 0xb6, 0xf7, 0x6d, 0x72, + 0x0, 0xff, 0xec, 0x98, 0x80, 0x63, 0x17, 0x0, + 0xff, 0xe2, 0x18, 0x80, 0x70, 0xf8, 0x80, 0x7f, + 0xf2, 0x8e, 0x3b, 0xff, 0xff, 0x81, 0x28, 0x1, + 0x85, 0xaf, 0xff, 0xff, 0x89, 0xb0, 0x60, 0x18, + 0x9f, 0x3f, 0xff, 0xf8, 0x16, 0xa0, 0x1f, 0xe3, + 0x11, 0xff, 0xe0, 0x0, 0x7f, 0x8, 0xff, 0xf1, + 0x40, 0x3f, 0x8, 0xff, 0xf0, 0x80, 0x3f, 0x8e, + 0x37, 0xbb, 0xff, 0x81, 0x4a, 0x1, 0x89, 0xf3, + 0xbb, 0xff, 0x89, 0xf2, 0x60, 0x18, 0xe3, 0x3b, + 0xbf, 0xf8, 0x14, 0xa0, 0x1f, 0xfd, 0x72, 0x7c, + 0xff, 0xd8, 0xe4, 0x1, 0xff, 0xe6, 0x48, 0xcc, + 0xdd, 0x46, 0x1, 0xbc, 0x40, 0x3f, 0xc2, 0xff, + 0x99, 0xbd, 0x88, 0x3, 0xff, 0xa4, 0x24, 0x5e, + 0x30, 0x11, 0xe0, 0x22, 0xcc, 0x20, 0x1c, 0x3e, + 0xc4, 0x58, 0xc4, 0x7c, 0x64, 0x5f, 0x8, 0x80, + 0x3f, 0xf9, 0x2, 0xd5, 0xbb, 0xff, 0xc6, 0xb6, + 0x20, 0xc, 0x4f, 0x7b, 0xbf, 0xfc, 0x7c, 0x62, + 0x0, 0xff, 0xe7, 0x91, 0x9f, 0xff, 0x0, 0x84, + 0x3, 0xc2, 0x46, 0x7f, 0xfc, 0x2, 0x10, 0xf, + 0xfe, 0xb2, 0x46, 0x67, 0xff, 0x3, 0xd8, 0x80, + 0x31, 0xcf, 0xe6, 0x7f, 0xf0, 0x60, 0xc0, 0x3f, + 0xfc, 0x62, 0x1, 0xff, 0xff, 0x0, 0xe3, 0x0, + 0xff, 0xeb, 0x13, 0xe7, 0xfe, 0xe9, 0x40, 0xc, + 0x95, 0xff, 0xff, 0xc0, 0xc7, 0x20, 0xc, 0x71, + 0xdf, 0xff, 0xfc, 0xe, 0x93, 0x0, 0xc5, 0x1b, + 0xff, 0xa9, 0x40, 0x3f, 0x8, 0x7, 0xff, 0xc4, + 0x4c, 0x3, 0xc4, 0xf9, 0xdd, 0xff, 0xc9, 0xdb, + 0x62, 0x0, 0xff, 0x8e, 0x33, 0xbb, 0xff, 0x95, + 0x4c, 0x1, 0xf8, 0x47, 0xff, 0x90, 0x69, 0x12, + 0xc4, 0x1, 0x13, 0x4c, 0x20, 0x80, 0xe, 0x3a, + 0x14, 0x4, 0x7f, 0xf9, 0x0, 0x1f, 0xfc, 0xd2, + 0x59, 0xcd, 0xa5, 0x20, 0x8, 0xdf, 0xa5, 0x9e, + 0xa8, 0xc4, 0x0, 0x26, 0xbf, 0xc8, 0x52, 0x0, + 0xff, 0xeb, 0x9, 0xb4, 0x56, 0xf6, 0xd3, 0x18, + 0x4, 0x29, 0x39, 0x88, 0x30, 0x8, 0x52, 0x7e, + 0x94, 0x80, 0x2, 0x6f, 0x5b, 0xab, 0x97, 0x53, + 0x10, 0xf, 0xfe, 0x20, 0x91, 0xa3, 0x3c, 0x56, + 0x6f, 0xf6, 0x4b, 0xa9, 0x8, 0x0, 0x4d, 0xa7, + 0x3e, 0xd8, 0xc0, 0x3f, 0x89, 0x6b, 0x75, 0x2a, + 0x40, 0x11, 0x23, 0x45, 0x67, 0x7e, 0xe5, 0xd4, + 0xc3, 0xb2, 0x10, 0x7, 0x15, 0x7d, 0xcc, 0x3a, + 0x99, 0x0, 0x42, 0x48, 0xf3, 0x9d, 0xcc, 0x96, + 0x31, 0x0, 0xff, 0xe2, 0x13, 0x56, 0xf6, 0x54, + 0x29, 0x88, 0x6, 0x23, 0x45, 0x67, 0x8d, 0x20, + 0xf, 0x1c, 0x74, 0xaa, 0x2b, 0xc5, 0x5e, 0xf7, + 0x36, 0xe1, 0x8c, 0x40, 0x3f, 0xf9, 0xc2, 0x6a, + 0xf5, 0x9d, 0xcd, 0xca, 0x98, 0x65, 0x45, 0x99, + 0x31, 0x0, 0x40, + + /* U+83B7 "获" */ + 0x0, 0xff, 0xff, 0x80, 0x7f, 0xf1, 0x4a, 0x37, + 0xff, 0x52, 0x80, 0x7f, 0xf0, 0xc9, 0xf3, 0xff, + 0x5b, 0x8, 0x7, 0xff, 0x2c, 0x8d, 0x13, 0xff, + 0x84, 0x46, 0x1, 0x9b, 0x51, 0x3f, 0xf8, 0x6f, + 0xc2, 0x1, 0x9f, 0xd1, 0x3f, 0xf8, 0x46, 0x20, + 0x1f, 0x1d, 0x6d, 0xdf, 0xff, 0x6, 0x54, 0x40, + 0x31, 0xbd, 0xdf, 0xff, 0xe, 0x98, 0x80, 0x31, + 0xb5, 0x5d, 0xff, 0xf0, 0x61, 0xc4, 0x3, 0xc3, + 0xc8, 0x9f, 0xfc, 0x23, 0x20, 0xe, 0x12, 0x44, + 0xff, 0xe1, 0x99, 0x0, 0x70, 0x92, 0x27, 0xff, + 0x8, 0xc8, 0x40, 0x3c, 0x4d, 0x57, 0x7f, 0xfc, + 0x1e, 0x52, 0x0, 0xc9, 0x17, 0x7f, 0xfc, 0x3e, + 0xa3, 0x0, 0xcb, 0x75, 0x77, 0xff, 0xc1, 0x84, + 0x0, 0xff, 0xe0, 0x9, 0xaa, 0x10, 0x7, 0x8f, + 0x29, 0x98, 0xee, 0xc6, 0x0, 0xff, 0xe2, 0x15, + 0xbb, 0xa2, 0x7d, 0x4, 0x0, 0x20, 0x1f, 0xfc, + 0xa4, 0x8c, 0xc5, 0x5e, 0xea, 0x54, 0x40, 0x57, + 0x2d, 0x9d, 0x8, 0x0, 0x20, 0x1f, 0xfc, 0x15, + 0x8a, 0x87, 0x76, 0x3, 0x32, 0x33, 0xb9, 0xb4, + 0xc4, 0x1, 0xff, 0xc6, 0x48, 0xe9, 0x41, 0x2, + 0x6a, 0xfd, 0xfb, 0x73, 0x1, 0x11, 0x91, 0x4, + 0x3, 0xff, 0x92, 0x6d, 0xaa, 0x60, 0x4b, 0x3b, + 0x90, 0x60, 0x1f, 0xfc, 0x53, 0x6a, 0xb5, 0x10, + 0x0, 0x90, 0x80, 0xd, 0xf3, 0x12, 0x82, 0x1, + 0xff, 0xca, 0x12, 0x59, 0xdc, 0x73, 0x0, 0x1b, + 0xec, 0xa0, 0x7, 0xff, 0x0, 0x96, 0x2f, 0x7a, + 0x94, 0x40, 0x3e, 0x7e, 0x21, 0x0, 0x8, 0xff, + 0xf0, 0xcc, 0x40, 0x33, 0x89, 0x8, 0xe2, 0x9f, + 0x95, 0x53, 0xd5, 0xa8, 0x88, 0x3, 0xe2, 0x7c, + 0xda, 0x74, 0x20, 0x14, 0x69, 0xb8, 0x40, 0x9, + 0x2e, 0x4c, 0x12, 0x3f, 0xbb, 0xff, 0x83, 0x28, + 0x1, 0x8e, 0x37, 0xbb, 0xd9, 0x2a, 0xa7, 0xbd, + 0xee, 0x52, 0x80, 0x78, 0x9f, 0xa5, 0x96, 0x2f, + 0x7a, 0xe5, 0x91, 0xf9, 0x40, 0x22, 0x54, 0x20, + 0xf, 0xfe, 0xe0, 0x80, 0x7f, 0x13, 0x4d, 0x3a, + 0x10, 0x6, 0x26, 0xe4, 0x0, 0xc5, 0xae, 0x93, + 0xdf, 0xff, 0xfc, 0xb, 0x50, 0xf, 0x1c, 0x6f, + 0xff, 0xff, 0xa, 0x94, 0x3, 0xff, 0x88, 0x4b, + 0x5f, 0x28, 0x20, 0x1c, 0x26, 0x20, 0x1f, 0xfc, + 0x12, 0xc7, 0x0, 0xf1, 0xda, 0x90, 0x7, 0xff, + 0x3c, 0x52, 0x33, 0x14, 0xa4, 0x4, 0x86, 0x20, + 0x13, 0x9, 0x80, 0x7f, 0xf0, 0x9, 0x54, 0x40, + 0x1f, 0x1d, 0x50, 0x80, 0x3f, 0xf9, 0x22, 0x6d, + 0x39, 0xf6, 0xe6, 0x20, 0x6f, 0x98, 0x84, 0x30, + 0xd, 0xe2, 0x1, 0xff, 0x25, 0xc9, 0x0, 0x46, + 0xcc, 0x30, 0x1, 0x3c, 0x28, 0x80, 0x7f, 0xf1, + 0x8e, 0x7a, 0x58, 0xc4, 0x9, 0xa7, 0x72, 0xc, + 0x40, 0x6, 0x1, 0xbc, 0x40, 0x3f, 0x89, 0xe1, + 0x84, 0x2, 0x49, 0x88, 0x4a, 0x80, 0x4b, 0x70, + 0x60, 0x1f, 0xfc, 0x53, 0x8f, 0x97, 0x75, 0xee, + 0xa5, 0x88, 0x3, 0x39, 0x8, 0x4, 0x22, 0x30, + 0xf, 0x8e, 0x3e, 0xc, 0x2, 0x28, 0x95, 0x11, + 0x2c, 0xb9, 0x0, 0x5, 0xba, 0x94, 0x40, 0x3f, + 0xf8, 0x84, 0xd1, 0x4, 0x20, 0xf, 0x88, 0xd8, + 0x3, 0x29, 0x8, 0x6, 0x15, 0xad, 0x72, 0x0, + 0x89, 0xf9, 0xc8, 0x3, 0x1c, 0x73, 0x90, 0x0, + 0x96, 0xb2, 0x10, 0x40, 0x3f, 0xf9, 0x82, 0x97, + 0x46, 0x1, 0x26, 0x20, 0x9, 0xbd, 0xfd, 0x28, + 0x80, 0x5, 0x6b, 0xe0, 0xc0, 0x3f, 0x1c, 0x74, + 0x18, 0x4, 0x4f, 0x7f, 0x70, 0x84, 0x1, 0xff, + 0xc0, 0x49, 0xde, 0xeb, 0xfd, 0xd6, 0xc4, 0x0, + 0x16, 0xf7, 0x5a, 0xfc, 0x84, 0x10, 0x0, 0xa4, + 0xed, 0x29, 0x0, 0x7f, 0xf0, 0xd, 0xf3, 0xe, + 0x60, 0x10, 0xa3, 0xdf, 0x39, 0x0, 0x7f, 0x93, + 0x50, 0x2, 0x11, 0x11, 0xd, 0x5e, 0xb2, 0x50, + 0x96, 0x20, 0x82, 0x23, 0x7b, 0xfb, 0x63, 0x0, + 0xff, 0xe3, 0x1c, 0x66, 0xdb, 0xa1, 0x2d, 0x6b, + 0x90, 0x7, 0xfc, 0x93, 0xdd, 0xdb, 0xac, 0xa8, + 0x52, 0x0, 0xc4, 0xd7, 0xdc, 0xc8, 0x41, 0x0, + 0xff, 0xe6, 0x12, 0x45, 0xed, 0x28, 0x80, 0x60, + + /* U+884C "行" */ + 0x0, 0xff, 0xe3, 0x9, 0x18, 0x80, 0x7f, 0xfd, + 0x8e, 0x33, 0x73, 0xb9, 0x90, 0x82, 0x1, 0xff, + 0xee, 0x26, 0xbd, 0x72, 0x0, 0xa, 0xdd, 0x20, + 0x80, 0x64, 0x9e, 0xef, 0xfe, 0xad, 0x28, 0x7, + 0xff, 0x8, 0x9a, 0xf2, 0x50, 0x40, 0x4, 0xdb, + 0x6e, 0x40, 0x1f, 0x18, 0x8f, 0xff, 0x54, 0x3, + 0xff, 0x80, 0x4b, 0x3b, 0xa9, 0x41, 0x0, 0xa, + 0xd6, 0x49, 0x80, 0x7f, 0x25, 0xee, 0xff, 0xf5, + 0x6d, 0x40, 0x3c, 0x29, 0x19, 0x8a, 0x62, 0x0, + 0x89, 0x6b, 0x29, 0x44, 0x3, 0xff, 0x80, 0x24, + 0x5f, 0xfd, 0x51, 0x0, 0xf8, 0x40, 0x46, 0x0, + 0x9, 0xbd, 0xe5, 0x29, 0x0, 0x5, 0x6b, 0xb9, + 0x95, 0xa, 0x40, 0x1f, 0xfe, 0x24, 0x9e, 0x87, + 0xac, 0xc4, 0x20, 0x80, 0x42, 0xb7, 0x65, 0x11, + 0x1a, 0x10, 0x98, 0x7, 0xff, 0x90, 0xde, 0x14, + 0x80, 0x38, 0x9a, 0xad, 0x44, 0x0, 0x2d, 0x56, + 0x82, 0x22, 0x2f, 0xfe, 0xd0, 0x80, 0x7f, 0xf0, + 0xc5, 0x27, 0xe5, 0x4, 0x0, 0x2d, 0x52, 0x82, + 0xb, 0x7b, 0xbf, 0xfd, 0x9c, 0x83, 0x0, 0xff, + 0xe0, 0x1b, 0xed, 0xb1, 0x0, 0x65, 0xb9, 0x40, + 0xf, 0xff, 0x59, 0xbe, 0x62, 0xc, 0x3, 0xc2, + 0x6c, 0x1, 0xe5, 0xaf, 0xff, 0xfe, 0x47, 0x49, + 0x80, 0x62, 0x7d, 0xff, 0xfb, 0xa4, 0xc0, 0x38, + 0x96, 0x77, 0x20, 0xc0, 0x3f, 0xfe, 0x62, 0xb3, + 0x4c, 0x40, 0x10, 0x9c, 0x3a, 0x0, 0x7f, 0xfb, + 0x85, 0x6a, 0xd8, 0x85, 0x27, 0x30, 0xf8, 0x20, + 0x1f, 0xff, 0x1, 0x49, 0xde, 0xb6, 0x20, 0xf, + 0xff, 0xf8, 0x7, 0xff, 0xfc, 0x3, 0xff, 0xfe, + 0x1, 0xff, 0xff, 0x0, 0xff, 0xff, 0x80, 0x7f, + 0xf0, 0x44, 0x7f, 0xe2, 0xe1, 0x0, 0xef, 0x0, + 0xff, 0xf4, 0x25, 0x77, 0x7f, 0x63, 0x90, 0x6, + 0x72, 0x20, 0x7, 0xff, 0x9d, 0x79, 0x40, 0x3e, + 0x11, 0x11, 0xa2, 0xc5, 0xd9, 0x40, 0x3f, 0xf8, + 0x20, + + /* U+8865 "补" */ + 0x0, 0xff, 0x84, 0xde, 0xae, 0x54, 0x40, 0x3f, + 0xf9, 0x27, 0x3d, 0xff, 0xb5, 0xc8, 0x3, 0xff, + 0xa8, 0x4f, 0xf0, 0xa8, 0xd5, 0x92, 0x82, 0x1, + 0xff, 0xf0, 0x26, 0xcc, 0x39, 0x0, 0x9, 0xaa, + 0x8c, 0x40, 0x1f, 0xff, 0x13, 0x8f, 0x83, 0x12, + 0x7e, 0x42, 0x0, 0xff, 0xf3, 0x14, 0x6f, 0xff, + 0xfb, 0x60, 0xc4, 0x9a, 0xb7, 0xff, 0xdb, 0x4c, + 0x60, 0x1f, 0xff, 0x82, 0x7e, 0x0, 0xff, 0xef, + 0x14, 0x6f, 0xff, 0xff, 0x13, 0x65, 0x0, 0x39, + 0x62, 0x4c, 0x3, 0xff, 0xdc, 0x2b, 0x10, 0x40, + 0x8, 0xe2, 0xa, 0x20, 0x1f, 0xfc, 0x33, 0xbe, + 0xdc, 0x95, 0x20, 0xf, 0xfe, 0xb0, 0xad, 0xd9, + 0x44, 0x0, 0x71, 0xce, 0x40, 0x46, 0x42, 0x1, + 0xff, 0xc0, 0x13, 0x31, 0x1b, 0x56, 0x62, 0x10, + 0x40, 0x3f, 0xfa, 0x7, 0x1b, 0x4a, 0x20, 0x3, + 0x8e, 0x72, 0x3, 0x8f, 0xcd, 0xca, 0x52, 0x0, + 0xfe, 0x25, 0x75, 0x10, 0x0, 0x9b, 0xdf, 0xe4, + 0x20, 0x80, 0x7f, 0xf2, 0x49, 0xab, 0x5c, 0xc0, + 0x31, 0x29, 0x98, 0x52, 0x79, 0xc8, 0x3, 0x8c, + 0x3, 0xfd, 0xb5, 0x4f, 0xb7, 0x30, 0x8, 0x4d, + 0xef, 0x29, 0x48, 0x3, 0xff, 0x86, 0x4d, 0x79, + 0x2a, 0x20, 0x1e, 0x26, 0xbf, 0xf5, 0xb1, 0x1, + 0x2d, 0x65, 0x28, 0x80, 0x7f, 0xf0, 0x45, 0x23, + 0x36, 0x50, 0x40, 0x22, 0x5a, 0xcb, 0x73, 0x0, + 0xfc, 0x28, 0xf7, 0x92, 0x82, 0x1, 0xf8, 0x48, + 0x80, 0x22, 0x0, 0x13, 0xf5, 0x28, 0x80, 0x7f, + 0xf2, 0x9, 0xaf, 0x29, 0x48, 0x3, 0x38, 0x7, + 0x85, 0x22, 0xfe, 0xe1, 0x4, 0x0, 0x28, 0xca, + 0x40, 0x19, 0x6f, 0xe9, 0x44, 0x0, 0x4f, 0xd2, + 0x82, 0x1, 0xff, 0xcb, 0x25, 0xac, 0xa8, 0x9d, + 0xc7, 0x30, 0xc, 0x66, 0x44, 0x8, 0x4, 0x4b, + 0x59, 0x76, 0x20, 0xf, 0x89, 0x6b, 0x20, 0xc0, + 0x4, 0xd7, 0xae, 0x40, 0x1f, 0xfc, 0xc1, 0x57, + 0x63, 0x0, 0xf8, 0x9e, 0x18, 0xd2, 0x33, 0x14, + 0xa4, 0x1, 0xff, 0xc1, 0x27, 0xda, 0x51, 0x4, + 0xa5, 0x20, 0xf, 0xfe, 0xd2, 0x4e, 0x5b, 0x98, + 0x80, 0x7f, 0xf1, 0x85, 0x6b, 0xfa, 0x98, 0x80, + 0x3f, 0xfe, 0xe2, 0x30, 0x7, 0xff, 0xfc, 0x3, + 0xff, 0xfe, 0x1, 0xff, 0xff, 0x0, 0xff, 0xfd, + 0x8, 0x7, 0x8, 0x7, 0xff, 0x30, + + /* U+89D2 "角" */ + 0x0, 0xff, 0xe5, 0x89, 0x10, 0x40, 0x3f, 0xfe, + 0x2, 0xd5, 0xba, 0xef, 0xf6, 0xc2, 0x0, 0x7f, + 0xfa, 0x45, 0x6e, 0x10, 0x3, 0x89, 0xa7, 0x33, + 0xff, 0x81, 0xba, 0xcb, 0x84, 0x20, 0xf, 0xfe, + 0xa1, 0x35, 0x5a, 0x88, 0x7, 0xc2, 0x46, 0x7f, + 0xfc, 0x2, 0x21, 0xa3, 0xc2, 0x90, 0x7, 0xff, + 0x44, 0xe3, 0xa5, 0x4, 0x0, 0x2b, 0x5b, 0xff, + 0xff, 0xc0, 0xea, 0x51, 0x0, 0xc7, 0x3c, 0xe4, + 0x1, 0xff, 0xcd, 0x13, 0x8c, 0xc3, 0x98, 0x4, + 0x71, 0x94, 0xa4, 0x1, 0xfe, 0x15, 0xbb, 0x28, + 0x80, 0x12, 0x79, 0x88, 0x3, 0xff, 0x98, 0x4b, + 0x39, 0x87, 0x30, 0xf, 0x1c, 0x67, 0x77, 0xff, + 0x3, 0xfa, 0x94, 0x40, 0x32, 0x4e, 0x77, 0x7f, + 0xf0, 0xb1, 0xc8, 0x3, 0x89, 0x67, 0x36, 0x98, + 0x80, 0x3f, 0xe1, 0x1f, 0xfe, 0x8, 0x7, 0xfc, + 0x23, 0xff, 0xc3, 0x0, 0xfc, 0x4c, 0x20, 0x18, + 0x51, 0x50, 0x40, 0x21, 0x6b, 0xff, 0xff, 0xe0, + 0x5b, 0x8, 0x4, 0x2d, 0x7f, 0xff, 0xfc, 0xe, + 0x93, 0x0, 0xff, 0xe0, 0x9c, 0x6d, 0xd5, 0xfd, + 0xc9, 0x80, 0x79, 0xc0, 0x3f, 0xf8, 0xe, 0x20, + 0x1e, 0x70, 0xf, 0xfe, 0x0, 0x83, 0x80, 0x7f, + 0xf0, 0xc5, 0x15, 0x4, 0x3, 0xf9, 0xc0, 0x3f, + 0xf9, 0xe, 0x1, 0xff, 0xc0, 0x10, 0xf, 0xfe, + 0x88, 0xb5, 0xff, 0xff, 0xf0, 0x31, 0xc4, 0x2, + 0x16, 0xbf, 0xff, 0xfe, 0x7, 0x4a, 0x0, 0x7f, + 0xf4, 0x44, 0x7f, 0xf8, 0x40, 0x1f, 0x8, 0xff, + 0xf0, 0x80, 0x3f, 0xf9, 0x6e, 0x22, 0x0, 0x85, + 0xf7, 0xbb, 0xff, 0x81, 0xae, 0x20, 0x10, 0xb6, + 0xf7, 0x7f, 0xf0, 0x65, 0x0, 0x3f, 0xf9, 0x22, + 0x60, 0x18, 0xbc, 0x40, 0x3f, 0xfd, 0x85, 0xae, + 0x1, 0x9c, 0x4c, 0x3, 0xff, 0x80, 0xe2, 0x1, + 0xe7, 0x0, 0xff, 0xe0, 0x8, 0x7, 0xff, 0x29, + 0xc, 0x80, 0x32, 0x4f, 0x7f, 0xff, 0xf0, 0x2d, + 0x84, 0x2, 0x16, 0xbf, 0xff, 0xfe, 0x7, 0x4a, + 0x0, 0x7f, 0xf1, 0x85, 0xb5, 0x0, 0x3c, 0x23, + 0xff, 0xd8, 0x0, 0xff, 0xe3, 0x9c, 0xda, 0x0, + 0x42, 0xb7, 0xfd, 0xdf, 0xfd, 0x89, 0x40, 0xf, + 0xfe, 0x19, 0x34, 0x39, 0x0, 0x47, 0x30, 0x80, + 0x1f, 0xfe, 0x71, 0x49, 0xf9, 0x40, 0x8, 0x56, + 0x1c, 0x80, 0x3f, 0xf9, 0x82, 0x45, 0x84, 0x7e, + 0x24, 0xe6, 0x0, 0xe1, 0x30, 0x8, 0x5a, 0xad, + 0x88, 0x2, 0x26, 0xab, 0x40, 0xf, 0xfe, 0x72, + 0xde, 0x6e, 0xbb, 0xbe, 0xdb, 0x72, 0x0, 0x85, + 0x54, 0x20, 0x10, 0xb5, 0x5b, 0x19, 0x9e, 0xf2, + 0x50, 0x40, 0x3f, 0xf9, 0xe9, 0x4c, 0x20, 0x1f, + 0x84, 0x8d, 0x15, 0xab, 0x24, 0xc0, 0x3c, 0x29, + 0x39, 0x88, 0x41, 0x0, 0xff, 0xe9, 0x9c, 0x77, + 0xff, 0xee, 0xdc, 0xba, 0x95, 0x20, 0xc, + + /* U+8A00 "言" */ + 0x0, 0xff, 0xe0, 0xac, 0xee, 0xff, 0xf6, 0x69, + 0x44, 0x3, 0xff, 0xa0, 0x64, 0x5f, 0xfd, 0x91, + 0x30, 0xf, 0xfe, 0x82, 0xd7, 0xff, 0xff, 0x66, + 0xd8, 0x40, 0x3f, 0xf8, 0x44, 0xd5, 0x99, 0xff, + 0xf1, 0xb7, 0x30, 0x8, 0x58, 0xcf, 0xff, 0xe2, + 0xbc, 0x1, 0x13, 0xef, 0x77, 0xff, 0xc7, 0xe4, + 0xc0, 0x30, 0x8f, 0xff, 0xcc, 0x3, 0xff, 0x86, + 0x2f, 0x9f, 0xff, 0xfd, 0xbb, 0x61, 0x0, 0xff, + 0xe6, 0x92, 0x99, 0xff, 0xf6, 0xc8, 0x82, 0x1, + 0xff, 0xcc, 0x15, 0x9c, 0xcf, 0xfe, 0xdc, 0xa0, + 0x7, 0xff, 0x34, 0x5f, 0x3f, 0xff, 0xfb, 0x76, + 0xc2, 0x1, 0xff, 0xcd, 0x16, 0x22, 0xff, 0xee, + 0x18, 0x7, 0xff, 0x34, 0x5a, 0xb7, 0x7f, 0xfb, + 0x72, 0xa2, 0x1, 0xff, 0xcb, 0x15, 0xad, 0xdf, + 0xfe, 0xee, 0x41, 0x80, 0x7f, 0xf2, 0xcd, 0x88, + 0xbf, 0xfb, 0xc2, 0xe0, 0x1f, 0xfd, 0x13, 0x9e, + 0xff, 0xff, 0xe8, 0x4a, 0x0, 0x7f, 0xf6, 0x1c, + 0x3, 0xff, 0xa4, 0x62, 0x1, 0xff, 0xff, 0x0, + 0xff, 0xe9, 0x24, 0xff, 0x77, 0xff, 0x42, 0x94, + 0x3, 0xff, 0xb4, 0x23, 0xff, 0xd1, 0x0, 0xff, + 0xed, 0x24, 0xf7, 0xff, 0xff, 0x42, 0x94, 0x47, + 0x18, 0xb8, 0x7, 0xff, 0x0, + + /* U+8BA1 "计" */ + 0x0, 0xff, 0x85, 0x1d, 0xc6, 0x20, 0x1f, 0xfc, + 0xe2, 0x7c, 0xee, 0xd8, 0xe4, 0x1, 0xff, 0xd0, + 0x38, 0xcb, 0x88, 0x66, 0x29, 0x88, 0x3, 0xff, + 0x99, 0xe2, 0x3e, 0xf0, 0xf, 0xfe, 0x89, 0xd4, + 0x29, 0x0, 0x9, 0x67, 0x72, 0xc, 0x40, 0x3f, + 0xfd, 0xc4, 0xb5, 0x96, 0xc6, 0x1, 0x1b, 0xe6, + 0xb9, 0x80, 0x7f, 0xfb, 0xc5, 0x27, 0x6d, 0xc8, + 0x0, 0x48, 0x82, 0x0, 0xff, 0xf9, 0xa, 0x46, + 0x66, 0x83, 0x10, 0xf, 0xff, 0xa8, 0x99, 0x84, + 0x3, 0xff, 0xce, 0x2b, 0x35, 0x5f, 0xfc, 0x37, + 0x40, 0xc, 0x48, 0xab, 0xff, 0xc4, 0x23, 0x0, + 0xc6, 0x4a, 0xbf, 0xfc, 0x43, 0x10, 0xc, 0x7a, + 0x8a, 0xbf, 0xfc, 0x3c, 0x20, 0x8, 0x52, 0x2a, + 0xbf, 0xf8, 0x70, 0xa2, 0x1, 0x85, 0x62, 0xab, + 0xff, 0x87, 0x2a, 0x1, 0x8f, 0x2d, 0xdf, 0xf3, + 0x18, 0x7, 0xff, 0x1, 0xc0, 0x3f, 0xfc, 0x42, + 0x8d, 0x11, 0xfa, 0x90, 0x40, 0x3f, 0x85, 0xaf, + 0xff, 0xff, 0x87, 0xae, 0x40, 0x18, 0x9f, 0x7f, + 0xff, 0xf8, 0x74, 0x80, 0x1f, 0xff, 0xf0, 0xf, + 0xff, 0xf8, 0x7, 0xff, 0xfc, 0x3, 0xff, 0xfe, + 0x1, 0xff, 0xc4, 0x26, 0x75, 0x20, 0xf, 0xff, + 0x90, 0xa3, 0x56, 0xea, 0x62, 0x14, 0x40, 0x1f, + 0xfe, 0x97, 0x10, 0xe, 0x48, 0xb9, 0x52, 0x0, + 0xb, 0x70, 0x7, 0xff, 0xa4, 0xf1, 0x4, 0x3, + 0xf1, 0x2c, 0xe7, 0xdb, 0x10, 0x7, 0xff, 0x98, + 0xe3, 0x9c, 0x80, 0x38, 0x96, 0x73, 0x69, 0x8c, + 0x40, 0x3f, 0xfd, 0x27, 0x6a, 0x40, 0x2, 0x59, + 0xcd, 0xa6, 0x30, 0xf, 0xff, 0x79, 0xcc, 0xaa, + 0xf2, 0x98, 0xc0, 0x3f, 0xfd, 0x0, + + /* U+8BA4 "认" */ + 0x0, 0xff, 0xef, 0x89, 0x22, 0x71, 0x8, 0x7, + 0xff, 0x4c, 0x9a, 0xae, 0x50, 0x40, 0x3f, 0xf9, + 0xab, 0x77, 0xd5, 0x64, 0x1, 0xff, 0xd1, 0x27, + 0xf9, 0x54, 0x6b, 0xfa, 0x62, 0x0, 0xff, 0xe8, + 0x88, 0x7, 0xff, 0x48, 0x9f, 0x29, 0x48, 0x0, + 0x2b, 0x39, 0x87, 0x30, 0xf, 0xfe, 0x41, 0x80, + 0x63, 0x0, 0xff, 0xea, 0x8a, 0xd6, 0x5b, 0x10, + 0x0, 0x4e, 0x3a, 0xc, 0x3, 0xff, 0x8a, 0x20, + 0x1f, 0x8, 0x7, 0xff, 0x58, 0x52, 0x72, 0xd8, + 0xd2, 0x3a, 0xc, 0x3, 0xff, 0x99, 0xe0, 0x1f, + 0xfd, 0xa1, 0x49, 0xcb, 0x73, 0x0, 0xff, 0xe4, + 0x8, 0x6, 0x10, 0x30, 0xf, 0xff, 0x91, 0x11, + 0xc0, 0x3f, 0xfa, 0x24, 0xf9, 0xff, 0xff, 0xc3, + 0xc6, 0x10, 0xf, 0xfe, 0x38, 0xf1, 0x0, 0x61, + 0xf2, 0x0, 0xff, 0xe5, 0xf8, 0x80, 0x7f, 0xf1, + 0x4, 0x3, 0xff, 0x90, 0xc4, 0x20, 0x18, 0x8d, + 0x80, 0x3f, 0xf9, 0x45, 0x3f, 0xbb, 0xfb, 0x21, + 0x0, 0x3f, 0xf9, 0xa4, 0x47, 0x0, 0xf2, 0xe9, + 0x80, 0x7f, 0xf2, 0x84, 0x8b, 0xf8, 0xc8, 0x40, + 0x3f, 0xf9, 0xad, 0xc4, 0x1, 0xe1, 0x44, 0x10, + 0x7, 0xff, 0xb8, 0x49, 0x44, 0x3, 0xe3, 0xb4, + 0x10, 0xf, 0xff, 0x6a, 0x61, 0x80, 0x7f, 0x1e, + 0xa0, 0x7, 0xff, 0xb1, 0x3d, 0x40, 0x32, 0xc4, + 0xc, 0x2, 0x4e, 0x61, 0x0, 0xff, 0xf4, 0xa, + 0xfa, 0x80, 0x64, 0xc6, 0x65, 0x98, 0x4, 0x94, + 0xc4, 0x1, 0xff, 0xd8, 0x30, 0x25, 0x9c, 0xd9, + 0x40, 0xe, 0x26, 0x94, 0x0, 0xc9, 0xce, 0x22, + 0x69, 0x40, 0x8, 0xe6, 0x10, 0x3, 0xff, 0xa0, + 0x20, 0x18, 0xaf, 0xb7, 0x54, 0xc6, 0x4f, 0x86, + 0x0, 0x15, 0x89, 0x30, 0x8, 0x5a, 0x14, 0x40, + 0x2, 0xb0, 0xe4, 0x0, 0x15, 0x98, 0x30, 0xf, + 0xfe, 0x61, 0xeb, 0x0, 0x61, 0x33, 0x10, 0x9, + 0xb5, 0x64, 0x18, 0xad, 0xd9, 0x44, 0x2, 0x38, + 0x81, 0x80, 0x78, 0xe6, 0x10, 0x2, 0x27, 0xe9, + 0x41, 0x0, 0xff, 0xe3, 0x8a, 0x52, 0x90, 0x7, + 0x9, 0xbd, 0xfe, 0x4a, 0x91, 0xbe, 0xd2, 0x88, + 0x4, 0x93, 0xcc, 0x20, 0x1f, 0x85, 0x6a, 0x88, + 0x20, 0x2, 0x6b, 0xa7, 0x30, 0xf, 0xfe, 0x21, + 0x34, 0x31, 0x0, 0x5, 0x1e, 0xff, 0x21, 0x4, + 0x49, 0x39, 0x88, 0x30, 0x8, 0x52, 0xa8, 0xc4, + 0x1, 0xff, 0xc0, 0x15, 0xab, 0x51, 0x0, 0x92, + 0x33, 0x65, 0x44, 0x3, 0xff, 0x80, 0x4f, 0xd0, + 0xad, 0x7f, 0x70, 0x82, 0x1, 0x8c, 0x40, 0x40, + 0x21, 0x49, 0xcb, 0x51, 0x0, 0xff, 0xe2, 0xa, + 0xd6, 0x52, 0x90, 0x6, 0x30, 0x30, 0xf, 0xfe, + 0x11, 0x3d, 0x4a, 0x8, 0x7, 0xe2, 0x59, 0xcb, + 0x9a, 0xcb, 0x62, 0x0, 0xff, 0xe5, 0x12, 0xd6, + 0x5c, 0xd7, 0xd2, 0x90, 0x0, + + /* U+8BB8 "许" */ + 0x0, 0xff, 0x84, 0x88, 0x20, 0x1f, 0xfc, 0x64, + 0x8c, 0xdc, 0xba, 0x63, 0x0, 0xff, 0xed, 0xa, + 0x4e, 0x6e, 0xb2, 0x54, 0x80, 0x3f, 0xf8, 0x47, + 0x8a, 0x64, 0x68, 0xc2, 0x20, 0xf, 0xff, 0x1, + 0x35, 0x65, 0xb1, 0x80, 0x7f, 0x89, 0x10, 0x40, + 0x10, 0xaa, 0x10, 0x7, 0xff, 0x68, 0x52, 0x72, + 0xdc, 0xc0, 0x2, 0x93, 0xb6, 0xc4, 0x1, 0xe1, + 0x4c, 0x30, 0xc, 0x42, 0xe8, 0x9f, 0xfc, 0xc3, + 0x10, 0xf, 0xfe, 0x20, 0xa4, 0x6d, 0xb9, 0x0, + 0x5, 0x75, 0x8, 0x3, 0x93, 0x10, 0x3, 0x8d, + 0xee, 0xff, 0xf9, 0xbe, 0xc4, 0x1, 0xff, 0xc6, + 0x14, 0x8c, 0xa8, 0x9c, 0xb6, 0x20, 0x8, 0x5a, + 0x54, 0x3, 0x84, 0x7e, 0x0, 0xfc, 0x23, 0xff, + 0xc1, 0x71, 0x0, 0xff, 0xe5, 0xa, 0xbb, 0x10, + 0x7, 0x24, 0x40, 0xc0, 0x21, 0x6b, 0xee, 0xf7, + 0xc1, 0x80, 0x62, 0x8c, 0xee, 0xff, 0xe0, 0x5b, + 0x10, 0x7, 0x8e, 0x37, 0xff, 0xff, 0x85, 0xd2, + 0x60, 0x12, 0x4d, 0x30, 0x80, 0x47, 0x16, 0x80, + 0x1f, 0xff, 0x6, 0xd9, 0x63, 0x23, 0x8e, 0x62, + 0x0, 0xff, 0xed, 0x1c, 0xfe, 0x67, 0xe9, 0x51, + 0x0, 0xfe, 0x24, 0x79, 0xcd, 0xc7, 0x20, 0xf, + 0xfe, 0xe8, 0x91, 0x9f, 0xe5, 0x20, 0xf, 0xff, + 0xf8, 0x7, 0x85, 0xaf, 0xff, 0xff, 0x89, 0xd0, + 0x60, 0x18, 0xa3, 0x7f, 0xff, 0xf8, 0x74, 0xa0, + 0x1f, 0xff, 0xa1, 0x0, 0xff, 0xe7, 0x8b, 0xce, + 0xef, 0xff, 0x12, 0xdc, 0x80, 0x31, 0x35, 0xee, + 0xff, 0xf0, 0xe9, 0x40, 0x3f, 0xf9, 0xe2, 0x45, + 0xff, 0xc5, 0x5f, 0x10, 0xe, 0xe6, 0x22, 0xff, + 0xe1, 0x88, 0x7, 0xff, 0xfc, 0x3, 0xff, 0x92, + 0xe2, 0x8f, 0x7b, 0x4c, 0x20, 0x1f, 0xfe, 0xb7, + 0x11, 0x0, 0x42, 0xf5, 0xf7, 0x8, 0x4b, 0x8a, + 0x1, 0xff, 0xea, 0x3d, 0x40, 0xe, 0x11, 0x80, + 0x96, 0x72, 0xd0, 0x3, 0xff, 0xd2, 0xb0, 0xc4, + 0x1, 0xc4, 0xd3, 0xba, 0xa6, 0x31, 0x0, 0xff, + 0xf5, 0x2c, 0x39, 0x1, 0x2d, 0x6e, 0xa5, 0x88, + 0x3, 0xff, 0xe0, 0x73, 0xfb, 0x94, 0xa4, 0x1, + 0xff, 0xe8, + + /* U+8BBE "设" */ + 0x0, 0xff, 0xa, 0x29, 0x88, 0x7, 0xff, 0x1c, + 0x47, 0xff, 0x96, 0x1, 0xff, 0xca, 0x15, 0xaf, + 0xba, 0xcc, 0x52, 0x90, 0x7, 0xff, 0x8, 0x5f, + 0x7b, 0xbf, 0xf9, 0x39, 0x4, 0x1, 0xff, 0xc8, + 0x14, 0xe6, 0x30, 0x1, 0x2d, 0x65, 0xb9, 0x80, + 0x7f, 0xfb, 0xc5, 0x23, 0x31, 0x6, 0x20, 0x29, + 0x19, 0x6e, 0x40, 0x1f, 0x8c, 0x4, 0x2, 0x16, + 0xbf, 0xff, 0xec, 0x61, 0x0, 0xff, 0xe9, 0x9b, + 0xe6, 0xb9, 0x80, 0x8, 0x86, 0x60, 0xf, 0xc3, + 0xc6, 0x1, 0x1f, 0x30, 0x7, 0xff, 0x88, 0xe3, + 0x76, 0xc9, 0x41, 0x0, 0xf8, 0xed, 0xc4, 0x2, + 0x72, 0x20, 0x7, 0xff, 0x90, 0x48, 0x82, 0x1, + 0xf8, 0xe3, 0xdc, 0x40, 0x2, 0xbc, 0xa0, 0x1f, + 0xfc, 0x43, 0x16, 0x0, 0xf0, 0x80, 0x7e, 0x48, + 0xbb, 0xff, 0xe0, 0xd3, 0x10, 0x6, 0x13, 0x69, + 0xcd, 0x73, 0x0, 0xa, 0xdd, 0x90, 0x3, 0xfe, + 0x2e, 0x20, 0x8, 0x5a, 0xff, 0xfd, 0xd4, 0xa0, + 0x1e, 0x13, 0x44, 0xff, 0xe1, 0x70, 0x80, 0x46, + 0xdf, 0x2c, 0x62, 0x4, 0x93, 0xb4, 0xa2, 0x1, + 0xff, 0xc0, 0x17, 0xf8, 0x53, 0x22, 0x8, 0xf1, + 0x14, 0x62, 0x1, 0xe4, 0x8b, 0xbf, 0xa1, 0x0, + 0x3f, 0xc6, 0xfb, 0x71, 0xa, 0xdd, 0x5b, 0x18, + 0x7, 0xff, 0x14, 0xde, 0xb3, 0x75, 0xdd, 0xdb, + 0xb4, 0xa0, 0x7, 0x84, 0xd1, 0x3f, 0x10, 0x80, + 0x7f, 0xc2, 0x2d, 0x9b, 0xce, 0xef, 0xfe, 0x77, + 0xfd, 0xd9, 0x8, 0x20, 0x1f, 0xfd, 0x61, 0x1f, + 0xfe, 0x90, 0x4, 0x22, 0x7, 0x10, 0xf, 0xfe, + 0xaa, 0xd6, 0x41, 0x80, 0x64, 0x8c, 0xdd, 0xff, + 0xe1, 0xdb, 0x90, 0x6, 0x3b, 0x93, 0x0, 0xff, + 0xeb, 0x89, 0xbc, 0x30, 0x80, 0x12, 0x69, 0x88, + 0xbf, 0xf8, 0x6, 0x9e, 0xe4, 0x0, 0x15, 0x86, + 0x10, 0xf, 0xfe, 0xda, 0x44, 0x10, 0x0, 0x2d, + 0x54, 0x51, 0x0, 0xf8, 0x9a, 0xa1, 0x0, 0x23, + 0x98, 0x40, 0xf, 0xfe, 0xa0, 0x9b, 0xdd, 0x30, + 0x80, 0x42, 0xd3, 0x24, 0x10, 0x15, 0xac, 0x95, + 0x10, 0x25, 0xac, 0x94, 0x10, 0x15, 0xad, 0x72, + 0x0, 0xff, 0xe9, 0x1d, 0x53, 0xf2, 0x11, 0x69, + 0x88, 0x3, 0x13, 0x5e, 0xb9, 0x0, 0x9, 0xab, + 0xfb, 0x29, 0x44, 0x0, 0x71, 0x94, 0xa2, 0x1, + 0xff, 0xcd, 0x62, 0x10, 0x8, 0x51, 0x94, 0x40, + 0x52, 0x3d, 0x88, 0x3, 0xe3, 0x98, 0x51, 0x0, + 0x84, 0x60, 0x8, 0x9a, 0x18, 0x80, 0x3f, 0xf9, + 0xc2, 0xdc, 0x80, 0x1e, 0x13, 0x7b, 0xfb, 0x73, + 0x10, 0x8, 0x4d, 0x62, 0xf7, 0xa9, 0x44, 0x3, + 0xf8, 0x9a, 0xfb, 0x6a, 0x14, 0xc4, 0x3, 0xff, + 0x90, 0x71, 0x4, 0x0, 0xc4, 0xd5, 0x98, 0x85, + 0x25, 0x79, 0xac, 0xef, 0xec, 0xa7, 0x42, 0x0, + 0x9, 0xac, 0x5e, 0xf6, 0x4b, 0x18, 0x80, 0x44, + 0xaf, 0x59, 0xdf, 0xd9, 0x73, 0xc, 0x62, 0x1, + 0xff, 0x1c, 0x5a, 0x12, 0x46, 0x6c, 0xa9, 0x0, + 0x4, 0x45, 0x6c, 0xa6, 0x20, 0x11, 0x1a, 0xc5, + 0x6f, 0x65, 0x3a, 0x10, 0x9b, 0x4e, 0x76, 0xd3, + 0xa9, 0x88, 0x6, 0x13, 0x46, 0x41, 0x18, 0x3, + 0xff, 0x80, 0x2b, 0x7b, 0x6e, 0x60, 0x1f, 0x13, + 0xc4, 0xbc, 0xd6, 0x77, 0xee, 0x53, 0xa9, 0x0, + 0x7f, 0xf0, 0x9, 0x62, 0xb3, 0xbf, 0xb2, 0xa1, + 0x99, 0x3e, 0xe4, 0x1, 0x80, + + /* U+8BD5 "试" */ + 0x0, 0xff, 0x12, 0x20, 0x80, 0x3f, 0xfa, 0x89, + 0x19, 0x9a, 0xdc, 0x80, 0x51, 0xdc, 0xa2, 0x1, + 0xff, 0xc5, 0x26, 0xbc, 0xbb, 0x6e, 0x42, 0x8, + 0x7, 0xff, 0x40, 0x48, 0xcf, 0x2f, 0xb2, 0xdd, + 0xa2, 0x15, 0x90, 0x60, 0x1f, 0xfc, 0x32, 0x4d, + 0x41, 0x0, 0x1b, 0xde, 0x4a, 0x8, 0x7, 0xff, + 0x55, 0xd6, 0xec, 0xa2, 0x4, 0xfb, 0x48, 0x20, + 0x1f, 0xfc, 0x12, 0x6a, 0xfa, 0x52, 0x0, 0x13, + 0x5e, 0x4a, 0x8, 0x7, 0xff, 0x50, 0x52, 0xa8, + 0xc2, 0x2, 0xb0, 0xc4, 0x1, 0xff, 0xc3, 0x15, + 0xac, 0xa5, 0x10, 0x17, 0xc6, 0x1, 0x22, 0xff, + 0xe4, 0x19, 0x8, 0x7, 0x13, 0x11, 0x66, 0xd9, + 0x67, 0xaf, 0x53, 0x0, 0xff, 0xe3, 0xa, 0xd6, + 0x6e, 0x52, 0x91, 0x23, 0x37, 0x7f, 0xf8, 0xf9, + 0x8, 0x1, 0x85, 0x6b, 0x77, 0xae, 0x19, 0xeb, + 0x36, 0xd0, 0x3, 0xff, 0x90, 0x45, 0x0, 0x7f, + 0xf8, 0x84, 0xc0, 0x3c, 0x2b, 0x13, 0x3f, 0xfc, + 0x16, 0x20, 0x8, 0xe7, 0xbf, 0xff, 0xf9, 0x36, + 0xa0, 0x18, 0x5f, 0x3f, 0xff, 0xdd, 0x28, 0x1, + 0xc5, 0xaa, 0xcd, 0xff, 0xc1, 0xc6, 0x0, 0xff, + 0xeb, 0x8, 0x7, 0xff, 0x1c, 0xae, 0x26, 0x7c, + 0xe8, 0x20, 0x1f, 0xfd, 0x63, 0x0, 0xc2, 0xe, + 0x1, 0xff, 0xc6, 0x13, 0x56, 0x6f, 0x56, 0x18, + 0x7, 0xfc, 0x4f, 0xbf, 0xff, 0xfc, 0x4d, 0x72, + 0x70, 0x10, 0xc, 0x62, 0x1, 0xff, 0xf4, 0x13, + 0x0, 0xff, 0xf1, 0x93, 0xef, 0xfe, 0xb6, 0x10, + 0x8, 0xe3, 0xbf, 0xed, 0x72, 0x1f, 0x10, 0xc, + 0xc6, 0x20, 0x1f, 0xfe, 0x37, 0x0, 0xf0, 0x80, + 0x7c, 0x42, 0xe0, 0x18, 0x78, 0xc0, 0x3f, 0xfe, + 0x64, 0x40, 0xc, 0x44, 0x60, 0xf, 0xff, 0x9b, + 0x71, 0x0, 0x66, 0x31, 0x0, 0xc4, 0x66, 0x0, + 0xff, 0xe8, 0x12, 0x46, 0x53, 0x8, 0x7, 0xff, + 0x8, 0x49, 0x15, 0x46, 0x62, 0x70, 0xc, 0x7a, + 0x80, 0x19, 0xe7, 0x36, 0x9c, 0xc0, 0x3f, 0xf8, + 0x7e, 0x1, 0xcf, 0x3b, 0xab, 0x73, 0x5d, 0x71, + 0x0, 0xb, 0x18, 0x80, 0x47, 0x1f, 0xee, 0xdb, + 0xab, 0xb1, 0x26, 0x98, 0x6, 0x4c, 0x40, 0x0, + 0x98, 0x81, 0x2e, 0x28, 0x80, 0x7f, 0xf0, 0x5, + 0x10, 0x40, 0x18, 0x8a, 0x0, 0x12, 0x20, 0x2b, + 0x7b, 0xfa, 0x94, 0x3, 0x84, 0x40, 0x10, 0x9a, + 0xf0, 0xa, 0xa1, 0x0, 0x42, 0xde, 0xc4, 0xbe, + 0xa0, 0x1, 0x25, 0x10, 0xf, 0xf0, 0xb5, 0x41, + 0x80, 0x70, 0x9b, 0xde, 0xea, 0xf8, 0x4c, 0xc2, + 0x1, 0x88, 0xd5, 0xa2, 0x6f, 0x7b, 0xfb, 0x2d, + 0x8c, 0xa, 0x94, 0x80, 0x32, 0x4e, 0xdb, 0x8, + 0x1, 0xf4, 0xc0, 0x3f, 0xe1, 0x4c, 0x20, 0x0, + 0xa4, 0x67, 0xe4, 0x21, 0x0, 0x16, 0x65, 0x15, + 0x7b, 0xdf, 0xb9, 0x52, 0xec, 0x84, 0x20, 0x1f, + 0x8a, 0x61, 0x44, 0x3, 0xf0, 0xb5, 0x20, 0x7, + 0xff, 0x4, 0x9f, 0xef, 0x3e, 0xdc, 0xc4, 0x3, + 0xe3, 0x67, 0x54, 0x21, 0x0, 0xff, 0xe3, 0x8a, + 0xd6, 0xc2, 0x90, 0x80, 0x9b, 0xd4, 0x18, 0x7, + 0xff, 0x10, 0xd0, 0xc4, 0x3, 0xff, 0xb8, 0x6f, + 0x5b, 0xdf, 0xd9, 0x8, 0x20, 0x1e, + + /* U+8BDD "话" */ + 0x0, 0xff, 0xf7, 0x88, 0xc0, 0x1f, 0xfc, 0x62, + 0x68, 0x82, 0x90, 0x7, 0xff, 0x4c, 0x48, 0xd1, + 0x59, 0xe2, 0x6b, 0x37, 0xbf, 0xb9, 0x92, 0x80, + 0x1f, 0xfc, 0x23, 0x8f, 0x97, 0x75, 0x65, 0xb1, + 0x80, 0x7e, 0x12, 0x45, 0x67, 0x74, 0x4c, 0xaa, + 0xed, 0x9b, 0xae, 0xff, 0xbb, 0x72, 0xea, 0x61, + 0xd9, 0x4c, 0x84, 0x2, 0x34, 0xf6, 0x20, 0xf, + 0xfe, 0x1, 0xc7, 0x39, 0x88, 0xa, 0x4e, 0xe3, + 0x98, 0x7, 0xb, 0xfd, 0x4c, 0x41, 0xd9, 0x8a, + 0x88, 0x32, 0x20, 0x80, 0x7e, 0x25, 0x67, 0x89, + 0xac, 0xde, 0xfe, 0xdb, 0x62, 0x0, 0xff, 0xe1, + 0x1c, 0x66, 0xc1, 0x80, 0x4, 0xe3, 0x69, 0x0, + 0x32, 0xfc, 0xbb, 0xa2, 0x65, 0x54, 0xbc, 0xc6, + 0xeb, 0xb6, 0x50, 0x3, 0x12, 0xc4, 0xc3, 0xb2, + 0x99, 0x8, 0x7, 0xff, 0x2c, 0xdf, 0x6d, 0x88, + 0x8b, 0x70, 0x80, 0x1c, 0x8d, 0x10, 0x76, 0x62, + 0xa9, 0xc, 0xc4, 0x41, 0x20, 0xf, 0xfe, 0xf0, + 0xa4, 0xee, 0xa9, 0x48, 0x3, 0xff, 0xfe, 0x0, + 0x11, 0xff, 0xe2, 0x10, 0x80, 0x7c, 0x23, 0xff, + 0xc5, 0x0, 0xf2, 0x57, 0xff, 0xff, 0x7, 0x1c, + 0x80, 0x39, 0xab, 0xbb, 0xff, 0x87, 0xb0, 0x80, + 0x18, 0x9f, 0x3b, 0xbf, 0xf8, 0x7f, 0x26, 0x1, + 0xff, 0xc7, 0x10, 0xf, 0xff, 0x62, 0x5e, 0xef, + 0xd2, 0xa2, 0x1, 0xff, 0x35, 0xff, 0xff, 0xf0, + 0xfa, 0x50, 0x3, 0x13, 0xef, 0xff, 0xff, 0xf, + 0xa4, 0xc0, 0x38, 0x48, 0xbe, 0x53, 0x0, 0xff, + 0xe8, 0x88, 0x7, 0xff, 0xfc, 0x3, 0xff, 0xd8, + 0x23, 0xff, 0xc0, 0x21, 0x0, 0xf8, 0x47, 0xff, + 0x84, 0x1, 0xff, 0xd8, 0x6a, 0xee, 0xff, 0xb6, + 0x10, 0x3, 0x13, 0xe7, 0x77, 0xff, 0x2, 0x94, + 0x3, 0xff, 0xfe, 0x1, 0xff, 0xcc, 0x25, 0x9c, + 0xa5, 0x0, 0xfc, 0x51, 0xbf, 0xff, 0xfc, 0x7a, + 0x50, 0xf, 0xfe, 0x91, 0xe4, 0x66, 0x29, 0x8d, + 0x65, 0xcc, 0x3, 0xff, 0xd2, 0x2a, 0x42, 0x1, + 0xa, 0x29, 0x88, 0xa, 0x47, 0xb1, 0x0, 0x7f, + 0xfa, 0x5, 0xf5, 0x0, 0x3e, 0x26, 0xaf, 0xb7, + 0x31, 0x10, 0x7, 0xde, 0x20, 0x1f, 0xfd, 0xd1, + 0x5a, 0x94, 0x0, 0xc2, 0x93, 0xba, 0x95, 0x10, + 0xf, 0xf8, 0x9f, 0x3f, 0xff, 0xf8, 0xf4, 0xa0, + 0x1f, 0xfc, 0x81, 0x58, 0x72, 0x2, 0x6b, 0xfb, + 0x62, 0x0, 0xff, 0xf8, 0x9c, 0x67, 0x64, 0xa0, + 0x80, 0x7f, 0xf1, 0x8a, 0x37, 0xff, 0xff, 0x8f, + 0x6c, 0x23, 0xe0, 0xf, 0x80, + + /* U+8BED "语" */ + 0x0, 0xfe, 0x12, 0x20, 0x7, 0xff, 0x8, 0x47, + 0xff, 0xb6, 0x1, 0xff, 0xc1, 0x25, 0xaf, 0xdd, + 0xa5, 0x44, 0x3, 0xf1, 0xc6, 0x77, 0x7f, 0xf6, + 0xb1, 0x84, 0x3, 0xff, 0x80, 0x66, 0x0, 0x13, + 0x57, 0xdb, 0x90, 0x7, 0xbc, 0x47, 0xff, 0x82, + 0x1, 0xf0, 0x8f, 0xff, 0x1d, 0xc0, 0x3f, 0xf8, + 0x4, 0xb3, 0x98, 0x73, 0x10, 0x14, 0x8c, 0xc3, + 0x98, 0x0, 0xdf, 0x3b, 0xbf, 0xdf, 0x8, 0x1, + 0x89, 0xf3, 0xbb, 0xff, 0x8d, 0x6c, 0x20, 0x1f, + 0xfc, 0x11, 0x38, 0xcd, 0x83, 0x0, 0xff, 0xe4, + 0xaf, 0xa0, 0x6, 0x7d, 0x20, 0xf, 0xe1, 0x1c, + 0x1, 0xff, 0xcd, 0x37, 0xdc, 0xcc, 0xe6, 0x1, + 0xcd, 0x7f, 0xff, 0xad, 0x80, 0x39, 0x6b, 0xff, + 0xfd, 0xdd, 0xb6, 0xc, 0x3, 0xff, 0x98, 0x26, + 0x62, 0x0, 0xfc, 0x62, 0x45, 0xe1, 0x10, 0x7, + 0x84, 0x44, 0x5f, 0xc2, 0x1, 0xc3, 0xe2, 0x1, + 0xff, 0x1b, 0xdd, 0xff, 0xf0, 0x65, 0x44, 0x3, + 0xe5, 0xad, 0xdf, 0x52, 0x0, 0x72, 0xdf, 0x6e, + 0xff, 0x5a, 0x80, 0x67, 0x13, 0x0, 0xff, 0x9b, + 0x51, 0x3f, 0xf8, 0x44, 0x60, 0x1f, 0xfc, 0x22, + 0xc7, 0x0, 0xc7, 0xa8, 0x1, 0xfc, 0x26, 0xc0, + 0x18, 0x4c, 0x40, 0x3f, 0xe7, 0xc7, 0x7f, 0x94, + 0x80, 0x3f, 0xc2, 0x3f, 0xe2, 0x54, 0x20, 0x8, + 0x58, 0x8c, 0x47, 0xf9, 0x7c, 0x40, 0x21, 0x0, + 0x8, 0xfc, 0x1, 0xc4, 0xd1, 0x1f, 0x4a, 0x8, + 0x7, 0xe5, 0xbe, 0xef, 0xed, 0x83, 0x0, 0xc2, + 0xb5, 0xbd, 0xdf, 0xd6, 0xc4, 0x1, 0xa, 0xd7, + 0x77, 0x7c, 0x18, 0x7, 0xff, 0x34, 0xc4, 0x7f, + 0xfb, 0xe6, 0x20, 0x1f, 0xfc, 0xd5, 0x9e, 0xef, + 0xfe, 0xfe, 0xc1, 0x80, 0x7f, 0xf4, 0x49, 0xab, + 0x33, 0xff, 0xab, 0x8, 0x1, 0xff, 0xd7, 0xe7, + 0x33, 0xff, 0xea, 0x90, 0x80, 0x7f, 0xf4, 0xc9, + 0xd, 0xc0, 0x38, 0x56, 0xbb, 0xbf, 0xf9, 0x16, + 0xc2, 0x1, 0xff, 0xd4, 0x13, 0x6a, 0xdd, 0x5f, + 0xe0, 0x80, 0x71, 0x88, 0xff, 0xf2, 0x5c, 0x4c, + 0x3, 0xff, 0x98, 0xe6, 0x20, 0x11, 0x46, 0x62, + 0x54, 0x80, 0x2, 0x64, 0x1, 0xff, 0xe9, 0x3c, + 0x40, 0xf, 0xc2, 0x6d, 0x5b, 0xa8, 0x30, 0xf, + 0xff, 0x42, 0xcb, 0x88, 0x6, 0x13, 0x7b, 0xfc, + 0x95, 0x20, 0xf, 0x85, 0xaf, 0xbb, 0xff, 0x91, + 0x8e, 0x40, 0x1f, 0xfc, 0xa5, 0x88, 0x10, 0x9b, + 0xdf, 0xe4, 0x20, 0x80, 0x7f, 0xf0, 0x84, 0x7f, + 0xf9, 0x0, 0x1f, 0xfc, 0xe2, 0x7c, 0xfc, 0x84, + 0x10, 0xf, 0xfe, 0x18, 0xb5, 0xff, 0xff, 0xf2, + 0x35, 0xcc, 0x47, 0x18, 0x7, 0xe0, + + /* U+8BF7 "请" */ + 0x0, 0xff, 0xef, 0x12, 0x2a, 0xe4, 0x20, 0xf, + 0xfe, 0x79, 0xbd, 0x51, 0x88, 0x3, 0xff, 0x9e, + 0x4b, 0x35, 0x5b, 0xdc, 0x3, 0xff, 0x9a, 0x71, + 0xd0, 0xaa, 0x9c, 0xc3, 0x98, 0x80, 0x7c, 0x28, + 0xf3, 0x3f, 0xfc, 0x18, 0xb3, 0x0, 0xcd, 0xd3, + 0x3f, 0xfc, 0x28, 0x52, 0x0, 0xfc, 0x71, 0xf2, + 0x82, 0x2, 0x71, 0x9b, 0x6, 0x1, 0xc6, 0x6a, + 0x66, 0xff, 0xe0, 0xa9, 0x88, 0x6, 0x24, 0x66, + 0xff, 0xe1, 0xe0, 0x80, 0x7f, 0x89, 0xaf, 0x21, + 0x4, 0x0, 0x6f, 0xb6, 0xa2, 0x0, 0x27, 0xce, + 0xef, 0xfe, 0xe, 0x39, 0x0, 0x64, 0x9e, 0xef, + 0xfe, 0x17, 0xc9, 0x80, 0x7f, 0xf0, 0x49, 0xea, + 0x8c, 0x40, 0x4f, 0xe8, 0x20, 0x18, 0xd5, 0xa6, + 0x7f, 0xea, 0x43, 0x0, 0xcd, 0xb3, 0x3f, 0xfc, + 0x6, 0x50, 0xf, 0xfe, 0x30, 0xa4, 0xe7, 0x64, + 0xa0, 0x80, 0x70, 0xec, 0xbb, 0xff, 0xcc, 0x62, + 0x1, 0x89, 0x1d, 0xff, 0xf8, 0x15, 0x84, 0x1, + 0xff, 0xc8, 0x11, 0x80, 0x3f, 0x1c, 0xf7, 0xff, + 0xfd, 0x8e, 0x40, 0x19, 0x27, 0xbf, 0xff, 0xed, + 0x83, 0x0, 0xe1, 0x6a, 0xcc, 0xff, 0xe0, 0xdb, + 0x98, 0x4, 0x4b, 0x11, 0xff, 0xc4, 0xa4, 0x30, + 0xc, 0xdb, 0x11, 0xff, 0xc5, 0x52, 0x3, 0x17, + 0x33, 0xff, 0xe0, 0xaf, 0x38, 0x4, 0x38, 0xce, + 0xff, 0xfc, 0x36, 0x31, 0x0, 0xc4, 0x8c, 0xef, + 0xff, 0xc4, 0xf6, 0x2, 0x59, 0xaa, 0xf9, 0xd0, + 0x40, 0x3f, 0x8e, 0x33, 0x77, 0xff, 0xbb, 0x68, + 0x0, 0x24, 0x55, 0xfa, 0xcc, 0xc0, 0x1f, 0xe1, + 0x22, 0x81, 0x2e, 0x23, 0xff, 0xa5, 0x6e, 0x64, + 0x50, 0x80, 0x7f, 0xf4, 0x47, 0xdd, 0x57, 0xff, + 0xa4, 0x9a, 0x60, 0x1f, 0xfd, 0xb2, 0x7d, 0xff, + 0xff, 0xe3, 0x5b, 0x0, 0x7f, 0xf8, 0x8c, 0xd4, + 0xef, 0xff, 0xc6, 0xd5, 0x0, 0xff, 0xf1, 0xa, + 0x3c, 0x47, 0xff, 0x19, 0x8c, 0x3, 0xff, 0xae, + 0x48, 0x62, 0x1, 0xf1, 0x3e, 0x7f, 0xff, 0xf1, + 0xad, 0x80, 0x3f, 0xfa, 0x62, 0x91, 0x98, 0xbf, + 0x61, 0x0, 0xff, 0xf4, 0x89, 0x80, 0x42, 0xd5, + 0x6e, 0x62, 0x3, 0xca, 0xe0, 0x1c, 0x4f, 0x9f, + 0xff, 0xfc, 0x6b, 0x60, 0xf, 0xfe, 0x50, 0xa2, + 0x88, 0x7, 0xc2, 0x91, 0x98, 0x94, 0x70, 0xe, + 0x14, 0x68, 0x8f, 0xfe, 0x32, 0x98, 0x7, 0xff, + 0x20, 0x9a, 0xa4, 0xc0, 0x30, 0x9b, 0xdf, 0xdb, + 0x98, 0x80, 0x7e, 0x3c, 0xb7, 0x7f, 0xfe, 0x37, + 0x28, 0x7, 0xff, 0x20, 0x94, 0x8c, 0x0, 0x4d, + 0x59, 0x88, 0x41, 0x0, 0xff, 0xe6, 0xb, 0x5f, + 0xf7, 0x6f, 0xb6, 0x0, 0xcd, 0xc4, 0x1, 0xff, + 0xc2, 0x38, 0xeb, 0xcc, 0x4a, 0x90, 0x7, 0xff, + 0x40, 0x5f, 0x50, 0x40, 0x21, 0x11, 0x1a, 0x3d, + 0x4b, 0x0, 0x78, + + /* U+8D25 "败" */ + 0x0, 0xff, 0xef, 0xa4, 0xe5, 0xd4, 0xb1, 0x80, + 0x7f, 0xf3, 0x8a, 0x37, 0xff, 0xff, 0x97, 0xd2, + 0x60, 0x1f, 0x93, 0x5c, 0xd1, 0x53, 0x80, 0x3f, + 0xfe, 0x67, 0xae, 0x20, 0x12, 0x61, 0x80, 0x7f, + 0xf5, 0x1a, 0xff, 0xff, 0xf8, 0x36, 0xa0, 0x1f, + 0xfc, 0x2, 0xb4, 0x10, 0x9, 0x31, 0x0, 0x3f, + 0xfa, 0x82, 0x1, 0xc4, 0xb1, 0x19, 0x8c, 0x2, + 0x30, 0xf, 0xf8, 0x95, 0x8, 0x3, 0x25, 0x77, + 0x7f, 0xf1, 0xa9, 0x40, 0x3f, 0xf8, 0xe3, 0xac, + 0xef, 0x6b, 0x0, 0x7f, 0xf0, 0x85, 0x6c, 0xc0, + 0x3e, 0x11, 0xff, 0xe3, 0x0, 0x7f, 0xf7, 0x8e, + 0x68, 0xc0, 0x25, 0xae, 0xff, 0xfe, 0xc7, 0x20, + 0x8, 0xe3, 0x7f, 0xd4, 0xa0, 0x1f, 0xfd, 0xb5, + 0x96, 0x20, 0x0, 0xb7, 0x28, 0x80, 0x7f, 0x31, + 0x10, 0x2, 0x53, 0x20, 0xf, 0xfe, 0xe3, 0x9c, + 0x41, 0x44, 0x3, 0x18, 0x7, 0xfc, 0x5a, 0xe0, + 0x11, 0xf2, 0x80, 0x7f, 0xf7, 0xf, 0xa1, 0xc8, + 0x3, 0x85, 0x39, 0x0, 0x3f, 0x9c, 0xc8, 0x0, + 0x2a, 0x62, 0x1, 0xff, 0xcd, 0x10, 0xf, 0xfe, + 0x11, 0xf7, 0xb1, 0x9, 0xa1, 0x80, 0x5, 0x35, + 0x0, 0x3e, 0x3d, 0x60, 0x9, 0x71, 0x0, 0x3f, + 0xf9, 0xae, 0x2, 0x1, 0x8, 0x7, 0xf9, 0xd2, + 0x7f, 0x36, 0xe5, 0x40, 0x2, 0xfc, 0xa0, 0x1c, + 0x56, 0xa4, 0x0, 0x2c, 0x70, 0xf, 0xfe, 0x70, + 0x98, 0x4, 0x26, 0x20, 0x1f, 0xfc, 0x2, 0x20, + 0x82, 0xf3, 0x8, 0xa, 0xc3, 0x90, 0x0, 0xe9, + 0x88, 0x0, 0x4a, 0xa2, 0x0, 0xff, 0xe6, 0x89, + 0x88, 0x4, 0x62, 0xe0, 0x1f, 0xfc, 0x54, 0xa6, + 0x20, 0x1, 0x4c, 0x2a, 0x53, 0x8, 0x0, 0x96, + 0x88, 0x3, 0xff, 0x9c, 0xb8, 0x80, 0x13, 0xe9, + 0x80, 0x7f, 0xf1, 0x8e, 0x61, 0x44, 0x5, 0x6e, + 0x9c, 0x40, 0x7, 0x54, 0x20, 0xf, 0xfe, 0x29, + 0xe5, 0x3b, 0xa7, 0x18, 0xf, 0x1c, 0x2, 0x4c, + 0x40, 0x9, 0x76, 0x66, 0x8d, 0x20, 0xf, 0xe1, + 0x58, 0x93, 0x0, 0x8, 0xc0, 0x2b, 0x2e, 0x40, + 0x1f, 0xfc, 0x61, 0x47, 0x88, 0x3a, 0x91, 0xd3, + 0x10, 0x0, 0x8c, 0x95, 0xea, 0xe4, 0x19, 0xb2, + 0x8, 0x7, 0xfc, 0x48, 0x82, 0x0, 0xfc, 0x20, + 0x1f, 0xfc, 0xd2, 0x7f, 0x61, 0x0, 0x25, 0xd0, + 0x6d, 0x2a, 0x3d, 0x51, 0x44, 0x3, 0xff, 0x80, + 0x4b, 0x7a, 0xe4, 0x1, 0xc2, 0xb5, 0x92, 0x82, + 0x1, 0xff, 0xc7, 0x13, 0x8e, 0x83, 0x0, 0x1b, + 0xcb, 0x12, 0x4f, 0x31, 0x0, 0xad, 0xd9, 0x44, + 0x3, 0xe1, 0x59, 0xfa, 0x41, 0x1, 0x48, 0xba, + 0x52, 0x0, 0x13, 0x5e, 0xca, 0x90, 0x7, 0xff, + 0x4, 0x96, 0x73, 0xe, 0x60, 0x3, 0x9e, 0x82, + 0x0, 0xc7, 0x32, 0x61, 0x1, 0x5b, 0xb2, 0x88, + 0x1b, 0x4e, 0xf5, 0x31, 0x0, 0xd, 0xf6, 0xdd, + 0x16, 0xbe, 0x94, 0x40, 0x6, 0xd5, 0xba, 0xa6, + 0x31, 0x0, 0xe1, 0x6b, 0xda, 0x62, 0x1, 0x38, + 0xcc, 0x31, 0x0, 0x7e, 0x48, 0xb5, 0x10, 0x33, + 0x2, 0x47, 0x4b, 0x10, 0x0, 0x52, 0x33, 0x60, + 0xc0, 0x38, 0x96, 0xb2, 0xdc, 0xc4, 0x0, 0x4b, + 0x3e, 0xc4, 0x1, 0x85, 0xa6, 0x99, 0x5e, 0xff, + 0x1c, 0xc0, 0x3f, 0xf8, 0x2, 0xb7, 0xfd, 0xb2, + 0xaa, 0x8f, 0x96, 0x64, 0xe7, 0x5b, 0x98, 0x80, + 0x7f, 0x89, 0x23, 0x3e, 0xe1, 0x5a, 0xb5, 0xc8, + 0x0, + + /* U+8D27 "货" */ + 0x0, 0xff, 0xff, 0x80, 0x7f, 0xf1, 0x45, 0x27, + 0x7b, 0x72, 0x98, 0xc0, 0x3c, 0x2d, 0x5b, 0xba, + 0x94, 0x40, 0x3f, 0xf8, 0x62, 0x42, 0x1, 0xff, + 0xcd, 0x14, 0x8d, 0xb6, 0x21, 0x20, 0xd5, 0x30, + 0xf, 0x18, 0xb1, 0x16, 0x63, 0x0, 0xfe, 0x12, + 0x57, 0x9c, 0xee, 0x6f, 0xdb, 0x10, 0x7, 0xff, + 0x1c, 0x9a, 0xbe, 0xdc, 0xc0, 0x4, 0xd7, 0xae, + 0x60, 0x1f, 0xfc, 0x31, 0x23, 0x46, 0x89, 0xbd, + 0xee, 0x6d, 0x43, 0x18, 0x80, 0x98, 0x73, 0x90, + 0x7, 0xff, 0x4, 0x96, 0x2f, 0xb6, 0x54, 0x40, + 0x31, 0x2d, 0xa0, 0x80, 0x78, 0x48, 0xdf, 0x44, + 0x3, 0x1c, 0x66, 0x2e, 0x5d, 0x90, 0x84, 0x44, + 0x6b, 0x15, 0x9d, 0xcd, 0xb8, 0x52, 0x0, 0xfc, + 0x4b, 0x17, 0xdb, 0x4e, 0x82, 0x1, 0xff, 0xc0, + 0x15, 0x9c, 0xde, 0xfe, 0xdc, 0xa5, 0x20, 0xe, + 0x12, 0x45, 0x79, 0xac, 0xde, 0xe6, 0xe5, 0x3a, + 0x98, 0x88, 0x84, 0x3, 0xfc, 0x2d, 0x8a, 0x82, + 0x0, 0x14, 0x7b, 0xc9, 0x40, 0xf, 0xc2, 0xfc, + 0x6, 0x72, 0x2b, 0x31, 0x4, 0x3, 0x1c, 0x65, + 0xd4, 0x32, 0x99, 0x8, 0x7, 0xc2, 0xfd, 0xd6, + 0xdb, 0x10, 0x7, 0xa, 0x4e, 0x5c, 0xd6, 0xf5, + 0xc2, 0x10, 0x7, 0xfc, 0x4f, 0x9d, 0xb9, 0x75, + 0x31, 0xa4, 0x1, 0x8b, 0xd4, 0x40, 0x3f, 0xf8, + 0x2, 0x49, 0x84, 0x2, 0x4e, 0x26, 0x1, 0xf8, + 0x51, 0x94, 0x80, 0x3f, 0xf9, 0xa2, 0xaa, 0x10, + 0x8, 0x5a, 0xfb, 0xff, 0xff, 0x81, 0xdb, 0x4a, + 0x20, 0x3, 0xb5, 0x10, 0xf, 0xfe, 0xd9, 0xc6, + 0xcb, 0xaa, 0x19, 0x88, 0xbf, 0xf8, 0x66, 0x8a, + 0xf5, 0xce, 0x40, 0x1f, 0xfc, 0x61, 0x78, 0xcc, + 0xdd, 0x46, 0x1, 0xff, 0xc1, 0x13, 0x68, 0xab, + 0xcc, 0x6e, 0xff, 0xf0, 0xf2, 0xea, 0x14, 0x80, + 0x3f, 0xf8, 0xcb, 0x5f, 0xd9, 0x9e, 0xde, 0xff, + 0xff, 0xeb, 0x63, 0x90, 0x7, 0xff, 0xfc, 0x3, + 0xff, 0x9c, 0x2d, 0x7f, 0xff, 0xee, 0xdd, 0xfb, + 0xbf, 0xff, 0xec, 0x61, 0x0, 0xff, 0xed, 0x38, + 0x7, 0xf9, 0x23, 0x77, 0xa5, 0x0, 0x3f, 0xf8, + 0x2, 0x1, 0xff, 0xff, 0x0, 0xff, 0xf1, 0x9, + 0x30, 0x6, 0x12, 0x10, 0xf, 0xff, 0x89, 0x35, + 0x98, 0x6, 0x5f, 0x50, 0xf, 0xff, 0x3, 0xfc, + 0x46, 0x9d, 0x20, 0xc, 0x26, 0xf7, 0x90, 0x60, + 0x11, 0x37, 0xa2, 0x2b, 0xb9, 0xb7, 0x50, 0xca, + 0x62, 0x55, 0x4b, 0xbd, 0xea, 0x40, 0x1f, 0xfc, + 0xb2, 0x57, 0x7e, 0x65, 0x68, 0xad, 0xfc, 0x84, + 0x10, 0x0, 0xac, 0xfc, 0xb3, 0xe3, 0x0, 0x92, + 0x2b, 0xcd, 0x67, 0x73, 0x23, 0xb0, 0x80, 0x4c, + 0x3, 0xff, 0x8c, 0x24, 0x68, 0xac, 0xf1, 0x57, + 0xbd, 0xfb, 0x72, 0xea, 0x42, 0x2, 0x6d, 0x39, + 0xd4, 0xc4, 0x4, 0xb3, 0x9d, 0xfb, 0x75, 0xc, + 0x84, 0x20, 0x26, 0xaf, 0x37, 0xbd, 0xcc, 0xa7, + 0x52, 0x10, 0xf, 0xe3, 0x8c, 0xdc, 0xba, 0x98, + 0x75, 0x42, 0x10, 0x1, 0x1a, 0xbc, 0xdf, 0x73, + 0x25, 0x8c, 0x3, 0xfe, 0x24, 0x57, 0x9b, 0xde, + 0xe6, 0x54, 0x29, 0x88, 0x0, 0x4d, 0x62, 0xbe, + 0x4c, 0x3, 0xf1, 0xc7, 0xca, 0x11, 0xab, 0x3c, + 0x55, 0xe7, 0x7e, 0xe5, 0x43, 0x20, 0x80, 0x7f, + 0xf3, 0x4, 0xd5, 0xeb, 0x3b, 0x99, 0x2e, 0x88, + 0x8e, 0x83, 0x0, 0x80, + + /* U+8D2D "购" */ + 0x0, 0xff, 0xed, 0xa4, 0xe6, 0x2e, 0x5d, 0x4, + 0x3, 0xff, 0x9c, 0x6d, 0x11, 0xff, 0xca, 0x63, + 0x0, 0xf9, 0x39, 0x8c, 0xc8, 0xda, 0x22, 0x0, + 0xff, 0xe6, 0x8a, 0xeb, 0xbf, 0xff, 0x2b, 0x54, + 0x3, 0xc9, 0xca, 0x1, 0x97, 0xd4, 0x3, 0xff, + 0xa8, 0x6d, 0x33, 0xff, 0x42, 0x90, 0x7, 0xf9, + 0x39, 0x0, 0x31, 0x90, 0x99, 0xff, 0xf2, 0x44, + 0x3, 0xfe, 0x6d, 0x66, 0xff, 0x9f, 0x18, 0x3, + 0xf9, 0x79, 0x44, 0x3, 0x1b, 0xde, 0x67, 0xff, + 0x22, 0x54, 0x3, 0xff, 0x86, 0x93, 0xdd, 0x64, + 0x18, 0x7, 0xfc, 0x4f, 0x2a, 0x1, 0x84, 0xcf, + 0xff, 0x8a, 0x42, 0x1, 0x8b, 0x58, 0x3, 0xff, + 0x86, 0x26, 0x23, 0x10, 0x7, 0xfc, 0x4b, 0x32, + 0x30, 0x9, 0x27, 0xf3, 0x3f, 0xf8, 0xbe, 0xc4, + 0x1, 0xff, 0xd8, 0x6a, 0xeb, 0x41, 0x0, 0x13, + 0x43, 0x92, 0xb2, 0x99, 0x8, 0x7, 0xff, 0x98, + 0x52, 0x58, 0xc4, 0x4d, 0x32, 0x35, 0xab, 0x9a, + 0xcf, 0x93, 0x0, 0xff, 0xf2, 0xbf, 0x2c, 0x67, + 0xfa, 0x50, 0xf, 0x10, 0x40, 0x2, 0xb6, 0x60, + 0x1f, 0xe1, 0x0, 0xff, 0xef, 0x88, 0x80, 0x2, + 0x88, 0x20, 0x0, 0xbd, 0x98, 0x9, 0xa1, 0x90, + 0x7, 0xc6, 0x1, 0xff, 0xca, 0x10, 0xf, 0xfe, + 0x48, 0xbe, 0x18, 0x0, 0x5e, 0x8c, 0x9f, 0x72, + 0xf6, 0xd0, 0x3, 0x84, 0x3, 0xff, 0x94, 0x60, + 0x18, 0xfc, 0x40, 0x3f, 0xf8, 0x42, 0xfa, 0x80, + 0x2, 0x9b, 0x30, 0x25, 0xb3, 0x1, 0x6e, 0x40, + 0x9, 0xc0, 0x3f, 0xf9, 0x42, 0xe, 0x1, 0x8, + 0x8c, 0x3, 0xff, 0x82, 0x4d, 0x68, 0x0, 0x4b, + 0x62, 0x0, 0x89, 0x10, 0x40, 0x5, 0xe5, 0x0, + 0x8c, 0x40, 0x21, 0x0, 0xff, 0xe2, 0x17, 0x10, + 0x4, 0xc4, 0x20, 0x1f, 0xf0, 0xac, 0x49, 0x0, + 0x5, 0xf6, 0xb3, 0x7b, 0xfd, 0x8e, 0x40, 0x12, + 0xfa, 0x80, 0x80, 0x7c, 0x60, 0x1c, 0x24, 0x6a, + 0xb6, 0xb8, 0xa9, 0x88, 0x1, 0x31, 0x40, 0x25, + 0xd6, 0x6b, 0x54, 0x5, 0xa5, 0x44, 0x2, 0x13, + 0x44, 0x19, 0x1, 0x22, 0xb3, 0x10, 0x40, 0xb, + 0x8a, 0x62, 0x1, 0xc2, 0x1, 0xf2, 0x45, 0x54, + 0xe4, 0x98, 0x80, 0x2, 0x35, 0x35, 0x88, 0x3b, + 0xa6, 0x66, 0x30, 0x16, 0xa5, 0x35, 0x78, 0xab, + 0xcd, 0xff, 0x76, 0xdd, 0x4c, 0xbe, 0x55, 0xa3, + 0x44, 0x4e, 0x1, 0x9c, 0x4, 0x3, 0xfe, 0x26, + 0x85, 0x0, 0x1d, 0xe2, 0x75, 0x3b, 0xaf, 0x5c, + 0xc0, 0x38, 0x5a, 0xb2, 0xa1, 0xd5, 0xc, 0x80, + 0x3f, 0x23, 0xd4, 0xba, 0x3f, 0x10, 0x6, 0x13, + 0x0, 0xff, 0xa, 0xcc, 0x88, 0x5, 0xbd, 0x91, + 0xfa, 0x50, 0x40, 0xe3, 0x69, 0x44, 0x3, 0xff, + 0x9c, 0x2a, 0xa1, 0x0, 0x84, 0xd8, 0x3, 0xe1, + 0x49, 0xca, 0x41, 0x12, 0xdc, 0x18, 0x4, 0x4d, + 0x54, 0x62, 0x1, 0x5a, 0xa3, 0x10, 0x7, 0xff, + 0x4, 0x8c, 0xf1, 0x16, 0x35, 0x8b, 0x30, 0xc, + 0xbe, 0x40, 0x18, 0x56, 0xbe, 0xd8, 0x80, 0xdf, + 0x69, 0x44, 0x3, 0xc2, 0x93, 0xce, 0x40, 0x4, + 0xa5, 0x20, 0xf, 0xfe, 0x3, 0x56, 0xe6, 0x37, + 0x76, 0x53, 0x10, 0x6, 0x4d, 0x71, 0x0, 0xc2, + 0xb3, 0x25, 0x54, 0xee, 0x41, 0x80, 0x7f, 0xf0, + 0xe, 0x3a, 0xa9, 0xb8, 0xe4, 0x1, 0xff, 0xc0, + 0x4c, 0x40, 0xf, 0xc2, 0x46, 0xb1, 0x94, 0xc2, + 0x1, 0xf1, 0xbd, 0x51, 0x88, 0x3, 0xff, 0x8a, + 0x6a, 0xa2, 0x0, 0xff, 0xe2, 0x2d, 0x7f, 0xfe, + 0xed, 0xca, 0x73, 0x10, 0xe, + + /* U+8D77 "起" */ + 0x0, 0xff, 0xe2, 0x88, 0xf8, 0x3, 0xff, 0xe8, + 0x2d, 0x5d, 0xda, 0x98, 0x3, 0xff, 0x86, 0x24, + 0x5f, 0xfc, 0xd1, 0x0, 0xff, 0xf0, 0x25, 0xee, + 0xff, 0xf3, 0x3e, 0x4c, 0x3, 0xf8, 0x9a, 0xb3, + 0x3f, 0x6d, 0xa0, 0x6, 0x4b, 0xcc, 0xfe, 0x95, + 0x10, 0x3, 0xea, 0x27, 0xff, 0x18, 0xc4, 0x3, + 0xff, 0x8b, 0xce, 0x67, 0xfc, 0x40, 0x1e, 0x23, + 0x3f, 0xe5, 0x23, 0x0, 0x1b, 0xdd, 0xff, 0xf1, + 0xa1, 0xc4, 0x3, 0xff, 0x86, 0x53, 0xfb, 0xbf, + 0xb2, 0xc, 0x3, 0x1c, 0x66, 0xef, 0xf3, 0x10, + 0x7, 0xff, 0x74, 0x48, 0xbf, 0xc2, 0xe0, 0x19, + 0xc4, 0xc8, 0xbf, 0x8, 0x80, 0x3f, 0xfb, 0x82, + 0x22, 0x2f, 0xf8, 0x5c, 0x3, 0x38, 0x99, 0x17, + 0xf8, 0x40, 0x3f, 0xfb, 0x45, 0x39, 0xbb, 0xfe, + 0xc8, 0x30, 0xc, 0x71, 0x9b, 0xbf, 0xea, 0x61, + 0x49, 0xee, 0xff, 0xe3, 0x53, 0x8, 0x7, 0xff, + 0xb, 0xd8, 0x8b, 0xff, 0x80, 0x20, 0x1e, 0x11, + 0x11, 0x7f, 0x9, 0x80, 0xc, 0x47, 0xff, 0x8e, + 0x1, 0xff, 0xc3, 0x27, 0xbd, 0xdf, 0xfe, 0xb, + 0x8, 0x4, 0x73, 0x9b, 0xbf, 0xd4, 0xa2, 0x1, + 0xe1, 0x6b, 0xff, 0xff, 0xad, 0x84, 0x70, 0x7, + 0xff, 0x4, 0x49, 0xc, 0xe2, 0x10, 0xf, 0xfe, + 0xa0, 0xb8, 0x7, 0xfc, 0x93, 0xdd, 0xb6, 0xc, + 0x3, 0xfc, 0xb1, 0x79, 0x97, 0xc9, 0x0, 0x7f, + 0xff, 0xc0, 0x3c, 0x71, 0x9d, 0xdf, 0xad, 0xc8, + 0x3, 0xff, 0x9a, 0x24, 0x41, 0x0, 0xff, 0x84, + 0x3, 0xff, 0x8e, 0x23, 0xfc, 0xc0, 0x1f, 0xfc, + 0xf5, 0xbd, 0xed, 0xc8, 0x41, 0x0, 0xf8, 0x40, + 0x31, 0x1a, 0x8, 0x7, 0xe2, 0x8d, 0xff, 0xfd, + 0xae, 0x40, 0x1f, 0x84, 0x3, 0xff, 0x88, 0x26, + 0x0, 0x23, 0x30, 0x88, 0x3, 0x84, 0xc0, 0x3c, + 0x94, 0xc2, 0x1, 0xf0, 0x80, 0x7f, 0xf0, 0xcc, + 0x40, 0x21, 0x24, 0x21, 0x1f, 0xfe, 0x1, 0x2e, + 0x20, 0x4, 0x26, 0xc0, 0x1e, 0x31, 0x70, 0xf, + 0x1c, 0xda, 0xb0, 0x7, 0xff, 0x21, 0x7d, 0x40, + 0x32, 0x46, 0xf7, 0x7f, 0xf0, 0x36, 0x98, 0x40, + 0x4, 0xd6, 0x60, 0x1e, 0x1e, 0x20, 0xf, 0x85, + 0x6a, 0xdc, 0x40, 0x3f, 0xf8, 0xc2, 0xd3, 0x4c, + 0x86, 0x42, 0x20, 0xf, 0xfe, 0x0, 0x88, 0x8d, + 0x67, 0xa0, 0xc0, 0x3c, 0x2a, 0x42, 0x0, 0x16, + 0x99, 0x20, 0x4, 0x22, 0x0, 0xc2, 0x1, 0xff, + 0xc4, 0x25, 0x9b, 0xcd, 0xee, 0x7f, 0xff, 0xf0, + 0x3b, 0x9b, 0x94, 0xc6, 0x1, 0xf8, 0xbd, 0x40, + 0x25, 0xc6, 0x65, 0x51, 0x44, 0x3, 0xc5, 0x19, + 0x8b, 0x97, 0x65, 0x44, 0x19, 0xc4, 0x5f, 0xfd, + 0x41, 0x0, 0xc7, 0x6e, 0x20, 0x2, 0x37, 0x0, + 0xa, 0xd7, 0xe4, 0x29, 0x0, 0x61, 0x34, 0x68, + 0x9a, 0xbb, 0x66, 0x5b, 0xbf, 0xfd, 0x2c, 0x84, + 0x0, 0x92, 0x98, 0x40, 0x4, 0xb6, 0x40, 0x1c, + 0x26, 0xf5, 0xbd, 0x95, 0x30, 0xea, 0x86, 0x44, + 0x11, 0xc0, 0x1f, 0xfd, 0x21, 0x7e, 0x50, 0x9, + 0x22, 0x9d, 0xd, 0x6c, 0xc0, 0x3f, 0xe1, 0x35, + 0x67, 0x8a, 0xbc, 0xdd, 0x77, 0x6f, 0xff, 0xfe, + 0x97, 0x4a, 0x0, 0x70, 0xa4, 0x5e, 0x41, 0x80, + 0x7f, 0xfc, 0xc0, + + /* U+8D8A "越" */ + 0x0, 0xff, 0xe2, 0x88, 0xf0, 0x7, 0xff, 0x3c, + 0x47, 0x80, 0x3f, 0xfa, 0xa7, 0x1f, 0xdd, 0x64, + 0x18, 0x7, 0xff, 0x2c, 0xe7, 0xfb, 0xac, 0x72, + 0x14, 0x7a, 0xcb, 0x72, 0x0, 0xff, 0xfb, 0x73, + 0x9a, 0x46, 0x52, 0x88, 0x7, 0xf8, 0x4d, 0x13, + 0xf8, 0x80, 0x31, 0x92, 0xa2, 0x7e, 0x31, 0x0, + 0xff, 0xe5, 0xa, 0x4f, 0xb9, 0x80, 0xad, 0xd9, + 0x44, 0x3, 0xf3, 0xc5, 0xdf, 0xe8, 0x51, 0x0, + 0x85, 0x66, 0xef, 0xf7, 0xb8, 0x80, 0x7f, 0xf0, + 0x1c, 0x3, 0xde, 0x20, 0x11, 0x4c, 0x3a, 0xb4, + 0x4a, 0x8, 0x7, 0xe2, 0xc5, 0x5f, 0xc8, 0x40, + 0x1c, 0x48, 0xab, 0xf9, 0x8, 0x8f, 0x9f, 0xff, + 0xeb, 0x61, 0x0, 0x89, 0xf3, 0xff, 0x75, 0xba, + 0xb4, 0xe7, 0x5b, 0x0, 0x7c, 0x8f, 0x55, 0xfa, + 0x14, 0x40, 0x22, 0x58, 0xaa, 0xfd, 0x8, 0x40, + 0x1e, 0x12, 0x2f, 0x8, 0x7, 0x84, 0x8b, 0xff, + 0x82, 0x60, 0x1f, 0xfd, 0xe2, 0x6f, 0xdd, 0xeb, + 0x50, 0xc, 0x4d, 0xdb, 0xbf, 0xf4, 0xa8, 0x6, + 0x39, 0xef, 0xff, 0xf6, 0x38, 0x80, 0x44, 0xf9, + 0xff, 0xfd, 0x4c, 0x1, 0xff, 0xc1, 0x62, 0x20, + 0x4, 0x62, 0xe0, 0x19, 0x6b, 0xfd, 0xd6, 0xc4, + 0x1, 0xff, 0xe7, 0x2e, 0x10, 0x8, 0x4c, 0x40, + 0x25, 0xf5, 0x0, 0x8d, 0x48, 0x3, 0x8e, 0x7b, + 0xff, 0xfe, 0xc7, 0x20, 0x8, 0x5a, 0xff, 0xff, + 0x52, 0x80, 0x7f, 0xf0, 0x44, 0xd8, 0x3, 0x31, + 0x10, 0x5b, 0x94, 0x0, 0x4d, 0x66, 0x1, 0xfe, + 0x35, 0x66, 0x90, 0x80, 0x21, 0xf0, 0xe, 0x17, + 0x0, 0xfe, 0x30, 0xf, 0xfe, 0x13, 0xe9, 0x0, + 0x47, 0xb5, 0x16, 0x80, 0x2, 0xaa, 0x18, 0x7, + 0xf8, 0x92, 0x67, 0x42, 0x90, 0x7, 0xff, 0x5c, + 0x8d, 0x4, 0x2, 0x57, 0x62, 0x0, 0x2c, 0x31, + 0x0, 0x7f, 0xf0, 0x3c, 0x40, 0x3f, 0xf8, 0x42, + 0xfb, 0xdd, 0xf5, 0xb1, 0x0, 0x7c, 0xc6, 0xd3, + 0x9d, 0x6c, 0xcf, 0x50, 0xf, 0x8e, 0x20, 0xa2, + 0x30, 0x7, 0xf8, 0x40, 0xc0, 0x21, 0x0, 0xff, + 0xe0, 0x8, 0xfe, 0x70, 0xf, 0x89, 0xef, 0x25, + 0x8c, 0x5b, 0x98, 0x88, 0x20, 0x18, 0x56, 0x1c, + 0x80, 0xa7, 0x75, 0x4e, 0x60, 0x1e, 0x71, 0x0, + 0xc5, 0x6a, 0x40, 0x1f, 0xb, 0x5f, 0xff, 0xbb, + 0x87, 0x76, 0x20, 0xf, 0xa, 0x3d, 0xee, 0x63, + 0x65, 0x84, 0x3, 0x8, 0xe0, 0x0, 0x88, 0x88, + 0xb6, 0xa2, 0x1, 0xe3, 0x10, 0xc, 0x75, 0x66, + 0x20, 0x1e, 0x17, 0x0, 0xc5, 0x19, 0xb4, 0xe6, + 0x20, 0x26, 0xf5, 0xbd, 0x72, 0x15, 0xb6, 0xc4, + 0x1, 0xf2, 0x44, 0x10, 0xd1, 0x44, 0x0, 0xa4, + 0x20, 0x18, 0x49, 0x80, 0x3c, 0x4d, 0xd1, 0x80, + 0x1f, 0xf1, 0x55, 0xc, 0x4d, 0xa7, 0x7f, 0x21, + 0x5, 0xef, 0xed, 0xcc, 0x2, 0x38, 0xdc, 0x83, + 0x0, 0x13, 0x5e, 0x41, 0x80, 0x17, 0x10, 0x3, + 0x97, 0xcc, 0x0, 0x26, 0x62, 0x0, 0x12, 0x20, + 0x80, 0x3f, 0xe2, 0x7c, 0xec, 0x96, 0x21, 0x0, + 0x97, 0x14, 0x40, 0x22, 0x6b, 0xd7, 0x23, 0x7e, + 0xa5, 0x20, 0xc, 0x4b, 0x30, 0xa0, 0x1c, 0x46, + 0xa0, 0x12, 0xce, 0xcb, 0x10, 0x7, 0xc2, 0x68, + 0x42, 0x1, 0xff, 0xc2, 0x16, 0xab, 0x65, 0x8c, + 0xd9, 0x41, 0x0, 0xc4, 0xb5, 0xbf, 0xfb, 0x69, + 0x88, 0x3, 0x8a, 0xa8, 0x60, 0x3, 0xc7, 0x14, + 0x9f, 0x94, 0x10, 0xe, 0x48, 0xdf, 0xdb, 0x98, + 0x76, 0x55, 0x22, 0x46, 0x62, 0x28, 0xde, 0xe1, + 0x44, 0x8b, 0xff, 0x90, 0x20, 0x11, 0xdb, 0x10, + 0x0, 0xed, 0x48, 0x2, 0x26, 0xbf, 0xc9, 0x62, + 0x0, 0xc2, 0x48, 0xcf, 0x13, 0x54, 0xbb, 0xb3, + 0x1b, 0xbf, 0xfc, 0xfc, 0xb5, 0x0, 0xde, 0xa2, + 0x9, 0x4c, 0x40, 0x1f, 0x9, 0xb4, 0xef, 0x6d, + 0xd4, 0xbb, 0x21, 0x91, 0x42, 0x38, 0x3, 0xff, + 0xa0, 0x2f, 0x48, 0x1, 0x1b, 0x5e, 0x62, 0x58, + 0x40, 0x3f, 0xf8, 0x22, 0x48, 0xad, 0x13, 0x79, + 0xbb, 0x77, 0x6f, 0xff, 0xfe, 0x87, 0x49, 0x80, + 0x40, + + /* U+8F6C "转" */ + 0x0, 0xff, 0xe0, 0xa4, 0x6e, 0x5d, 0x42, 0x88, + 0x7, 0xff, 0x30, 0xdf, 0x37, 0x2e, 0x9c, 0xc0, + 0x3f, 0xfa, 0x24, 0x6a, 0x46, 0x8a, 0x40, 0x20, + 0x1f, 0xfc, 0xb2, 0x4b, 0x32, 0x34, 0x60, 0x10, + 0xf, 0xfe, 0x41, 0x19, 0xfc, 0x8b, 0x84, 0x1, + 0x11, 0x81, 0x9f, 0xe2, 0x10, 0x1, 0x19, 0xff, + 0x91, 0x6c, 0xc0, 0x21, 0x61, 0x11, 0x9f, 0xf8, + 0x84, 0x3, 0xe3, 0xad, 0xcc, 0xf5, 0xc2, 0x0, + 0x62, 0x6a, 0xcc, 0xfd, 0xa, 0x7, 0x7b, 0x99, + 0xfd, 0x70, 0x60, 0x18, 0x56, 0x73, 0x3f, 0xe9, + 0x71, 0x0, 0xf0, 0xfa, 0x99, 0xf1, 0x8, 0x7, + 0x11, 0x9f, 0xfc, 0x4e, 0x0, 0xe5, 0x33, 0xf8, + 0x88, 0x20, 0x1c, 0x24, 0x67, 0xff, 0xc1, 0x23, + 0x0, 0xf8, 0x9e, 0xf3, 0x36, 0xd1, 0x0, 0x44, + 0xfd, 0x99, 0xff, 0x41, 0x81, 0xbd, 0xe6, 0x7d, + 0xea, 0x60, 0x19, 0x23, 0x33, 0xff, 0x85, 0x2a, + 0x20, 0x1f, 0xfc, 0x1, 0x7b, 0x30, 0x1, 0x2e, + 0x3b, 0x3b, 0xcc, 0x62, 0x1, 0xff, 0xc4, 0x25, + 0x42, 0x0, 0x8f, 0x10, 0x40, 0x3f, 0xf9, 0xe2, + 0xf4, 0x60, 0x2, 0xaa, 0x6, 0xcc, 0x45, 0x76, + 0x30, 0xc, 0x2d, 0x7f, 0xff, 0xdb, 0x6, 0x1, + 0x8e, 0x37, 0xff, 0xff, 0x89, 0xd2, 0x60, 0x1f, + 0x89, 0xa8, 0xc0, 0x9, 0x6c, 0x40, 0x1f, 0xff, + 0x13, 0xb9, 0x30, 0x2, 0xf3, 0x88, 0x7, 0xf0, + 0x80, 0x61, 0x6b, 0xff, 0xf7, 0x4a, 0x0, 0x61, + 0x6a, 0xef, 0xff, 0xfe, 0x37, 0x49, 0x80, 0x71, + 0xc7, 0x30, 0x80, 0x4b, 0x5d, 0xfe, 0xb6, 0x0, + 0xc4, 0xf9, 0xff, 0xa9, 0x0, 0x3e, 0x5c, 0x40, + 0xc, 0x98, 0xa2, 0x1, 0xff, 0xce, 0x3d, 0x70, + 0xf, 0xfe, 0x9a, 0x6a, 0x0, 0x62, 0x3, 0x55, + 0xff, 0xe1, 0xa1, 0x8, 0x7, 0xfc, 0xb1, 0x76, + 0xcd, 0xdd, 0xdd, 0x52, 0x80, 0x62, 0x6b, 0xee, + 0xd6, 0x80, 0x1c, 0x9a, 0xe2, 0x1, 0x89, 0x66, + 0xab, 0xff, 0x87, 0x7b, 0xf2, 0x80, 0x1f, 0xe2, + 0x44, 0x19, 0x16, 0x11, 0xc6, 0x1, 0xc2, 0xc2, + 0x3c, 0x1, 0xc4, 0x43, 0x23, 0x3f, 0xfe, 0x21, + 0x0, 0x78, 0x52, 0xe1, 0x0, 0x3f, 0xfa, 0x2, + 0xc6, 0x64, 0x56, 0x76, 0x30, 0x1, 0x35, 0x66, + 0x7f, 0xf0, 0xe1, 0x40, 0x38, 0x56, 0xe9, 0x44, + 0x3, 0xf8, 0x44, 0x46, 0x8a, 0xa6, 0x78, 0x99, + 0x54, 0x38, 0x6, 0x26, 0xbc, 0xc5, 0xd4, 0xc5, + 0x20, 0x80, 0x78, 0x48, 0x40, 0x3e, 0x15, 0xaa, + 0x31, 0x0, 0x9, 0xaa, 0x8a, 0x20, 0x1f, 0xe4, + 0x8f, 0xdc, 0xba, 0xa4, 0xc3, 0xb3, 0x14, 0xc4, + 0x3, 0xc2, 0x68, 0xac, 0xf1, 0x2a, 0x20, 0x10, + 0xad, 0x7e, 0xf6, 0xdb, 0xa1, 0x11, 0xaa, 0x8a, + 0x20, 0x3, 0x8f, 0x94, 0x0, 0xff, 0xe0, 0xa7, + 0xa8, 0x0, 0x48, 0xd1, 0x59, 0xe2, 0x58, 0xc0, + 0x31, 0x3e, 0x62, 0xea, 0x61, 0xd4, 0x80, 0x31, + 0x18, 0x18, 0x0, 0x92, 0x2f, 0x75, 0x28, 0x0, + 0x14, 0xad, 0x72, 0x0, 0xff, 0xe2, 0x35, 0xff, + 0xbb, 0x72, 0xea, 0x61, 0xdb, 0x54, 0x3, 0xff, + 0x8e, 0x6d, 0x5b, 0xaa, 0x74, 0x10, 0xf, 0x8c, + 0x80, 0xc0, 0x3f, 0xfd, 0x84, 0xb1, 0x7f, 0x92, + 0xa4, 0x1, 0x13, 0x56, 0xe4, 0xa9, 0x0, 0x7f, + 0xfb, 0x4, 0xda, 0xb7, 0x25, 0x48, 0x2, 0x36, + 0xae, 0x72, 0x0, 0xff, 0xf7, 0x9b, 0x56, 0x61, + 0xcc, 0x92, 0x79, 0xc8, 0x3, 0xff, 0x9a, 0x93, + 0xff, 0xb6, 0x8, 0x3, 0xff, 0xa0, 0x27, 0x19, + 0xb6, 0xc4, 0x1, 0xff, 0x0, + + /* U+8F74 "轴" */ + 0x0, 0xff, 0xf1, 0x88, 0x88, 0xa1, 0x10, 0x7, + 0xff, 0x3c, 0x9f, 0x3f, 0xdd, 0xb2, 0x80, 0x1f, + 0xfc, 0xd2, 0x6d, 0xdd, 0x92, 0x60, 0x1f, 0xfc, + 0xe6, 0xd3, 0x0, 0x8, 0xb, 0x80, 0x7f, 0xf9, + 0xcd, 0x5d, 0xfd, 0x1e, 0x80, 0x1c, 0x56, 0xef, + 0xf9, 0x48, 0x3, 0xff, 0xb8, 0x2b, 0xd1, 0x1e, + 0x74, 0x10, 0xc, 0x4a, 0xf1, 0x1f, 0xb9, 0xc0, + 0x3f, 0xfb, 0x82, 0xba, 0xef, 0x99, 0x8, 0x3, + 0x12, 0x33, 0xbf, 0xfb, 0x58, 0x3, 0xff, 0x8a, + 0x20, 0x11, 0x80, 0x7f, 0xf1, 0xcd, 0xa2, 0x35, + 0x11, 0x80, 0x47, 0x53, 0x28, 0x8f, 0xf3, 0x18, + 0x24, 0xff, 0xff, 0xf0, 0x36, 0x8, 0x2, 0x17, + 0xcf, 0xff, 0xf6, 0xb9, 0x0, 0x7f, 0x15, 0xa0, + 0x80, 0xa, 0xd4, 0x15, 0xdf, 0x20, 0x80, 0x7f, + 0xf9, 0xc9, 0x50, 0x80, 0x4, 0xaa, 0x27, 0xe8, + 0x8a, 0x75, 0x40, 0x3f, 0xf8, 0x27, 0x1b, 0xff, + 0xdb, 0x6, 0x1, 0x13, 0xe7, 0xfe, 0xc6, 0x10, + 0xf, 0xfe, 0x9, 0x2d, 0x18, 0x0, 0xaa, 0x84, + 0x1, 0xff, 0xee, 0x3b, 0x92, 0x0, 0x1d, 0x29, + 0x0, 0x7f, 0xfb, 0x49, 0xf9, 0x84, 0x2, 0x38, + 0xdf, 0xfa, 0x90, 0x2, 0x16, 0xbf, 0xfd, 0x4a, + 0x1, 0xff, 0xdd, 0x23, 0x41, 0x0, 0xff, 0xe5, + 0x8, 0x7, 0xe1, 0xe7, 0x33, 0xe7, 0xe1, 0x0, + 0x8c, 0x98, 0xcf, 0x29, 0x88, 0x7, 0xfc, 0x97, + 0x57, 0x9b, 0xbb, 0xba, 0xd8, 0x40, 0xc, 0xb5, + 0xdd, 0xa9, 0x40, 0x3e, 0x26, 0xac, 0xce, 0xa6, + 0x20, 0x8, 0x56, 0xb3, 0x34, 0xa8, 0x7, 0xff, + 0x4, 0x91, 0x6, 0x45, 0x84, 0x62, 0x20, 0x6, + 0x13, 0x11, 0xf0, 0x7, 0xf0, 0x99, 0xfc, 0x20, + 0x1c, 0x24, 0x67, 0x88, 0x40, 0x3f, 0xfa, 0x42, + 0x64, 0x68, 0xac, 0x84, 0x1, 0xf1, 0xcf, 0x66, + 0x77, 0x49, 0x80, 0x44, 0xdd, 0x99, 0xb9, 0xc4, + 0x3, 0xfe, 0x12, 0x34, 0x42, 0xb3, 0xc4, 0xca, + 0xae, 0x14, 0x3, 0x2c, 0xe5, 0xd4, 0xfb, 0x80, + 0x7f, 0xf7, 0xe, 0x33, 0x72, 0xed, 0x53, 0xe, + 0xcc, 0x54, 0x21, 0x0, 0xc2, 0x46, 0x8a, 0xfc, + 0xe0, 0x1f, 0xfd, 0xc3, 0xd7, 0x0, 0x8, 0x88, + 0xd1, 0x59, 0xe2, 0x58, 0xc0, 0x21, 0x79, 0xcb, + 0xa8, 0x52, 0x0, 0xff, 0xee, 0xad, 0x7f, 0xbb, + 0x9b, 0x97, 0x53, 0xe, 0xd8, 0xe0, 0x1f, 0xfc, + 0x71, 0xe7, 0x33, 0xe7, 0xe1, 0x0, 0x8c, 0x94, + 0xcf, 0x29, 0x88, 0x7, 0xff, 0x84, 0x9a, 0xb3, + 0x3a, 0x98, 0x80, 0x21, 0x59, 0xcc, 0xd2, 0xa0, + 0x1f, 0xfe, 0x31, 0x33, 0xff, 0xe3, 0x90, 0x80, + 0x7f, 0xf8, 0x8e, 0x7b, 0x33, 0xff, 0x8d, 0xce, + 0x20, 0x1f, 0xfc, 0xc5, 0xbf, 0xfb, 0xa5, 0x0, + 0x3e, 0x48, 0xdd, 0xe6, 0x20, 0xf, 0xfe, 0x31, + 0xcf, 0x7f, 0xda, 0xe4, 0x0, + + /* U+8F93 "输" */ + 0x0, 0xff, 0xff, 0x80, 0x7c, 0x71, 0x98, 0xba, + 0x84, 0x10, 0xf, 0xfe, 0x69, 0x35, 0xee, 0x53, + 0xa1, 0x0, 0x7f, 0xf4, 0x54, 0xce, 0x45, 0x21, + 0x10, 0x7, 0xff, 0x2d, 0x23, 0xe5, 0x8, 0xd6, + 0xcc, 0x3, 0xff, 0x96, 0x24, 0x5c, 0x9e, 0xc0, + 0x11, 0x18, 0x91, 0x7c, 0x22, 0x0, 0xff, 0x85, + 0x27, 0x2d, 0xc8, 0x3, 0x8e, 0x3e, 0x98, 0x80, + 0x3f, 0xf8, 0xc7, 0x19, 0xbb, 0xad, 0x88, 0x2, + 0x26, 0xbd, 0xdf, 0xce, 0x20, 0x1e, 0x13, 0x6a, + 0xcb, 0x63, 0x1, 0x5a, 0xdd, 0x4a, 0x90, 0x12, + 0xce, 0xe4, 0xa0, 0x80, 0x7f, 0xf0, 0xf8, 0x8b, + 0x8, 0x7, 0x84, 0x8b, 0xf9, 0x8c, 0x2, 0x14, + 0x8b, 0xfc, 0x95, 0x20, 0x25, 0xaf, 0xa5, 0x22, + 0x35, 0x6e, 0x42, 0x8, 0x1b, 0x5f, 0x6d, 0x42, + 0x90, 0x80, 0x7e, 0x37, 0xcd, 0xd6, 0x41, 0x80, + 0x47, 0x19, 0xbb, 0xfb, 0x24, 0xe2, 0xfb, 0x96, + 0xe8, 0x20, 0x1, 0x48, 0x98, 0x73, 0x22, 0xf8, + 0x56, 0x6a, 0x54, 0x40, 0x4, 0xaf, 0x5b, 0xdb, + 0x4e, 0x60, 0x1f, 0xc9, 0x86, 0x0, 0x24, 0x31, + 0x56, 0x69, 0x8, 0x3, 0x72, 0xa0, 0x80, 0x4, + 0x60, 0x0, 0xa4, 0x5e, 0xef, 0xff, 0x6, 0xe5, + 0x44, 0x0, 0x46, 0x61, 0x0, 0x9, 0x21, 0x80, + 0x7e, 0x3c, 0x40, 0x0, 0xa5, 0xbd, 0xc4, 0xcd, + 0xee, 0x0, 0x13, 0x8d, 0xb9, 0xad, 0xed, 0x85, + 0x5f, 0xfe, 0x63, 0x5f, 0x67, 0xee, 0x74, 0x18, + 0x7, 0xe3, 0xb4, 0x10, 0x17, 0xa3, 0x10, 0xf, + 0xfe, 0x0, 0xa3, 0x29, 0x1, 0xb5, 0x57, 0xff, + 0x32, 0x5c, 0x51, 0x58, 0x3, 0xfe, 0x3a, 0x62, + 0x1, 0x7d, 0x20, 0x10, 0xf, 0x18, 0x80, 0x70, + 0xb5, 0xff, 0xff, 0xf1, 0x2d, 0x84, 0xd, 0xaa, + 0xa8, 0x40, 0x2, 0x4d, 0xdd, 0x8, 0x20, 0x1e, + 0x27, 0xf6, 0x10, 0x0, 0xb5, 0xf7, 0xe3, 0x90, + 0x4, 0x93, 0xdf, 0xec, 0x61, 0x0, 0xf1, 0x23, + 0xbf, 0x90, 0x80, 0x3e, 0x7f, 0x55, 0x8c, 0x84, + 0x3, 0xff, 0x86, 0x46, 0xa2, 0x1, 0xff, 0xc7, + 0x70, 0xf, 0xcd, 0xb1, 0x1e, 0xd6, 0x0, 0xff, + 0xe9, 0xa4, 0x66, 0xff, 0xfd, 0xae, 0x40, 0x12, + 0x57, 0xfd, 0x6c, 0x20, 0x1e, 0x48, 0xed, 0xdd, + 0xd0, 0x80, 0x1f, 0xfd, 0x41, 0x22, 0x0, 0x7f, + 0xf4, 0xc, 0x84, 0x71, 0x18, 0x7, 0xff, 0x7c, + 0x40, 0x39, 0xba, 0x6a, 0xe5, 0x88, 0x3, 0xc9, + 0x79, 0x9e, 0xb4, 0x0, 0xff, 0xe9, 0x9, 0xab, + 0x3c, 0x4d, 0x5e, 0xf7, 0xe3, 0x90, 0x4, 0x48, + 0xca, 0x8f, 0xe2, 0x1, 0xe5, 0xaa, 0x4c, 0xea, + 0xa2, 0x80, 0x7f, 0xf4, 0x8e, 0xe2, 0x61, 0xd9, + 0x50, 0x84, 0x3, 0xe2, 0x59, 0xbc, 0xc4, 0x98, + 0x7, 0x84, 0xd5, 0x9b, 0x29, 0x88, 0x7, 0xff, + 0x48, 0xae, 0x91, 0x59, 0xe2, 0xaf, 0x3b, 0x1c, + 0x80, 0x26, 0xf6, 0x43, 0x20, 0xf, 0xc9, 0x3d, + 0xff, 0xba, 0x50, 0x3, 0xff, 0xa6, 0x6f, 0x75, + 0x30, 0xea, 0x86, 0x22, 0x0, 0xff, 0xe4, 0x88, + 0x6, 0x10, 0xf, 0xe4, 0x9f, 0xfa, 0xd8, 0x40, + 0x3f, 0xff, 0xc2, 0x1, 0xff, 0xe3, 0x26, 0xac, + 0xc4, 0x20, 0x4, 0x26, 0x20, 0x2, 0x7b, 0xdd, + 0xdd, 0x48, 0x1, 0x9, 0x8, 0x7, 0xff, 0x68, + 0x4c, 0x8, 0xc0, 0xcc, 0x22, 0x24, 0x7e, 0x50, + 0x8, 0x90, 0xc0, 0xcf, 0x11, 0xa3, 0xd4, 0x20, + 0x7, 0x0, + + /* U+8FD0 "运" */ + 0x0, 0xff, 0xff, 0x80, 0x61, 0x49, 0xcd, 0xa7, + 0x41, 0x0, 0xff, 0xf9, 0x1b, 0x43, 0x19, 0x2c, + 0x5f, 0xe4, 0xa9, 0x0, 0x7c, 0xd7, 0xff, 0xff, + 0xd5, 0xe8, 0x30, 0xf, 0xfe, 0x9, 0xbe, 0x6d, + 0x39, 0x88, 0x9, 0xb5, 0x65, 0xb9, 0x80, 0x7f, + 0xf7, 0x4, 0x3, 0xff, 0x8a, 0x4b, 0x19, 0x8a, + 0x52, 0x0, 0x84, 0x84, 0x3, 0x35, 0x77, 0x7f, + 0xf5, 0x7e, 0xc, 0x3, 0xff, 0x90, 0x4b, 0x5f, + 0x76, 0xca, 0x52, 0x0, 0xe1, 0x1f, 0xfe, 0xc0, + 0x7, 0xff, 0x4, 0xe3, 0x7b, 0x69, 0xd0, 0x40, + 0x4, 0x88, 0x20, 0xf, 0xff, 0x59, 0x34, 0x39, + 0x9, 0x2c, 0x5f, 0x6d, 0x31, 0x80, 0x71, 0x19, + 0xff, 0xf8, 0x8, 0x40, 0x38, 0x9a, 0xfb, 0x21, + 0x48, 0x2, 0x25, 0x9c, 0xc3, 0x98, 0x25, 0xee, + 0x67, 0xff, 0x7e, 0x10, 0x3, 0xf0, 0x9b, 0xd6, + 0xea, 0x54, 0x80, 0x52, 0x94, 0xc1, 0xc4, 0x8b, + 0xfe, 0x11, 0x0, 0x7c, 0x24, 0x5f, 0xfc, 0xb3, + 0x10, 0xf, 0xfe, 0x9, 0x35, 0x66, 0xfd, 0xb1, + 0x0, 0xe, 0x33, 0x77, 0xfd, 0x6a, 0x1, 0xc4, + 0xfb, 0xbf, 0xfc, 0xc9, 0x40, 0xe, 0x11, 0xff, + 0x80, 0xc0, 0x44, 0x1, 0xff, 0xc3, 0x5f, 0x40, + 0xc, 0x55, 0x43, 0x0, 0xc2, 0x8f, 0x7b, 0xfd, + 0x28, 0x1, 0xff, 0xc4, 0x48, 0xfe, 0xef, 0xfe, + 0x7, 0xc2, 0x0, 0x7f, 0xf0, 0x57, 0xd4, 0x3, + 0x25, 0xb1, 0x0, 0x70, 0xb0, 0x39, 0x0, 0xb5, + 0x4a, 0x8, 0x7, 0xff, 0x7d, 0x7d, 0x40, 0x32, + 0xf3, 0x8, 0x7, 0xc4, 0xfd, 0x6, 0x0, 0x16, + 0xab, 0x41, 0x0, 0xff, 0x92, 0x7b, 0xff, 0xd8, + 0xc2, 0x1, 0xff, 0xc4, 0x15, 0xe5, 0x0, 0x85, + 0xe5, 0x40, 0x3f, 0xe2, 0x7f, 0x72, 0x0, 0xa, + 0xd5, 0xa8, 0x80, 0x7f, 0xf6, 0x5, 0xf9, 0x0, + 0x23, 0x9a, 0x31, 0x11, 0x10, 0xcc, 0x8a, 0xa6, + 0x63, 0xba, 0x2c, 0x46, 0x0, 0x85, 0x62, 0x4c, + 0x3, 0xff, 0xa2, 0x8f, 0x54, 0xbb, 0x64, 0x20, + 0x6, 0x38, 0xdf, 0xee, 0x6e, 0xb3, 0x17, 0x54, + 0x99, 0x44, 0x1d, 0xcc, 0x62, 0x1, 0xc4, 0xfe, + 0xc2, 0x1, 0xff, 0xd0, 0xd5, 0x52, 0x20, 0x84, + 0x3, 0xff, 0x88, 0x22, 0x22, 0x19, 0x91, 0xa, + 0xa6, 0x69, 0x4, 0x2, 0x3b, 0x93, 0x0, 0xff, + 0xe0, 0x8a, 0x90, 0x80, 0x42, 0xa6, 0x40, 0x5, + 0xe8, 0x77, 0xa2, 0x13, 0x2a, 0xa5, 0xdb, 0x31, + 0xba, 0xee, 0x7f, 0xee, 0xe6, 0xeb, 0x31, 0x76, + 0xaa, 0x4c, 0xf1, 0x80, 0x9, 0xbc, 0x3, 0xfc, + 0x49, 0x19, 0xf2, 0x80, 0x1c, 0x71, 0xf4, 0xc4, + 0xaf, 0x11, 0x3b, 0x99, 0x8a, 0xa4, 0x41, 0x98, + 0x88, 0x22, 0x0, 0xff, 0xe2, 0x93, 0xf6, 0xf6, + 0xdb, 0x98, 0x7, 0x12, 0xce, 0x62, 0xdc, 0xc4, + 0x0, 0x4a, 0xee, 0x41, 0x2, 0x59, 0xcf, 0xdb, + 0x98, 0x65, 0x43, 0x31, 0x10, 0x47, 0xff, 0x92, + 0x45, 0xc0, 0x24, 0x67, 0x10, 0x80, 0x66, 0xf7, + 0x31, 0x0, 0x8d, 0xef, 0x2a, 0x21, 0x79, 0x4c, + 0x62, 0x2, 0x48, 0xcf, 0x35, 0x79, 0x8d, 0xd7, + 0x77, 0xff, 0x27, 0x77, 0xd9, 0x9a, 0x10, 0x3, + 0x92, 0x20, 0x84, 0x93, 0xb9, 0x8, 0x20, 0x18, + 0x96, 0x73, 0xb6, 0xe6, 0x19, 0x4c, 0xc4, 0x22, + 0x0, 0xff, 0xea, 0x26, 0xb8, 0x80, 0x71, 0x35, + 0xed, 0xb1, 0x0, 0x7f, 0xf0, 0x49, 0x19, 0xe6, + 0xb3, 0x1b, 0xdc, 0xff, 0xff, 0xea, 0x5b, 0x8, + 0x4, + + /* U+8FD4 "返" */ + 0x0, 0xf8, 0xd5, 0x46, 0x1, 0xff, 0xf4, 0x14, + 0x9d, 0xca, 0xa6, 0x6c, 0xa0, 0x80, 0x7f, 0xc9, + 0x3f, 0xff, 0xfd, 0x9c, 0x61, 0x0, 0xf8, 0x52, + 0xa8, 0x82, 0x0, 0x26, 0xbf, 0xb6, 0x20, 0xf, + 0xff, 0x79, 0xbd, 0xe4, 0xa8, 0x80, 0x5, 0x27, + 0x2d, 0x48, 0x3, 0xff, 0x80, 0x93, 0xff, 0xff, + 0xd2, 0xc6, 0x10, 0xf, 0xfe, 0x1, 0x35, 0x64, + 0xa0, 0x80, 0x5, 0x7d, 0xc4, 0x3, 0xfe, 0x13, + 0x0, 0xff, 0xf2, 0x13, 0x55, 0x22, 0x17, 0xf4, + 0xa2, 0x1, 0xff, 0x9, 0x88, 0x7, 0xff, 0x2c, + 0x40, 0x3f, 0xf9, 0xa2, 0x8e, 0xe4, 0x10, 0xf, + 0xc6, 0x1, 0xc9, 0x3d, 0xff, 0xff, 0xcb, 0xef, + 0xed, 0x84, 0x0, 0xff, 0xf3, 0x8, 0xff, 0xf0, + 0x0, 0x3c, 0x22, 0xe5, 0x0, 0xff, 0xee, 0x2b, + 0xb8, 0x40, 0x21, 0x6b, 0xee, 0xff, 0xb2, 0xc, + 0x3, 0x1d, 0x38, 0x80, 0x7f, 0x1c, 0x6f, 0xff, + 0xff, 0x3, 0xa5, 0x0, 0x3c, 0x22, 0x0, 0xe3, + 0xca, 0x93, 0x0, 0xb, 0x7b, 0x8, 0x7, 0xe3, + 0xb9, 0x30, 0x8, 0xe9, 0xc4, 0x3, 0xff, 0xaa, + 0x44, 0x70, 0xc, 0x22, 0x72, 0x6a, 0x40, 0x9, + 0x22, 0x8, 0x1, 0xc4, 0xd0, 0xc2, 0x1, 0x25, + 0x38, 0x80, 0x7f, 0xc7, 0x19, 0xdd, 0xea, 0x51, + 0x0, 0xff, 0x87, 0xc8, 0x3, 0x2f, 0x10, 0xb, + 0x43, 0x10, 0x0, 0x5a, 0xa8, 0xa2, 0x4f, 0xd2, + 0x80, 0x11, 0x3c, 0x30, 0x80, 0x7f, 0xf0, 0x84, + 0x7e, 0x63, 0x0, 0xff, 0x85, 0x10, 0x20, 0x10, + 0x92, 0x88, 0x4, 0x73, 0x26, 0x10, 0x0, 0xad, + 0x7e, 0x41, 0x80, 0x44, 0xfd, 0x6, 0x1, 0xff, + 0xd8, 0x7c, 0x30, 0xc, 0xb8, 0x60, 0x1e, 0x49, + 0xa6, 0x10, 0x8, 0x44, 0x1, 0x13, 0xf4, 0x18, + 0x7, 0xff, 0x65, 0x71, 0x0, 0x32, 0x72, 0x80, + 0x7c, 0x29, 0x8a, 0x1, 0xfc, 0x66, 0x44, 0x8, + 0x7, 0xff, 0x5c, 0xe2, 0xa, 0x1, 0x93, 0x94, + 0x3, 0x12, 0x46, 0x7d, 0xb9, 0x88, 0x7, 0xe1, + 0x48, 0xbf, 0xc8, 0x52, 0x0, 0xff, 0xe8, 0x93, + 0x7b, 0x90, 0x4, 0x4f, 0xee, 0xaf, 0x59, 0xdb, + 0x6e, 0x62, 0x1, 0x12, 0xce, 0xff, 0x64, 0x20, + 0x80, 0x42, 0x6f, 0x5b, 0xfb, 0x72, 0xe8, 0x40, + 0x1f, 0xfc, 0x1, 0x4a, 0x41, 0x0, 0x85, 0x3c, + 0xe6, 0x10, 0x44, 0xd3, 0x8, 0x5, 0x6a, 0x62, + 0x1, 0x9, 0xac, 0xe6, 0xd3, 0x10, 0x9, 0xbd, + 0xfe, 0x42, 0x90, 0x7, 0x12, 0x34, 0xf3, 0x88, + 0x7, 0xe3, 0x7b, 0xfb, 0x62, 0x0, 0xe2, 0x6a, + 0x9e, 0xda, 0xc8, 0x40, 0x1, 0x3f, 0x42, 0xa9, + 0xeb, 0x7b, 0x29, 0x8c, 0x3, 0xf8, 0x4d, 0xeb, + 0x7b, 0x6a, 0x14, 0xc9, 0x6a, 0x8a, 0x20, 0x18, + 0x96, 0xb7, 0x21, 0x4, 0x2, 0x25, 0x88, 0x20, + 0x80, 0xd, 0xa6, 0xf3, 0x6e, 0x5d, 0x95, 0x92, + 0x62, 0x9c, 0x8, 0x47, 0xff, 0x80, 0x45, 0xe3, + 0x6, 0x49, 0xf9, 0xe0, 0x43, 0x10, 0xc, 0x38, + 0x84, 0x1, 0x8d, 0xef, 0x29, 0xdd, 0x79, 0x4e, + 0x82, 0x0, 0x13, 0x46, 0x89, 0xab, 0xcc, 0x6e, + 0xf7, 0x77, 0xff, 0x3, 0x77, 0xf6, 0x66, 0xbb, + 0xa1, 0x0, 0x38, 0xe2, 0x8, 0x49, 0x19, 0x88, + 0x41, 0x0, 0xc4, 0xb1, 0x7d, 0xb7, 0x50, 0xca, + 0x86, 0x42, 0x20, 0xf, 0xfe, 0xa1, 0xda, 0x88, + 0x7, 0xb, 0x5e, 0xdb, 0x98, 0x7, 0xff, 0x4, + 0x91, 0x5e, 0x6a, 0xf3, 0x7b, 0x9f, 0xff, 0xdd, + 0xdf, 0xef, 0xff, 0xfe, 0xe, 0x39, 0x0, 0x40, + + /* U+9000 "退" */ + 0x0, 0xfc, 0x22, 0x0, 0xff, 0xf9, 0x92, 0xd6, + 0xf7, 0x36, 0x98, 0xc0, 0x3f, 0xf8, 0x7, 0x1b, + 0xff, 0xff, 0xd3, 0xa5, 0x0, 0xff, 0x84, 0xc0, + 0x31, 0x2c, 0xe6, 0xd3, 0x10, 0x7, 0xff, 0x10, + 0x48, 0xbf, 0xf8, 0xc2, 0x1, 0xff, 0xc7, 0x36, + 0xac, 0xc4, 0x20, 0x80, 0x9, 0x67, 0x2d, 0xc8, + 0x3, 0xff, 0x80, 0xd5, 0xbb, 0xff, 0xc7, 0x72, + 0x0, 0xff, 0xe4, 0x9, 0xbd, 0xfd, 0x29, 0x0, + 0x5, 0xb5, 0xc8, 0x3, 0xfe, 0x48, 0xaa, 0xff, + 0xe3, 0x42, 0x90, 0x7, 0xff, 0x30, 0x56, 0xbe, + 0xeb, 0x31, 0x4a, 0x40, 0x1f, 0xf1, 0x1a, 0xaf, + 0xff, 0x19, 0x8, 0x3, 0xff, 0xa0, 0x48, 0xa6, + 0x20, 0x1f, 0xfc, 0x25, 0xaf, 0xff, 0xfe, 0x36, + 0x30, 0x80, 0x7f, 0xf9, 0x4, 0x7f, 0xf8, 0xce, + 0x1, 0xff, 0xe4, 0x5a, 0xee, 0xff, 0xe3, 0x5b, + 0x8, 0x7, 0xff, 0xd, 0x6b, 0xff, 0xff, 0x83, + 0xd2, 0x80, 0x1f, 0xfc, 0x11, 0x23, 0x3e, 0x21, + 0x0, 0xe1, 0x23, 0x3f, 0xe2, 0x16, 0xd2, 0x0, + 0xfe, 0x10, 0xf, 0xfe, 0x8b, 0xce, 0x67, 0x6d, + 0x28, 0x80, 0x45, 0x5d, 0x99, 0xdd, 0x2a, 0x22, + 0x37, 0xdd, 0x53, 0x10, 0x6, 0x5a, 0xee, 0xfa, + 0x94, 0x40, 0x3f, 0xf9, 0xe9, 0xce, 0x20, 0x3, + 0x9b, 0x52, 0x58, 0xcd, 0xa6, 0x30, 0x0, 0xa5, + 0x4b, 0x90, 0x7, 0x8, 0xfe, 0x63, 0x0, 0xff, + 0xe8, 0xa5, 0x31, 0x0, 0x5, 0xab, 0x69, 0xcc, + 0x0, 0x4b, 0x19, 0xf6, 0xe6, 0x20, 0x1f, 0xfe, + 0x23, 0x98, 0x51, 0x0, 0xe1, 0x5a, 0xdd, 0x53, + 0x98, 0x80, 0x7f, 0xf8, 0x84, 0x8d, 0x59, 0x98, + 0x4e, 0x80, 0x18, 0x56, 0x2d, 0x4, 0x3, 0xff, + 0xb2, 0x26, 0x1, 0x92, 0x33, 0x7b, 0xfb, 0x72, + 0xa6, 0x18, 0xfe, 0x69, 0x44, 0x2, 0x26, 0xbc, + 0xa6, 0x31, 0x0, 0xff, 0xe8, 0x1c, 0x6f, 0xe3, + 0x8, 0x6, 0x23, 0x31, 0x8, 0x4, 0x24, 0x6a, + 0xda, 0xa4, 0xb5, 0x94, 0xa2, 0x1, 0x12, 0xce, + 0x77, 0x32, 0x54, 0x80, 0x3f, 0xc4, 0xb4, 0x82, + 0x1, 0xa, 0x6a, 0x9, 0x70, 0x80, 0x61, 0x23, + 0x56, 0x79, 0xab, 0xde, 0xfe, 0xdc, 0xa9, 0x63, + 0x0, 0x89, 0x6b, 0xed, 0xd0, 0x80, 0x30, 0x80, + 0xb1, 0x0, 0x78, 0x52, 0x33, 0x14, 0xc4, 0x1, + 0xc4, 0xd5, 0xb2, 0x13, 0x79, 0xdf, 0xdb, 0x95, + 0x30, 0xca, 0x84, 0x20, 0x1f, 0xfc, 0x21, 0x48, + 0xbd, 0xeb, 0x87, 0x9f, 0x83, 0x0, 0x84, 0xde, + 0xfe, 0xdc, 0xc4, 0x2, 0x26, 0x87, 0x41, 0x1, + 0x37, 0x9a, 0xa7, 0xdc, 0x3b, 0x2a, 0x19, 0x88, + 0xbe, 0x11, 0xc4, 0x5f, 0xfc, 0x3, 0x27, 0x4b, + 0x27, 0x44, 0x10, 0x80, 0x16, 0xd0, 0x40, 0x21, + 0x48, 0xcd, 0x97, 0x8b, 0xca, 0x63, 0x10, 0x0, + 0x9a, 0xbc, 0x4d, 0x5e, 0x63, 0x77, 0xee, 0xed, + 0xbb, 0xff, 0xc0, 0xcc, 0xeb, 0xbb, 0x9c, 0x40, + 0x5b, 0xd8, 0x88, 0xd5, 0x96, 0xe6, 0x1, 0xc4, + 0xb3, 0x9d, 0xb7, 0x2e, 0xc8, 0x64, 0x41, 0x10, + 0x7, 0xff, 0x4d, 0x7d, 0x40, 0x31, 0xce, 0xea, + 0x54, 0x80, 0x3f, 0xf8, 0x24, 0x8d, 0x13, 0x79, + 0xba, 0xee, 0x7f, 0xff, 0xf4, 0xe9, 0x40, 0x0, + + /* U+9009 "选" */ + 0x0, 0xff, 0xff, 0x80, 0x61, 0x22, 0x8, 0x7, + 0xff, 0x20, 0x91, 0x6, 0x20, 0x1e, 0x38, 0xef, + 0xfd, 0x4a, 0x1, 0xff, 0xcc, 0x14, 0x7b, 0xfd, + 0xd6, 0x52, 0x90, 0x7, 0xff, 0xc, 0x5a, 0x6e, + 0xd9, 0xdc, 0x83, 0x0, 0xff, 0xec, 0xb, 0x10, + 0x80, 0x44, 0xb5, 0x96, 0xe4, 0x1, 0xff, 0xb, + 0x52, 0x0, 0x42, 0xf6, 0x60, 0x1f, 0xfd, 0x92, + 0x5a, 0xfa, 0x62, 0x0, 0xa, 0x46, 0x52, 0x88, + 0x7, 0xc5, 0x34, 0x60, 0x18, 0x5b, 0x3f, 0xf6, + 0x38, 0x80, 0x65, 0xaf, 0xff, 0xfe, 0xf, 0x41, + 0x80, 0x7f, 0xf0, 0x5, 0x67, 0x29, 0x44, 0x0, + 0x2b, 0x12, 0x60, 0x18, 0x9f, 0x9c, 0x80, 0x30, + 0x8f, 0xe0, 0xf, 0xe1, 0x1f, 0xfe, 0x9, 0x80, + 0x7f, 0xf1, 0x45, 0x6a, 0x90, 0xd3, 0x9b, 0x6, + 0x0, 0x27, 0xe8, 0x30, 0x8, 0xe3, 0x7b, 0xbf, + 0x63, 0x88, 0x6, 0x5a, 0xee, 0xff, 0xe0, 0xec, + 0x18, 0x7, 0xff, 0x19, 0x1e, 0x58, 0xc0, 0x3c, + 0x4a, 0x62, 0x5, 0x1c, 0xe4, 0x1, 0xff, 0xf1, + 0x25, 0x9c, 0xfe, 0xc7, 0x20, 0xf, 0xff, 0x91, + 0x35, 0xee, 0xb3, 0x2d, 0xdf, 0xfe, 0xb, 0x88, + 0x6, 0x5b, 0xdd, 0xff, 0xe2, 0x63, 0x98, 0x7, + 0x35, 0xff, 0xff, 0xf0, 0x36, 0xc, 0x2, 0x16, + 0x22, 0xff, 0xe2, 0x88, 0x7, 0xc2, 0x45, 0xff, + 0xc5, 0xf0, 0xf, 0xfe, 0x69, 0x3e, 0x77, 0x7f, + 0x63, 0x90, 0x6, 0x28, 0xce, 0xed, 0x28, 0x1, + 0x89, 0xf3, 0xbb, 0xfd, 0xf0, 0x60, 0x1c, 0xd7, + 0xdd, 0xeb, 0x51, 0x0, 0xff, 0x8, 0xff, 0x98, + 0x88, 0x1, 0xa, 0x19, 0x84, 0x71, 0x80, 0x70, + 0xf8, 0x8f, 0xff, 0x0, 0x3, 0xf8, 0x47, 0xce, + 0x60, 0x1f, 0xfc, 0x85, 0xf4, 0x0, 0xcb, 0xea, + 0x1, 0xff, 0xf0, 0x27, 0x95, 0x10, 0x9, 0x79, + 0x84, 0x3, 0xff, 0x8e, 0x4d, 0x10, 0x53, 0x10, + 0xf, 0xfe, 0x98, 0xa4, 0xfc, 0x18, 0x4, 0x2d, + 0x2a, 0x1, 0xff, 0xc9, 0x1e, 0x67, 0xac, 0xd7, + 0x10, 0xf, 0xfe, 0x69, 0x2b, 0xde, 0x5b, 0x10, + 0x4, 0x6f, 0xb2, 0x60, 0x1f, 0xc2, 0x1, 0x87, + 0x98, 0x47, 0x12, 0x98, 0x80, 0x4c, 0x42, 0x1, + 0xff, 0xca, 0x38, 0xdd, 0x54, 0x21, 0x0, 0x44, + 0xd7, 0xb0, 0x60, 0x1f, 0xe6, 0x31, 0x0, 0x89, + 0xaf, 0xbb, 0x6c, 0xa0, 0x4, 0x98, 0x80, 0x1f, + 0xfc, 0x72, 0x34, 0x32, 0x8f, 0x83, 0x12, 0x47, + 0xad, 0xd4, 0xa0, 0x80, 0x7f, 0xf0, 0xe, 0xec, + 0xc6, 0x42, 0x20, 0xf, 0x8, 0x89, 0x66, 0x18, + 0x40, 0x3f, 0xc4, 0xb3, 0xec, 0x20, 0x19, 0x23, + 0x3b, 0x6c, 0x7f, 0xdb, 0x70, 0xa4, 0x1, 0xff, + 0xc5, 0x25, 0x9c, 0xde, 0xe7, 0xff, 0xbb, 0x9b, + 0x4c, 0x60, 0x1f, 0x85, 0x23, 0x36, 0x98, 0xc0, + 0x4, 0xd3, 0x54, 0x85, 0x22, 0x34, 0xe7, 0xe5, + 0x43, 0x2a, 0x19, 0x10, 0x46, 0x0, 0xff, 0xe1, + 0x8, 0xc4, 0x43, 0x32, 0x2a, 0x99, 0xe2, 0xae, + 0x54, 0x40, 0x21, 0x6a, 0xb7, 0x30, 0x8, 0xe3, + 0x36, 0x59, 0x54, 0xf5, 0xba, 0x95, 0x20, 0x35, + 0x79, 0xab, 0xcd, 0xd7, 0x75, 0xff, 0xff, 0xc2, + 0xee, 0xb7, 0x59, 0x8b, 0xaa, 0x4c, 0x3a, 0xa8, + 0x58, 0x40, 0x21, 0x68, 0x72, 0x1, 0x5b, 0xd7, + 0x30, 0xf, 0xc4, 0xd5, 0xbd, 0xcc, 0xa7, 0x54, + 0x21, 0x0, 0xff, 0xe8, 0x88, 0xc9, 0xa6, 0x1, + 0xe3, 0x8f, 0xdc, 0xa4, 0x10, 0xf, 0xfe, 0x18, + 0x9a, 0xc5, 0x5e, 0xf7, 0xfe, 0xee, 0xff, 0xe1, + 0xff, 0xff, 0xbb, 0xaa, 0x50, 0x8, + + /* U+901F "速" */ + 0x0, 0xff, 0xff, 0x89, 0xa9, 0x88, 0x7, 0xff, + 0x40, 0xe3, 0x7f, 0xf5, 0x20, 0x7, 0xff, 0x30, + 0x9a, 0xff, 0x2b, 0x3e, 0xdc, 0xc4, 0x3, 0xff, + 0xda, 0x49, 0xce, 0x40, 0x1, 0x48, 0xcc, 0x52, + 0x90, 0x4, 0x91, 0x99, 0xff, 0xc4, 0xe6, 0x20, + 0xc, 0x93, 0x99, 0xff, 0xc5, 0xa5, 0x10, 0xe, + 0x25, 0x9d, 0xc8, 0x41, 0x0, 0x12, 0xd6, 0x52, + 0x90, 0x91, 0x9f, 0xff, 0x10, 0x84, 0x3, 0x84, + 0x8c, 0xff, 0xf8, 0xac, 0x46, 0x1, 0xfc, 0x6f, + 0x79, 0x6, 0x20, 0x1, 0x6d, 0x14, 0xbe, 0xef, + 0xfe, 0x25, 0xb0, 0x80, 0x65, 0x9e, 0xef, 0xfe, + 0x2e, 0xb9, 0x0, 0x7f, 0xf0, 0x9, 0xf6, 0xa6, + 0xb7, 0x20, 0xc4, 0x60, 0x22, 0xff, 0xe1, 0x98, + 0x7, 0x8, 0x88, 0xbf, 0xf8, 0x60, 0x22, 0x0, + 0xff, 0xe2, 0xa, 0x32, 0x90, 0x7, 0x13, 0x76, + 0x67, 0xff, 0x6, 0x54, 0x40, 0x32, 0x46, 0x67, + 0xff, 0xb, 0xa4, 0x80, 0x3f, 0xfa, 0xc6, 0xae, + 0xff, 0x31, 0x80, 0x71, 0x2b, 0xbf, 0xe5, 0x20, + 0xf, 0xfe, 0xe0, 0xa4, 0xc4, 0x7d, 0x48, 0x40, + 0x19, 0xfa, 0x23, 0xf7, 0x38, 0x7, 0xff, 0x5, + 0x23, 0x33, 0xff, 0x83, 0x6e, 0x60, 0x1f, 0xfe, + 0x71, 0x23, 0x3f, 0xfe, 0xa, 0x73, 0x80, 0x7f, + 0xb, 0xee, 0xff, 0x39, 0x0, 0x65, 0xad, 0xdf, + 0xd4, 0xa0, 0x1f, 0xfc, 0x14, 0x9b, 0xbf, 0xa1, + 0x4, 0x3, 0xfe, 0x61, 0x1e, 0x3, 0x3e, 0x22, + 0x8, 0x7, 0xc2, 0x44, 0x33, 0xf0, 0x8, 0xfb, + 0xc0, 0x3e, 0x13, 0x44, 0xfc, 0x40, 0x1f, 0xe2, + 0x7b, 0xee, 0xfd, 0x92, 0x40, 0x1f, 0xfc, 0x1, + 0x58, 0xce, 0xef, 0xec, 0x72, 0x0, 0xff, 0xeb, + 0x92, 0xd6, 0x41, 0x80, 0x4, 0x40, 0x1f, 0x85, + 0x27, 0x30, 0xe6, 0x20, 0x1f, 0xfd, 0xb1, 0x37, + 0xbc, 0xa5, 0x10, 0x37, 0xca, 0x62, 0x0, 0xcb, + 0x38, 0xe6, 0x2, 0x71, 0x9f, 0x6e, 0x84, 0x1, + 0xff, 0xd2, 0x12, 0x58, 0xcf, 0xc8, 0x41, 0x2, + 0x6b, 0xd8, 0x37, 0x0, 0xf8, 0x8e, 0x33, 0x10, + 0x62, 0x2, 0x91, 0x7b, 0xd7, 0xa, 0x40, 0x1f, + 0xfc, 0xa1, 0x38, 0xcd, 0xa7, 0x31, 0x1, 0x48, + 0xbc, 0x94, 0x10, 0xf, 0xfe, 0x11, 0xbe, 0x62, + 0x98, 0xc4, 0x0, 0x28, 0xf5, 0xce, 0x40, 0x1f, + 0xc2, 0x91, 0xec, 0x20, 0x19, 0xa5, 0x2e, 0x5c, + 0xcc, 0xd3, 0xbd, 0x6e, 0x82, 0x1, 0xff, 0xc8, + 0x25, 0x9c, 0xfb, 0x84, 0x35, 0xad, 0x72, 0x0, + 0xf1, 0x2c, 0xe5, 0xb9, 0x80, 0x7c, 0x71, 0xbf, + 0xf6, 0xcb, 0x10, 0x7, 0xf8, 0xb2, 0xe2, 0x37, + 0x30, 0x7, 0xf8, 0x51, 0xef, 0x29, 0x44, 0x3, + 0xa, 0x46, 0x62, 0x98, 0x80, 0x22, 0x5a, 0xdc, + 0x83, 0x0, 0xa, 0x46, 0x7e, 0xdc, 0xbb, 0x2a, + 0x19, 0x88, 0xb1, 0xab, 0xb3, 0x65, 0x32, 0x2f, + 0xf1, 0x9f, 0x22, 0x62, 0x10, 0x32, 0x43, 0x10, + 0x8, 0x9a, 0xb2, 0x94, 0x8d, 0xf7, 0x25, 0x48, + 0x0, 0x24, 0x8d, 0x13, 0x57, 0x98, 0xdd, 0xee, + 0xef, 0xdb, 0xbf, 0xec, 0xce, 0xbb, 0xb9, 0xc4, + 0x9, 0xbd, 0xc8, 0x8d, 0x79, 0x2a, 0x20, 0x1c, + 0x26, 0xd5, 0xbd, 0x95, 0xc, 0xa8, 0x64, 0x22, + 0x0, 0xff, 0xe9, 0xaf, 0xa8, 0x6, 0x38, 0xdd, + 0x4a, 0x8, 0x7, 0xff, 0x4, 0x4d, 0x5e, 0x6a, + 0xf3, 0x7b, 0x9f, 0xff, 0xbb, 0xbf, 0xdf, 0xff, + 0xfc, 0x1a, 0x50, 0x0, + + /* U+90E8 "部" */ + 0x0, 0xff, 0xe3, 0x9, 0x19, 0xe2, 0x10, 0xf, + 0xff, 0x98, 0xbf, 0x66, 0x69, 0x70, 0xf, 0xff, + 0xf8, 0x7, 0xff, 0x0, 0x9f, 0x3f, 0xff, 0xf9, + 0x1d, 0xb2, 0xc6, 0x20, 0x1e, 0x59, 0xdd, 0xff, + 0xbe, 0xc, 0x3, 0x24, 0x76, 0xef, 0xfd, 0x4a, + 0x20, 0x1, 0x0, 0xff, 0xe4, 0x9, 0x34, 0x4a, + 0x80, 0x7c, 0x45, 0xff, 0xc0, 0x11, 0x0, 0x78, + 0x44, 0x45, 0xff, 0x9, 0x80, 0x7e, 0x48, 0xdd, + 0xfe, 0xa5, 0x10, 0xc, 0x2d, 0x28, 0x1, 0xe5, + 0xbf, 0xf7, 0x6d, 0xcc, 0x3c, 0xdf, 0x7f, 0xff, + 0xba, 0xa1, 0x9e, 0x6b, 0x37, 0xbe, 0xd8, 0x40, + 0x3e, 0x12, 0x2f, 0xe6, 0xc4, 0x10, 0x8, 0xa6, + 0x8c, 0x3, 0xff, 0x80, 0x9f, 0x30, 0xf1, 0xaa, + 0x1, 0xfe, 0x5c, 0x96, 0x79, 0x8b, 0x11, 0x0, + 0x7f, 0xf2, 0x13, 0x5c, 0x40, 0x23, 0xb6, 0x20, + 0xf, 0xfe, 0x0, 0xbe, 0x98, 0x0, 0x5f, 0x50, + 0x3, 0xf1, 0xe3, 0x88, 0x0, 0xaa, 0x86, 0x1, + 0xff, 0xc8, 0x4e, 0x71, 0x0, 0x96, 0x58, 0x40, + 0x3f, 0xf8, 0x42, 0xa8, 0x40, 0x1, 0x53, 0x20, + 0xf, 0x1d, 0xb0, 0x80, 0xe, 0x98, 0x80, 0x3f, + 0xf9, 0xb, 0xca, 0x20, 0x1, 0x69, 0x50, 0xf, + 0xf8, 0x47, 0xee, 0x43, 0x56, 0xb2, 0x1, 0x1e, + 0x27, 0xf4, 0x32, 0x4b, 0x50, 0x11, 0xe0, 0xf, + 0xfe, 0x10, 0xb7, 0x28, 0x4, 0x73, 0x66, 0x1, + 0xfe, 0x39, 0xfe, 0xee, 0xd9, 0x63, 0x56, 0x8a, + 0xde, 0xee, 0xdb, 0x85, 0x32, 0x48, 0xde, 0xee, + 0xf9, 0x40, 0xf, 0xfe, 0x2, 0x6a, 0x0, 0x67, + 0x13, 0x0, 0xff, 0xf9, 0x2d, 0x51, 0x44, 0x0, + 0x93, 0xb0, 0x60, 0x1f, 0xc7, 0x3d, 0xff, 0xff, + 0xd5, 0xe9, 0x40, 0xf, 0xfe, 0x8, 0xad, 0x6b, + 0x90, 0x0, 0xdf, 0x9c, 0x80, 0x3f, 0xfe, 0x47, + 0x12, 0xa2, 0x0, 0x28, 0x82, 0x80, 0x7f, 0x85, + 0xaf, 0xff, 0xff, 0x9d, 0xb0, 0x40, 0x1f, 0xfc, + 0x94, 0xe7, 0x10, 0x9, 0x7d, 0x0, 0x3f, 0xf8, + 0xa2, 0x3f, 0xfc, 0x40, 0xf, 0xfe, 0x92, 0xfa, + 0x80, 0x66, 0x31, 0x0, 0xff, 0xe1, 0xad, 0xf7, + 0x7f, 0xf0, 0xa9, 0x40, 0x3f, 0xff, 0xe0, 0x1f, + 0xfc, 0xb1, 0x24, 0x9a, 0x40, 0xc, 0xc4, 0x20, + 0x1f, 0xfe, 0xa4, 0x9e, 0xff, 0x76, 0xdb, 0x98, + 0x4, 0x2b, 0xe8, 0x1, 0xff, 0xc4, 0x12, 0x2f, + 0xfe, 0x20, 0x80, 0x7f, 0xf2, 0x53, 0x10, 0x3, + 0xc2, 0x6b, 0x1b, 0x4a, 0x20, 0x1f, 0xfc, 0x44, + 0x8d, 0xdf, 0xfe, 0x14, 0xa0, 0x7, 0xff, 0x29, + 0x6f, 0xbb, 0xbf, 0xb2, 0x9c, 0xc0, 0x3f, 0xf8, + 0xe2, 0x46, 0x7f, 0xfc, 0x22, 0x10, 0xf, 0xfe, + 0x58, 0x8f, 0x80, 0x3f, 0xf9, 0xa9, 0x19, 0x9f, + 0xfc, 0x29, 0x71, 0x1e, 0xf0, 0xe, 0x16, 0x22, + 0xc6, 0x1, 0xff, 0xcb, + + /* U+91CF "量" */ + 0x0, 0xff, 0x84, 0x8d, 0x13, 0xff, 0xbe, 0x62, + 0x1, 0xff, 0xc9, 0x2b, 0xdb, 0xbf, 0xfe, 0xfc, + 0x38, 0x80, 0x7f, 0xf3, 0x85, 0xaf, 0xff, 0xff, + 0xa5, 0xae, 0x40, 0x1f, 0xfd, 0x51, 0x6b, 0xff, + 0xff, 0xe9, 0x6b, 0x90, 0x7, 0xff, 0x54, 0x5a, + 0xff, 0xff, 0xfa, 0x58, 0xe4, 0x1, 0xff, 0xd5, + 0x17, 0x9c, 0xcf, 0xfe, 0x97, 0xb1, 0x0, 0x7f, + 0xf3, 0xcb, 0x62, 0x3a, 0x6a, 0xef, 0xff, 0xa7, + 0x31, 0x1d, 0xc8, 0x20, 0x1f, 0xf1, 0x35, 0x57, + 0xd7, 0xd9, 0xbb, 0xff, 0xdf, 0xf8, 0xaa, 0xfa, + 0x14, 0x40, 0x3, 0xe8, 0xab, 0xff, 0xf1, 0x42, + 0x30, 0x1, 0xcf, 0x7f, 0xf7, 0x6e, 0x67, 0xff, + 0x8f, 0x7b, 0xff, 0xb1, 0xc8, 0x3, 0xfc, 0x91, + 0x99, 0xff, 0xe3, 0x97, 0x10, 0xf, 0xfe, 0x5a, + 0x4f, 0x7f, 0xff, 0xf0, 0x29, 0x40, 0x31, 0xc6, + 0xff, 0xff, 0xf0, 0x3a, 0xc, 0x3, 0xff, 0xa4, + 0x93, 0xfd, 0xdf, 0xfc, 0xa, 0x50, 0xc, 0x71, + 0x9d, 0xdf, 0xfc, 0xf, 0x83, 0x0, 0xff, 0xe9, + 0x1b, 0xd6, 0x67, 0xfd, 0xb0, 0x80, 0x18, 0x9a, + 0xb3, 0x3f, 0xf8, 0x14, 0xe4, 0x1, 0xff, 0xd2, + 0x11, 0x13, 0xbf, 0xfc, 0xde, 0xe0, 0x1c, 0x64, + 0xef, 0xff, 0xc0, 0x22, 0x0, 0x7f, 0xf4, 0xc9, + 0xa6, 0xab, 0xff, 0x80, 0xe6, 0x1, 0x89, 0x66, + 0xab, 0xff, 0x81, 0x2a, 0x40, 0x1f, 0xfc, 0xc5, + 0xaf, 0xff, 0xfe, 0x3d, 0x28, 0x6, 0x27, 0xdf, + 0xff, 0xfe, 0x3d, 0xb0, 0x80, 0x7f, 0xf0, 0xd2, + 0xbf, 0xff, 0xf9, 0x34, 0xa0, 0x18, 0x9f, 0x7f, + 0xff, 0xf9, 0x1b, 0x4, 0x1, 0xff, 0xc2, 0x6e, + 0x88, 0xff, 0xe4, 0xa9, 0x0, 0x61, 0x47, 0x88, + 0xff, 0xe4, 0x5d, 0x8c, 0x3, 0xff, 0x84, 0x48, + 0xef, 0xff, 0xc9, 0xf7, 0x0, 0xc5, 0x94, 0xef, + 0xff, 0xc8, 0x63, 0x10, 0xf, 0xc4, 0xd5, 0x77, + 0xff, 0xce, 0x94, 0x0, 0xc7, 0x53, 0x77, 0xff, + 0xce, 0x95, 0x10, 0x0, 0xfa, 0x27, 0xff, 0x3c, + 0xc4, 0x3, 0x89, 0x13, 0xff, 0x9e, 0xa4, 0x60, + + /* U+9500 "销" */ + 0x0, 0xff, 0x92, 0x2e, 0xd2, 0xea, 0x40, 0x1f, + 0xfc, 0xf3, 0x8e, 0xff, 0xb1, 0xc4, 0x3, 0xe1, + 0x18, 0x3, 0xff, 0x88, 0x2d, 0xee, 0x88, 0x6a, + 0x20, 0xf, 0xfe, 0x9, 0xb5, 0x67, 0x72, 0x50, + 0x3, 0xf0, 0x80, 0x7f, 0xf0, 0x5, 0xab, 0xba, + 0xb7, 0x30, 0xf, 0xf8, 0xa6, 0xd0, 0x2, 0x25, + 0x30, 0x22, 0xff, 0x8, 0x8, 0x31, 0x88, 0x9a, + 0x60, 0xc0, 0x3f, 0xf8, 0xc4, 0xd6, 0x80, 0x11, + 0x19, 0x80, 0x3f, 0x89, 0xa5, 0xc8, 0x3, 0x13, + 0xde, 0xef, 0xfb, 0x20, 0xc9, 0xbd, 0xc8, 0x0, + 0x4f, 0xee, 0x20, 0x1f, 0xfc, 0x34, 0x89, 0x20, + 0x1, 0xc4, 0x10, 0x3, 0xf1, 0xc7, 0x4a, 0x0, + 0x70, 0x8f, 0xff, 0x8, 0xc4, 0x2, 0x38, 0x82, + 0x80, 0x47, 0x52, 0x60, 0x1f, 0xfc, 0x2, 0x89, + 0x51, 0x2, 0x7f, 0x61, 0x0, 0xf8, 0xe7, 0x5c, + 0xc0, 0x24, 0x9d, 0xfe, 0xef, 0xfe, 0x16, 0xc1, + 0x80, 0x65, 0xe6, 0x23, 0x5a, 0xc1, 0x0, 0xff, + 0xe0, 0xf, 0x21, 0x99, 0xe6, 0xc, 0x3, 0xf8, + 0xb1, 0x4, 0x0, 0x93, 0x27, 0x20, 0xf, 0xfe, + 0x38, 0x91, 0x4f, 0x5d, 0xf0, 0xac, 0x4, 0x45, + 0x30, 0xc, 0x3c, 0xa6, 0xb, 0x5f, 0xeb, 0x73, + 0x31, 0x8, 0x7, 0xc2, 0xb3, 0x72, 0xe1, 0x3b, + 0xdf, 0xff, 0xfc, 0x3d, 0x82, 0x2, 0x6f, 0xdd, + 0x66, 0x6d, 0xdf, 0x4a, 0x88, 0x4, 0x4d, 0x79, + 0x9f, 0xe9, 0x71, 0x0, 0xfc, 0x6a, 0xda, 0x20, + 0x1f, 0xfc, 0x61, 0xf0, 0xf, 0xf0, 0x8f, 0xff, + 0x24, 0x3, 0xff, 0x8e, 0xb5, 0xff, 0xb1, 0xc4, + 0x2, 0x28, 0xdf, 0xfe, 0xc7, 0x20, 0xf, 0x85, + 0xb7, 0xbb, 0xff, 0x8f, 0xac, 0x20, 0x1f, 0xff, + 0xf0, 0xf, 0xf8, 0x48, 0xbf, 0x31, 0x0, 0x77, + 0x39, 0x17, 0xc2, 0x1, 0xf0, 0xb6, 0xf7, 0x7f, + 0xf1, 0xf5, 0x84, 0x3, 0xff, 0x82, 0x2f, 0xdb, + 0xbf, 0x52, 0x88, 0x4, 0x4d, 0x5b, 0xbe, 0xc8, + 0x30, 0xf, 0xc2, 0x3f, 0xfc, 0x90, 0xf, 0xfe, + 0x21, 0xa9, 0x9f, 0xc4, 0x20, 0x1c, 0x24, 0x67, + 0xe5, 0xe0, 0xf, 0x85, 0xb3, 0xff, 0xff, 0x8f, + 0x8c, 0x20, 0x1f, 0xfc, 0x11, 0x59, 0xcc, 0xfb, + 0x98, 0x40, 0x22, 0x9f, 0xcc, 0xf5, 0xb9, 0x80, + 0x7f, 0xff, 0xc0, 0x21, 0x6c, 0xff, 0xff, 0xe3, + 0xe3, 0x8, 0x7, 0xff, 0x64, 0x44, 0x1, 0xff, + 0x8, 0xff, 0xf1, 0xc0, 0x3f, 0xfa, 0xbe, 0xc8, + 0xf3, 0x9d, 0xf0, 0x80, 0x1f, 0xb, 0x67, 0x77, + 0xff, 0x1f, 0x18, 0x40, 0x3f, 0xf9, 0x42, 0xa6, + 0x20, 0x11, 0x3d, 0xda, 0x18, 0xc4, 0x44, 0x41, + 0x0, 0xff, 0xf3, 0x8a, 0x45, 0xa0, 0x7, 0xc2, + 0x6d, 0x17, 0xd6, 0xc2, 0x1, 0xff, 0xc8, 0x12, + 0x2f, 0x94, 0x84, 0x3, 0x84, 0x3, 0xff, 0x86, + 0x24, 0x60, 0x10, 0xa3, 0xd6, 0xfe, 0x4b, 0xa0, + 0x80, 0x7f, 0xf2, 0xca, 0xf3, 0x77, 0xa5, 0x0, + 0x21, 0x25, 0x0, 0xff, 0xe1, 0x8a, 0xcc, 0x42, + 0xb7, 0xae, 0x14, 0x84, 0x3, 0xff, 0xa0, 0x74, + 0xc6, 0x44, 0x33, 0x91, 0x5e, 0xb6, 0x4c, 0x3, + 0x80, + + /* U+957F "长" */ + 0x0, 0xff, 0xff, 0x80, 0x7c, 0x2d, 0x9f, 0xfb, + 0x60, 0x80, 0x3f, 0xf9, 0xe6, 0xd0, 0xc8, 0x40, + 0x1f, 0xfe, 0xf1, 0x38, 0xcc, 0x4b, 0xcd, 0xee, + 0xa5, 0x0, 0x3f, 0xfd, 0x26, 0xd5, 0x98, 0x73, + 0x0, 0x85, 0x27, 0xe5, 0x0, 0x3f, 0xfc, 0x82, + 0x6f, 0x5b, 0x92, 0xa4, 0x1, 0x13, 0x56, 0x5b, + 0x10, 0x7, 0xff, 0x84, 0x51, 0xeb, 0x7b, 0x21, + 0x48, 0x2, 0x25, 0x9d, 0xd4, 0xa9, 0x0, 0x7f, + 0xf7, 0x89, 0x1e, 0x73, 0xb9, 0x70, 0xa4, 0x1, + 0x9, 0xbd, 0x6e, 0xa9, 0x88, 0x3, 0xff, 0xc0, + 0x2b, 0x13, 0xc, 0x62, 0x1, 0x9, 0xb4, 0xe7, + 0xe4, 0x29, 0x0, 0x7f, 0xf9, 0x5, 0x6b, 0x29, + 0x91, 0x62, 0xf7, 0xb2, 0x58, 0xc4, 0x3, 0xff, + 0xd6, 0x2b, 0x37, 0x4e, 0x84, 0x1, 0xff, 0xd6, + 0x5a, 0xff, 0xff, 0x74, 0x98, 0x6, 0x27, 0xdf, + 0xff, 0xfe, 0xee, 0x39, 0x0, 0x7f, 0xfd, 0x84, + 0x3, 0x92, 0x33, 0x3f, 0xd6, 0xe4, 0x1, 0x85, + 0x67, 0x33, 0xf4, 0xa8, 0x80, 0x63, 0x7b, 0xcc, + 0xff, 0xe5, 0xf3, 0x10, 0x4, 0x24, 0x67, 0xfe, + 0x5e, 0x10, 0xc, 0x64, 0x86, 0x7f, 0x9a, 0x24, + 0x80, 0x23, 0x5c, 0x3, 0x3f, 0xfe, 0x58, 0x80, + 0x7f, 0xf5, 0xc9, 0xe1, 0x44, 0x0, 0x4f, 0xce, + 0x40, 0x1f, 0xfe, 0xf5, 0x89, 0x30, 0x8, 0xa3, + 0xe9, 0x44, 0x3, 0xff, 0xda, 0x4f, 0xd2, 0x82, + 0x0, 0x25, 0xac, 0x94, 0x10, 0xf, 0xff, 0x61, + 0x35, 0x51, 0x88, 0x2, 0x26, 0xbc, 0xa7, 0x31, + 0x0, 0xff, 0xef, 0x89, 0x1a, 0x33, 0xc4, 0xc9, + 0x88, 0x52, 0x7e, 0x54, 0x40, 0x22, 0x58, 0xcf, + 0xc9, 0x52, 0x0, 0xff, 0xe6, 0x17, 0x8, 0x6, + 0x34, 0x8a, 0xbd, 0xef, 0xed, 0xcb, 0x98, 0x76, + 0x67, 0xb0, 0x4, 0x4d, 0x5f, 0x90, 0x82, 0x1, + 0x9, 0xb5, 0x6f, 0xf6, 0x54, 0x32, 0x10, 0x7, + 0xff, 0x8, 0x9a, 0x18, 0x80, 0x30, 0x9a, 0xa9, + 0x8, 0x40, 0x30, 0x92, 0x2b, 0x46, 0x30, 0x7, + 0x84, 0xde, 0xfe, 0xe1, 0x48, 0x3, 0x84, 0xd5, + 0xe6, 0xa1, 0x4, 0x3, 0xff, 0x80, 0x60, 0x1, + 0x0, 0xe1, 0x24, 0x57, 0x89, 0xbc, 0xef, 0xed, + 0xba, 0x97, 0x52, 0x0, 0xff, 0xa, 0x3d, 0x6f, + 0xed, 0xc3, 0x20, 0x81, 0x3e, 0xd2, 0x8, 0x7, + 0xff, 0x0, 0x5b, 0xe1, 0xe6, 0xf7, 0xfb, 0x6e, + 0xa1, 0xd9, 0xc, 0x40, 0x3f, 0xf9, 0xa4, 0x8f, + 0x37, 0xdf, 0xb0, 0x60, 0x18, + + /* U+95ED "闭" */ + 0x0, 0xff, 0xfd, 0x9, 0xb4, 0xe6, 0x25, 0x4, + 0x3, 0xff, 0xda, 0xb7, 0x66, 0x33, 0x35, 0xe4, + 0xa0, 0x80, 0x71, 0xc6, 0xff, 0xff, 0xf6, 0xa9, + 0x40, 0x3c, 0x91, 0xf2, 0x82, 0x0, 0x26, 0xaa, + 0x30, 0x80, 0x7f, 0xf8, 0x4, 0x3, 0xf8, 0x9a, + 0xe9, 0x88, 0x0, 0x29, 0x16, 0x80, 0x3, 0x9c, + 0xee, 0xff, 0xe9, 0xdb, 0x90, 0x7, 0xff, 0x15, + 0x27, 0x9d, 0x5a, 0x72, 0x90, 0x2, 0x11, 0xff, + 0xe1, 0x1, 0x22, 0x71, 0x0, 0x8f, 0xf9, 0xbc, + 0x3, 0xfe, 0x24, 0x77, 0xe4, 0x23, 0x8a, 0x96, + 0x20, 0xf, 0xfe, 0x3a, 0x4d, 0x56, 0xba, 0x50, + 0xf, 0xfe, 0x5b, 0x6c, 0x46, 0x9d, 0x60, 0xf, + 0xff, 0xc8, 0x91, 0x7f, 0xf2, 0x84, 0x3, 0x9, + 0x91, 0x7e, 0x11, 0x0, 0x7f, 0xf3, 0x45, 0xe7, + 0x77, 0xff, 0x91, 0x8, 0x1, 0xcb, 0x3b, 0xbf, + 0x52, 0x0, 0x7f, 0xfd, 0x4, 0x3, 0xff, 0x9c, + 0x2d, 0x7f, 0xff, 0xfc, 0x2d, 0x94, 0x0, 0xfe, + 0x16, 0xbf, 0xff, 0xa9, 0x40, 0x3f, 0xfb, 0x87, + 0x1f, 0x28, 0x1, 0xff, 0xed, 0x14, 0x8c, 0xc3, + 0x90, 0x0, 0x9a, 0xe5, 0x40, 0x3f, 0xfc, 0xa4, + 0xd3, 0x96, 0xe6, 0x0, 0x15, 0xac, 0x94, 0x30, + 0xf, 0xff, 0x8, 0xa3, 0xdf, 0x6c, 0xb1, 0x0, + 0x5, 0x27, 0x29, 0x44, 0x3, 0xff, 0xc0, 0x6d, + 0x39, 0xd7, 0x8, 0x20, 0x1, 0x37, 0xac, 0xb6, + 0x20, 0xf, 0xff, 0x11, 0x2e, 0xb9, 0x80, 0x42, + 0x91, 0x9f, 0x90, 0xa4, 0x1, 0xff, 0xe5, 0x26, + 0xbd, 0x97, 0x9d, 0xeb, 0x73, 0x10, 0x0, 0x91, + 0x7e, 0x32, 0x60, 0xf, 0xfe, 0xf1, 0xb4, 0x31, + 0x0, 0x78, 0x5f, 0xb7, 0x7e, 0xc8, 0x30, 0xc, + 0xbe, 0xa0, 0x1f, 0xfe, 0x21, 0x7a, 0x41, 0x0, + 0x8, 0xe2, 0x34, 0x68, 0xba, 0x61, 0x0, 0xff, + 0xf, 0x80, 0x70, 0x80, 0x7f, 0xf4, 0x45, 0xaf, + 0xbf, 0xdd, 0xdb, 0x72, 0xe5, 0xd0, 0x40, 0x31, + 0xcf, 0x7f, 0xf6, 0x39, 0x0, 0x42, 0x4c, 0x1, + 0xff, 0xe5, 0x3a, 0x71, 0x0, 0xe1, 0x23, 0x58, + 0xa9, 0x30, 0xc, 0x93, 0xff, 0xba, 0x50, 0x3, + 0xff, 0xb2, 0x73, 0xdf, 0xfd, 0xdb, 0x94, 0xe8, + 0x20, 0x10, + + /* U+95F4 "间" */ + 0x0, 0xe2, 0x58, 0xbb, 0x4a, 0x8, 0x7, 0xff, + 0xb5, 0x2e, 0x1d, 0x10, 0xd7, 0xae, 0x60, 0x1e, + 0x5a, 0xff, 0xff, 0xed, 0xd2, 0x80, 0x79, 0x27, + 0xe5, 0x4, 0x0, 0x71, 0xd2, 0x60, 0x1f, 0xfe, + 0xb2, 0x6a, 0xb5, 0x10, 0x1, 0x34, 0x28, 0x80, + 0x16, 0xfb, 0xbf, 0xfa, 0x94, 0xa0, 0x1f, 0xfc, + 0x51, 0x5b, 0xb3, 0xb5, 0x6d, 0xa8, 0x80, 0x42, + 0x3f, 0xfd, 0x63, 0x0, 0xff, 0x85, 0x1d, 0xf9, + 0x4d, 0x62, 0x54, 0x80, 0x3f, 0xfd, 0x5, 0xb3, + 0x11, 0xb9, 0xc0, 0x3e, 0x12, 0x2f, 0xfe, 0x80, + 0x80, 0x7f, 0xf5, 0xca, 0x7f, 0x77, 0xff, 0x9d, + 0x90, 0x60, 0x1f, 0xfd, 0xd2, 0x45, 0x5f, 0xfe, + 0x12, 0x10, 0x7, 0xff, 0x8c, 0xaa, 0x6a, 0xbf, + 0xf8, 0x52, 0xa4, 0x1, 0xff, 0xff, 0x0, 0xff, + 0xec, 0x94, 0xfe, 0x67, 0xff, 0xb, 0xd8, 0x80, + 0x3f, 0xfc, 0x62, 0x46, 0x7f, 0xfc, 0x22, 0x10, + 0xf, 0xff, 0x19, 0x46, 0xff, 0xff, 0xf0, 0xb1, + 0xc8, 0x3, 0xff, 0xe6, 0x20, 0x1f, 0xfe, 0x5f, + 0x10, 0xf, 0xfe, 0x10, 0x80, 0x7f, 0xf9, 0x9, + 0xf3, 0xff, 0xff, 0x85, 0x8e, 0x40, 0x1f, 0xfd, + 0xde, 0x74, 0x4f, 0xfe, 0x7f, 0x88, 0x7, 0xff, + 0x58, 0x9a, 0xae, 0xff, 0xf9, 0xd4, 0xc4, 0x1, + 0xff, 0xfc, 0x13, 0x0, 0xff, 0xf6, 0x8b, 0xe7, + 0xfe, 0xa5, 0x0, 0xc4, 0x46, 0x0, 0xff, 0xf3, + 0xa, 0xd9, 0x80, 0x61, 0x23, 0x58, 0x99, 0x18, + 0x0, + + /* U+9664 "除" */ + 0x0, 0xff, 0xe2, 0x88, 0xc0, 0x1f, 0xfc, 0x63, + 0x8d, 0xff, 0xec, 0x72, 0x0, 0xff, 0xe5, 0x2d, + 0xff, 0xff, 0xf0, 0x7b, 0xb6, 0x4a, 0x90, 0x7, + 0xfc, 0x71, 0xce, 0x40, 0x1c, 0x71, 0xf2, 0x80, + 0x1f, 0xfd, 0xa1, 0x35, 0x23, 0x0, 0xfc, 0x2b, + 0x5a, 0xe4, 0x0, 0x38, 0xb9, 0x41, 0x2, 0x6a, + 0xb7, 0x20, 0xf, 0xfe, 0x50, 0xb5, 0xff, 0xf5, + 0x20, 0x6, 0x3b, 0x51, 0x0, 0xe1, 0x38, 0xda, + 0x51, 0x0, 0x24, 0xf3, 0xa3, 0x55, 0x18, 0x80, + 0x52, 0x32, 0xd8, 0x80, 0x3f, 0xf9, 0xc9, 0xe8, + 0x1, 0x1d, 0xa9, 0x0, 0x42, 0x93, 0x98, 0x73, + 0x0, 0x13, 0x5d, 0x31, 0x0, 0x42, 0x93, 0xf0, + 0x82, 0x2, 0x93, 0xb9, 0x8, 0x20, 0x1f, 0xfc, + 0x94, 0xd4, 0x0, 0x8e, 0xd8, 0x84, 0xde, 0xfe, + 0xd8, 0x80, 0x4, 0xb5, 0x92, 0x82, 0x1, 0xf8, + 0x9e, 0xf2, 0x50, 0x40, 0x6, 0xf7, 0xf7, 0x8, + 0x40, 0x1f, 0xfc, 0x44, 0xd7, 0x10, 0x1, 0xd1, + 0xbd, 0xfe, 0x42, 0x8, 0x0, 0x56, 0x7e, 0x94, + 0x40, 0x3f, 0xf8, 0x44, 0xd5, 0xb2, 0x82, 0x0, + 0x14, 0x7b, 0xdb, 0x51, 0x0, 0xff, 0xe0, 0x1e, + 0xb8, 0x80, 0x12, 0x9d, 0x17, 0x8, 0x0, 0x4b, + 0xe, 0xaa, 0x9d, 0xff, 0xff, 0xe3, 0xf6, 0x4a, + 0xa4, 0x41, 0x4, 0x9, 0xbd, 0x44, 0x3, 0xfe, + 0x16, 0x31, 0x0, 0x9c, 0x4c, 0xd, 0xfb, 0x37, + 0x54, 0xf8, 0x67, 0xfc, 0x42, 0x1, 0xc2, 0x46, + 0x7f, 0x97, 0x51, 0xef, 0xb9, 0x92, 0x80, 0x1f, + 0xfc, 0x11, 0x5b, 0xb2, 0x88, 0x1c, 0x7c, 0x10, + 0x11, 0x90, 0x4, 0x91, 0x99, 0xfb, 0xe4, 0xc0, + 0x32, 0x4e, 0x67, 0xeb, 0x73, 0x0, 0x84, 0x40, + 0x1f, 0xfc, 0x51, 0x4b, 0x84, 0x0, 0x13, 0xc2, + 0x80, 0x7f, 0xfc, 0x5, 0xf4, 0xc0, 0x24, 0xc4, + 0x26, 0xbd, 0xdf, 0xfe, 0x6, 0x49, 0x80, 0x65, + 0xad, 0xdf, 0xfe, 0x14, 0xa0, 0x7, 0xff, 0x20, + 0x55, 0x42, 0x0, 0x15, 0x26, 0x16, 0x22, 0xff, + 0xe0, 0x8, 0x80, 0x3c, 0x24, 0x5f, 0xfc, 0x23, + 0x10, 0xf, 0xfe, 0x4b, 0x18, 0x80, 0x4e, 0xa, + 0xfb, 0xff, 0xff, 0xc0, 0xc7, 0x20, 0xc, 0xb5, + 0xff, 0xff, 0xc2, 0xa5, 0x0, 0xff, 0xe1, 0xa, + 0xcd, 0xdb, 0x36, 0xd4, 0x2, 0x13, 0x51, 0x0, + 0xb, 0x56, 0xe5, 0x42, 0x90, 0x4, 0x3e, 0x20, + 0x1c, 0x20, 0x1, 0x36, 0x9c, 0xda, 0x51, 0x0, + 0xff, 0xe3, 0x8b, 0xf3, 0x21, 0x90, 0x80, 0x9b, + 0xd4, 0x18, 0x0, 0xe6, 0xd4, 0x8d, 0x4, 0x44, + 0x1, 0xff, 0xc2, 0x17, 0xc7, 0x32, 0x5b, 0xb2, + 0x8, 0x7, 0xff, 0x18, 0x9b, 0x37, 0x6e, 0xfe, + 0xc8, 0x40, 0x0, 0xac, 0xb9, 0x0, 0xa, 0x6d, + 0x0, 0x3f, 0xf8, 0x89, 0x76, 0x41, 0x1, 0x5a, + 0x84, 0x10, 0xf, 0xfe, 0x28, 0x88, 0x8a, 0x10, + 0xe, 0x15, 0xbb, 0x28, 0x4, 0x90, 0xc4, 0x1, + 0xff, 0xc6, 0x15, 0xa8, 0x40, 0x0, 0xb4, 0xc8, + 0x80, 0x3f, 0xf9, 0xa4, 0xfb, 0x4a, 0x20, 0x3, + 0x89, 0x51, 0x0, 0xff, 0xe4, 0x8b, 0x43, 0x8, + 0x0, 0x9e, 0x14, 0x40, 0x3f, 0xf9, 0x44, 0x98, + 0x40, 0x11, 0xcf, 0x39, 0x0, 0x4, 0x7c, 0xde, + 0x20, 0x18, 0xc0, 0x3f, 0x8e, 0x20, 0x60, 0x12, + 0x7a, 0x0, 0x7f, 0xf2, 0x89, 0xaf, 0x2a, 0x6f, + 0x58, 0x80, 0x24, 0x8f, 0xee, 0xd6, 0xe4, 0x1, + 0x1f, 0x30, 0x7, 0xf0, 0xb7, 0xdd, 0x6f, 0x52, + 0x80, 0x7f, 0xf3, 0x49, 0x59, 0x4, 0x3, 0x92, + 0x98, 0x84, 0x71, 0x1a, 0x34, 0xf3, 0x90, 0x7, + 0xfc, 0x68, 0xa4, 0x1, 0xe0, + + /* U+9875 "页" */ + 0x0, 0xc2, 0xd7, 0xff, 0xff, 0xef, 0xc7, 0x20, + 0xf, 0xff, 0xe8, 0xb5, 0x77, 0x7f, 0xf2, 0xb6, + 0x50, 0x3, 0x89, 0xaf, 0xbb, 0xff, 0x9d, 0xae, + 0x40, 0x1e, 0x11, 0xff, 0xe5, 0xb6, 0x20, 0x6, + 0x3b, 0x84, 0x11, 0xff, 0xe7, 0x80, 0x7f, 0xf0, + 0x84, 0x7f, 0xf8, 0x8b, 0xc8, 0x1, 0x92, 0x90, + 0x4, 0x7f, 0xf9, 0x40, 0x1f, 0xfc, 0x73, 0x8f, + 0xee, 0xff, 0xe1, 0x52, 0x88, 0x6, 0x49, 0xde, + 0xef, 0xfe, 0x55, 0x30, 0x80, 0x7f, 0xff, 0xc0, + 0x3f, 0xf8, 0xcb, 0x5f, 0xff, 0xfd, 0x5b, 0x60, + 0xf, 0xff, 0x11, 0xc6, 0x67, 0x42, 0x0, 0x7f, + 0xfc, 0x1c, 0x8c, 0xf8, 0x84, 0x3, 0xff, 0xfe, + 0x1, 0xff, 0xff, 0x0, 0xff, 0xf2, 0x8, 0x7, + 0xc2, 0x1, 0xff, 0xef, 0x22, 0x38, 0x6, 0x2d, + 0x60, 0xf, 0xff, 0x70, 0xa6, 0x10, 0x6, 0x62, + 0x20, 0x7, 0xff, 0xb0, 0x56, 0xe1, 0x0, 0x32, + 0x72, 0xa, 0xcd, 0xd4, 0x29, 0x88, 0x6, 0x71, + 0x22, 0xe1, 0x30, 0xf, 0xfe, 0x31, 0xcf, 0x7f, + 0xea, 0x50, 0xc, 0x26, 0xf7, 0xf4, 0xa2, 0x0, + 0x14, 0x99, 0x22, 0xdd, 0x99, 0x15, 0xeb, 0x3b, + 0x99, 0x2c, 0xf5, 0xbb, 0xd4, 0xa2, 0x1, 0xff, + 0xcc, 0x13, 0x57, 0xac, 0xfc, 0x84, 0x10, 0x0, + 0x9c, 0x6d, 0x31, 0xa, 0x57, 0x6d, 0x42, 0x90, + 0x80, 0x9b, 0x4d, 0xef, 0x65, 0x3a, 0x8, 0x7, + 0xff, 0x10, 0x48, 0xd5, 0xa2, 0x6f, 0x7b, 0x99, + 0x50, 0xa6, 0x20, 0x2, 0x47, 0xbf, 0xc7, 0x31, + 0x0, 0xf1, 0x2b, 0xd6, 0xf6, 0xd4, 0x29, 0x0, + 0x4, 0xd6, 0x2f, 0xb9, 0x70, 0xa4, 0x1, 0xe1, + 0x5a, 0xef, 0xed, 0xca, 0x97, 0x64, 0x21, 0x0, + 0x9, 0xab, 0xce, 0x76, 0xdc, 0x20, 0x80, 0x7f, + 0xf1, 0x9, 0x5e, 0xb7, 0xb2, 0x58, 0xc4, 0x0, + 0x28, 0xf5, 0x94, 0x80, 0x18, 0x56, 0xec, 0xa2, + 0x4, 0x68, 0xcf, 0x15, 0x7b, 0xfd, 0x95, 0xc, + 0x62, 0x1, 0xff, 0xce, 0x13, 0x69, 0xcf, 0xc9, + 0x52, 0x22, 0xdd, 0x90, 0x3, 0xc2, 0xb5, 0xdf, + 0xb9, 0x73, 0xe, 0xa8, 0x40, 0x1f, 0xfd, 0xb1, + 0x36, 0xad, 0xd5, 0x28, 0x80, 0x0, + + /* U+9879 "项" */ + 0x0, 0xff, 0xff, 0x80, 0x7f, 0xf2, 0xc5, 0xf3, + 0xff, 0xff, 0xb5, 0xd2, 0x60, 0x18, 0x4d, 0x57, + 0xff, 0x92, 0x8a, 0xe, 0x1, 0xff, 0xe1, 0x2b, + 0x8a, 0xaf, 0xfe, 0x44, 0x9a, 0xdf, 0xff, 0xff, + 0x3, 0x5c, 0x80, 0x39, 0x27, 0xbf, 0xff, 0xf8, + 0x7d, 0x26, 0x1, 0x87, 0x91, 0x57, 0xc6, 0x20, + 0x1c, 0x46, 0xab, 0xc8, 0x46, 0x1, 0xff, 0xc0, + 0x2a, 0x52, 0x0, 0x89, 0xe1, 0x84, 0x3, 0xff, + 0x94, 0x4d, 0x35, 0x5e, 0x84, 0x0, 0xc2, 0xbf, + 0x55, 0xd2, 0xa2, 0xb, 0x5d, 0xdf, 0xbf, 0x5c, + 0x80, 0x31, 0x3e, 0xf7, 0x7f, 0xf0, 0x71, 0xc8, + 0x3, 0xff, 0xb2, 0x23, 0xf8, 0x3, 0xfc, 0x23, + 0xff, 0xc3, 0x0, 0xff, 0xef, 0x94, 0x6f, 0xff, + 0xff, 0x1b, 0xa0, 0xc0, 0x3f, 0xfc, 0x82, 0x1, + 0xf2, 0x4e, 0xee, 0xb7, 0x20, 0xe, 0x17, 0x0, + 0xff, 0xf6, 0x9, 0x91, 0x66, 0xf1, 0x0, 0xff, + 0xff, 0x80, 0x7f, 0xff, 0xc0, 0x3f, 0xff, 0xe0, + 0x1f, 0xfd, 0x13, 0xb6, 0x89, 0xbd, 0xea, 0x51, + 0x0, 0xff, 0xe0, 0x89, 0x88, 0x7, 0x78, 0x80, + 0x7f, 0xf3, 0x88, 0xd1, 0x9f, 0x9c, 0x3, 0xa, + 0x3c, 0xbb, 0x21, 0xb, 0x91, 0x80, 0x7f, 0xf0, + 0x4b, 0x98, 0x3, 0x31, 0x10, 0x3, 0xff, 0x92, + 0x4d, 0x7d, 0xfb, 0x97, 0x30, 0xa4, 0x1, 0xc2, + 0x48, 0xd1, 0x59, 0xda, 0xe4, 0x1, 0xff, 0xc0, + 0x15, 0x42, 0x0, 0x84, 0xd8, 0x3, 0xff, 0x94, + 0x44, 0x11, 0x0, 0x71, 0x22, 0xbc, 0xde, 0xf7, + 0x36, 0xe5, 0xd4, 0xc4, 0x2, 0x48, 0xcc, 0xde, + 0xc4, 0x0, 0x48, 0x81, 0x80, 0x42, 0xd6, 0x60, + 0x46, 0x61, 0x13, 0xce, 0xee, 0xf6, 0x20, 0xf, + 0xcb, 0xd3, 0x2b, 0xce, 0xfd, 0xba, 0x86, 0x42, + 0x10, 0xf, 0xf8, 0x48, 0xcf, 0x84, 0x9a, 0xe9, + 0x84, 0x0, 0x2b, 0x72, 0xf, 0x99, 0xbf, 0x21, + 0xc0, 0x8b, 0x8, 0x7, 0xf0, 0xa3, 0x31, 0xc, + 0x40, 0x3f, 0xf9, 0x62, 0x8f, 0x5b, 0xa9, 0x41, + 0x0, 0x13, 0xed, 0xa8, 0x92, 0x52, 0x10, 0x9, + 0xb5, 0x6f, 0x5b, 0xa0, 0x80, 0x7f, 0xf4, 0xc4, + 0x91, 0x9e, 0x73, 0xb9, 0x70, 0xa4, 0x0, 0x14, + 0x8c, 0xc4, 0x18, 0x80, 0x4, 0xda, 0xb7, 0x54, + 0xe6, 0x20, 0x29, 0x17, 0xf6, 0xe8, 0x20, 0x1f, + 0xfc, 0xd2, 0x7d, 0xd5, 0xcc, 0x31, 0x88, 0x0, + 0x91, 0xeb, 0x7a, 0xdc, 0xc4, 0x3, 0xfc, 0x4b, + 0x19, 0xf6, 0xc6, 0x0, 0x14, 0x88, 0x31, 0x0, + 0x7f, 0xf3, 0x9, 0xf6, 0x99, 0x15, 0xe6, 0xf7, + 0xb6, 0xe1, 0x48, 0x3, 0xff, 0x8e, 0x29, 0x39, + 0xb2, 0xcf, 0x7a, 0xe4, 0x0, + + /* U+9A71 "驱" */ + 0x0, 0xc2, 0x68, 0x9f, 0xfc, 0x82, 0x10, 0xf, + 0xff, 0x18, 0xbc, 0x5d, 0xff, 0xf1, 0xe6, 0x88, + 0x2, 0x16, 0xbf, 0xff, 0xfe, 0xa6, 0xc1, 0x80, + 0x78, 0x4b, 0x19, 0xbf, 0xf8, 0x2a, 0x62, 0x1, + 0xbc, 0x40, 0x39, 0xc0, 0x3f, 0xfa, 0x86, 0x1, + 0xfc, 0x8f, 0x33, 0xff, 0xc1, 0x84, 0x30, 0x8, + 0x40, 0xc0, 0x3f, 0xcb, 0x5d, 0xdf, 0xfc, 0xef, + 0x83, 0x0, 0xfe, 0x36, 0x88, 0x3b, 0x18, 0x80, + 0x70, 0x81, 0x80, 0x4e, 0x20, 0x1f, 0xfc, 0x1, + 0x1f, 0xfe, 0x39, 0x23, 0x3a, 0x90, 0x8, 0x80, + 0x3f, 0xc2, 0x94, 0xee, 0x8b, 0x43, 0x0, 0xe7, + 0x11, 0x0, 0x63, 0x10, 0xf, 0xf8, 0x44, 0x6d, + 0x5b, 0x90, 0x60, 0x1f, 0xcb, 0x35, 0x13, 0x7d, + 0x26, 0x1, 0xff, 0x18, 0x8, 0x4, 0x22, 0x30, + 0xe, 0x13, 0x0, 0xc2, 0x20, 0xf, 0xfe, 0x9, + 0xad, 0x29, 0x1b, 0xec, 0xa0, 0x80, 0x61, 0x5e, + 0x50, 0x8, 0xea, 0x86, 0x1, 0xff, 0xf, 0x80, + 0x67, 0x1, 0x0, 0xe3, 0x10, 0x8, 0x88, 0xe0, + 0x1f, 0xfc, 0x1, 0x26, 0xd9, 0x40, 0x0, 0xb5, + 0x51, 0x44, 0x5, 0xf9, 0x0, 0x24, 0xa6, 0x20, + 0xf, 0xfe, 0x8, 0x98, 0x4, 0x24, 0x1, 0xc4, + 0x2e, 0x1, 0xf, 0x88, 0x7, 0xff, 0xc, 0x5a, + 0xa8, 0xa2, 0x2, 0x95, 0xb1, 0xa, 0x40, 0x9, + 0x79, 0x84, 0x3, 0xff, 0x82, 0xc6, 0x20, 0x1, + 0x27, 0x0, 0xe6, 0xe2, 0x0, 0x98, 0x88, 0x1, + 0xff, 0xc5, 0x15, 0xbb, 0x28, 0x80, 0xd, 0xd8, + 0xc0, 0x2, 0xdc, 0xa0, 0x1f, 0xfc, 0x21, 0x36, + 0x0, 0x8b, 0xc4, 0x3, 0x9, 0x10, 0x40, 0x2, + 0x62, 0x30, 0x7, 0xff, 0x18, 0x56, 0xe9, 0x84, + 0x3, 0x89, 0xa9, 0x0, 0x3f, 0xf8, 0x65, 0xc4, + 0x1, 0x1c, 0x6f, 0xfe, 0xe9, 0x40, 0x8, 0x5a, + 0xfb, 0x94, 0xa0, 0x1f, 0xfc, 0x61, 0x70, 0xf, + 0x89, 0x10, 0x40, 0x1f, 0xfc, 0x4f, 0x54, 0x4f, + 0xfe, 0x19, 0x88, 0x7, 0xff, 0x2c, 0xa3, 0x98, + 0x40, 0x3c, 0x71, 0x2c, 0x20, 0x1f, 0xfc, 0x13, + 0x7b, 0xbf, 0xfe, 0x24, 0x38, 0x7, 0xff, 0x24, + 0x9a, 0x5c, 0x80, 0x2, 0xb3, 0x8, 0x1, 0x24, + 0x52, 0x88, 0x7, 0xff, 0x34, 0x48, 0x40, 0x6, + 0x1, 0xff, 0xc7, 0x26, 0xe9, 0x40, 0x9, 0x22, + 0xd9, 0xe6, 0xc, 0x0, 0x29, 0x70, 0x80, 0x1f, + 0xf0, 0x91, 0xa3, 0x3c, 0x4d, 0xe6, 0xf7, 0xf6, + 0x41, 0x88, 0x7, 0x18, 0x80, 0x7f, 0xc7, 0x1f, + 0x26, 0x1, 0x1c, 0x4b, 0x8, 0x0, 0x9f, 0xd8, + 0x40, 0x2, 0xd0, 0xe4, 0x1, 0xc4, 0xfb, 0xfd, + 0xb9, 0x73, 0xe, 0xc8, 0x67, 0x22, 0xb6, 0x1, + 0x88, 0x4, 0x20, 0xe0, 0x1f, 0xc6, 0xfe, 0xe4, + 0x1, 0x24, 0xf3, 0x90, 0x7, 0x8e, 0x20, 0x80, + 0x1, 0x0, 0x8, 0x7, 0x11, 0xa1, 0x1a, 0x33, + 0xc5, 0x5e, 0xf7, 0xf6, 0xdd, 0x42, 0x88, 0x9c, + 0x2, 0x31, 0x10, 0x7, 0xf1, 0xbe, 0xdb, 0x22, + 0xd5, 0x18, 0x80, 0x3f, 0x85, 0xa7, 0x31, 0xf8, + 0xe6, 0x1, 0xe4, 0x9d, 0xcb, 0x98, 0x75, 0x42, + 0x10, 0xf, 0x9b, 0x88, 0x2, 0x6e, 0x30, 0xf, + 0xe1, 0x1, 0x48, 0xab, 0x51, 0x0, 0xff, 0xe0, + 0x91, 0x98, 0x40, 0x3f, 0xf9, 0xe7, 0x88, 0x20, + 0x1, 0x35, 0x10, 0xf, 0xcb, 0x5f, 0xf7, 0x75, + 0xff, 0xff, 0xca, 0xa5, 0x0, 0xff, 0x89, 0xef, + 0x75, 0x99, 0xdb, 0xa7, 0x20, 0x0, 0xbe, 0x18, + 0x6, 0x70, 0xf, 0xff, 0x19, 0x21, 0x81, 0x19, + 0xf1, 0x8, 0x89, 0x23, 0x61, 0x0, 0x21, 0x6b, + 0xff, 0xff, 0xeb, 0x52, 0x80, 0x7f, 0xf0, 0xe, + 0x37, 0xff, 0xf7, 0x6d, 0xb9, 0x88, 0x7, 0xff, + 0x84, + + /* U+F053 "" */ + 0x0, 0xff, 0xea, 0x89, 0x10, 0x3, 0xff, 0xb4, + 0x2b, 0x5b, 0xdb, 0xae, 0xb6, 0x20, 0xf, 0xfe, + 0x98, 0xad, 0x65, 0x29, 0x0, 0x42, 0x93, 0xf0, + 0x60, 0x1f, 0xfc, 0xe1, 0x5a, 0xca, 0x52, 0x0, + 0xfe, 0x1f, 0x10, 0xf, 0xfe, 0x58, 0xad, 0x65, + 0x29, 0x0, 0x7f, 0x13, 0x5e, 0xb9, 0x0, 0x7f, + 0xf2, 0x5, 0x6b, 0x29, 0x48, 0x3, 0xf8, 0x9a, + 0xf2, 0x50, 0x40, 0x3f, 0xf8, 0xe2, 0xb5, 0x94, + 0xa4, 0x1, 0xfc, 0x4d, 0x79, 0x28, 0x20, 0x1f, + 0xfc, 0x71, 0x5a, 0xca, 0x52, 0x0, 0xfe, 0x26, + 0xbc, 0x94, 0x10, 0xf, 0xfe, 0x38, 0xad, 0x65, + 0x29, 0x0, 0x7f, 0x13, 0x56, 0x4a, 0x8, 0x7, + 0xff, 0x1c, 0x56, 0xb2, 0x94, 0x80, 0x3f, 0x89, + 0xab, 0x25, 0x44, 0x3, 0xff, 0x90, 0x71, 0x94, + 0xa4, 0x1, 0xfc, 0x4b, 0x59, 0x2a, 0x20, 0x1f, + 0xff, 0x83, 0x8c, 0xa5, 0x20, 0xf, 0xe2, 0x5a, + 0xc9, 0x51, 0x0, 0xff, 0xe6, 0x8a, 0xd6, 0x52, + 0x90, 0x7, 0xf1, 0x35, 0x64, 0xa8, 0x80, 0x7f, + 0xf3, 0x45, 0x6b, 0x29, 0x48, 0x3, 0xf8, 0x9a, + 0xb2, 0x50, 0x40, 0x3f, 0xf9, 0xa2, 0xb5, 0x94, + 0xa4, 0x1, 0xfc, 0x4d, 0x79, 0x28, 0x20, 0x1f, + 0xfc, 0xd1, 0x5a, 0xca, 0x52, 0x0, 0xfe, 0x26, + 0xbc, 0x94, 0x10, 0xf, 0xfe, 0x68, 0xad, 0x65, + 0x29, 0x0, 0x7f, 0x13, 0x5e, 0x4a, 0x8, 0x7, + 0xff, 0x34, 0x56, 0xb2, 0x94, 0x80, 0x3f, 0x89, + 0xaf, 0x5c, 0x80, 0x3f, 0xf9, 0xc2, 0xb5, 0x94, + 0xa4, 0x1, 0xfc, 0x3e, 0x20, 0x1f, 0xfd, 0x11, + 0x5a, 0xca, 0x52, 0x0, 0x85, 0x27, 0xe0, 0xc0, + 0x3f, 0xfa, 0x82, 0xb5, 0xbd, 0xba, 0xeb, 0x62, + 0x0, 0xe0, + + /* U+F054 "" */ + 0x0, 0xfc, 0x24, 0x41, 0x0, 0xff, 0xed, 0x13, + 0xdf, 0xee, 0xbb, 0x65, 0x44, 0x3, 0xff, 0xa8, + 0x93, 0x90, 0x82, 0x1, 0x13, 0x56, 0x4a, 0x88, + 0x7, 0xff, 0x45, 0xc4, 0xc0, 0x3f, 0x89, 0xab, + 0x25, 0x44, 0x3, 0xff, 0x9c, 0x71, 0x94, 0xa4, + 0x1, 0xfc, 0x4d, 0x59, 0x4a, 0x20, 0x1f, 0xfc, + 0xd1, 0x5a, 0xca, 0x52, 0x0, 0xfe, 0x25, 0xac, + 0xa5, 0x10, 0xf, 0xfe, 0x68, 0xad, 0x65, 0x29, + 0x0, 0x7f, 0x12, 0xd6, 0x52, 0x88, 0x7, 0xff, + 0x34, 0x56, 0xb2, 0x94, 0x80, 0x3f, 0x89, 0x6b, + 0x29, 0x44, 0x3, 0xff, 0x9a, 0x2b, 0x59, 0x4a, + 0x40, 0x1f, 0xc4, 0xb5, 0x94, 0xa2, 0x1, 0xff, + 0xcd, 0x15, 0xac, 0xa5, 0x20, 0xf, 0xe2, 0x5a, + 0xca, 0x51, 0x0, 0xff, 0xe6, 0x8a, 0xd6, 0x52, + 0x90, 0x7, 0xf1, 0x2d, 0x64, 0x18, 0x7, 0xff, + 0xe0, 0x56, 0xb2, 0x94, 0x80, 0x3f, 0x89, 0x6b, + 0x20, 0xc0, 0x3f, 0xf9, 0x2, 0xb5, 0x94, 0xa4, + 0x1, 0xfc, 0x4b, 0x59, 0x4a, 0x20, 0x1f, 0xfc, + 0x71, 0x5a, 0xca, 0x52, 0x0, 0xfe, 0x25, 0xac, + 0xa5, 0x10, 0xf, 0xfe, 0x38, 0xad, 0x65, 0x29, + 0x0, 0x7f, 0x12, 0xd6, 0x52, 0x88, 0x7, 0xff, + 0x1c, 0x56, 0xb2, 0x94, 0x80, 0x3f, 0x89, 0x6b, + 0x29, 0x44, 0x3, 0xff, 0x8e, 0x2b, 0x59, 0x4a, + 0x40, 0x1f, 0xc4, 0xb5, 0x94, 0xa2, 0x1, 0xff, + 0xc8, 0x38, 0xca, 0x52, 0x0, 0xfe, 0x26, 0xac, + 0xa5, 0x10, 0xf, 0xfe, 0x5b, 0x89, 0x80, 0x7f, + 0x13, 0x56, 0x4a, 0x88, 0x7, 0xff, 0x39, 0x27, + 0x21, 0x4, 0x2, 0x26, 0xac, 0x95, 0x10, 0xf, + 0xfe, 0x99, 0x3d, 0xfe, 0xeb, 0xb6, 0x54, 0x40, + 0x3f, 0xfa, 0x20, + + /* U+F077 "" */ + 0x0, 0xff, 0xea, 0x9, 0x10, 0x40, 0x3f, 0xfd, + 0xe4, 0xd5, 0xfb, 0xae, 0xd9, 0x41, 0x0, 0xff, + 0xf4, 0x13, 0x56, 0x4a, 0x88, 0x4, 0x4d, 0x79, + 0x28, 0x20, 0x1f, 0xfe, 0x22, 0x6a, 0xc9, 0x51, + 0x0, 0xfe, 0x26, 0xbc, 0x94, 0x10, 0xf, 0xfe, + 0xe1, 0x35, 0x64, 0xa8, 0x80, 0x7f, 0xf0, 0xc9, + 0xaf, 0x25, 0x4, 0x3, 0xff, 0xac, 0x4d, 0x59, + 0x2a, 0x20, 0x1f, 0xc2, 0x42, 0x1, 0xfc, 0x4d, + 0x79, 0x28, 0x20, 0x1f, 0xfd, 0x2, 0x6a, 0xc9, + 0x51, 0x0, 0xfe, 0x26, 0xbf, 0xdc, 0xa5, 0x10, + 0xf, 0xe2, 0x6b, 0xc9, 0x41, 0x0, 0xff, 0xe5, + 0x13, 0x56, 0x4a, 0x88, 0x7, 0xf1, 0x35, 0xe4, + 0xa0, 0x81, 0x2d, 0x65, 0x28, 0x80, 0x7f, 0x13, + 0x5e, 0x4a, 0x8, 0x7, 0xff, 0x10, 0x9a, 0xb2, + 0x54, 0x40, 0x3f, 0x89, 0xaf, 0x25, 0x4, 0x3, + 0xe2, 0x5a, 0xca, 0x51, 0x0, 0xfe, 0x26, 0xbc, + 0x94, 0x10, 0xf, 0xf1, 0x35, 0x64, 0xa8, 0x80, + 0x7f, 0x13, 0x5e, 0x4a, 0x8, 0x7, 0xff, 0x4, + 0x96, 0xb2, 0x94, 0x40, 0x3f, 0x89, 0xaf, 0x25, + 0x4, 0x3, 0x8e, 0x72, 0x54, 0x40, 0x3f, 0x89, + 0xaf, 0x25, 0x4, 0x3, 0xff, 0x8e, 0x4b, 0x59, + 0x4a, 0x20, 0x1f, 0xc4, 0xd7, 0xae, 0x40, 0x13, + 0x80, 0x7f, 0xc4, 0xd7, 0x92, 0x82, 0x1, 0xff, + 0xcd, 0x25, 0xac, 0xa5, 0x10, 0xf, 0xe1, 0xf1, + 0x0, 0x92, 0x72, 0x10, 0x40, 0x22, 0x6b, 0xc9, + 0x41, 0x0, 0xff, 0xe9, 0x92, 0xd6, 0x52, 0x88, + 0x4, 0x4b, 0x59, 0x6, 0x1, 0xc4, 0xf7, 0xfb, + 0xae, 0xd9, 0x41, 0x0, 0xff, 0xec, 0x92, 0xd7, + 0x6e, 0xbb, 0x69, 0x44, 0x0, + + /* U+F078 "" */ + 0x0, 0xfc, 0x24, 0x41, 0x0, 0xff, 0xf0, 0x89, + 0x8, 0x7, 0xfc, 0x4f, 0x7f, 0xba, 0xed, 0x94, + 0x10, 0xf, 0xfe, 0xc9, 0x2d, 0x77, 0x37, 0xb6, + 0x94, 0x40, 0x39, 0x27, 0x21, 0x4, 0x2, 0x26, + 0xbc, 0x94, 0x10, 0xf, 0xfe, 0x99, 0x2d, 0x65, + 0x28, 0x80, 0x44, 0xb5, 0x90, 0x60, 0x13, 0x80, + 0x7f, 0xc4, 0xd7, 0x92, 0x82, 0x1, 0xff, 0xcd, + 0x25, 0xac, 0xa5, 0x10, 0xf, 0xe1, 0xf1, 0x0, + 0x8e, 0x72, 0x54, 0x40, 0x3f, 0x89, 0xaf, 0x25, + 0x4, 0x3, 0xff, 0x8e, 0x4b, 0x59, 0x4a, 0x20, + 0x1f, 0xc4, 0xd7, 0xae, 0x40, 0x1c, 0x4d, 0x59, + 0x2a, 0x20, 0x1f, 0xc4, 0xd7, 0x92, 0x82, 0x1, + 0xff, 0xc1, 0x25, 0xac, 0xa5, 0x10, 0xf, 0xe2, + 0x6b, 0xc9, 0x41, 0x0, 0xff, 0x13, 0x56, 0x4a, + 0x88, 0x7, 0xf1, 0x35, 0xe4, 0xa0, 0x80, 0x7c, + 0x4b, 0x59, 0x4a, 0x20, 0x1f, 0xc4, 0xd7, 0x92, + 0x82, 0x1, 0xff, 0xc4, 0x26, 0xac, 0x95, 0x10, + 0xf, 0xe2, 0x6b, 0xc9, 0x41, 0x2, 0x5a, 0xca, + 0x51, 0x0, 0xfe, 0x26, 0xbc, 0x94, 0x10, 0xf, + 0xfe, 0x51, 0x35, 0x64, 0xa8, 0x80, 0x7f, 0x13, + 0x5f, 0xee, 0x52, 0x88, 0x7, 0xf1, 0x35, 0xe4, + 0xa0, 0x80, 0x7f, 0xf4, 0x9, 0xab, 0x25, 0x44, + 0x3, 0xf8, 0x48, 0x40, 0x3f, 0x89, 0xaf, 0x25, + 0x4, 0x3, 0xff, 0xac, 0x4d, 0x59, 0x2a, 0x20, + 0x1f, 0xfc, 0x32, 0x6b, 0xc9, 0x41, 0x0, 0xff, + 0xee, 0x13, 0x56, 0x4a, 0x88, 0x7, 0xf1, 0x35, + 0xe4, 0xa0, 0x80, 0x7f, 0xf8, 0x89, 0xab, 0x25, + 0x44, 0x2, 0x26, 0xbc, 0x94, 0x10, 0xf, 0xff, + 0x41, 0x35, 0x7e, 0xeb, 0xb6, 0x50, 0x40, 0x3f, + 0xf9, 0xc0, + + /* U+FF0C "," */ + 0x0, 0xe1, 0x47, 0x9a, 0xaa, 0x18, 0xc4, 0x3, + 0xf0, 0xb5, 0x5c, 0x32, 0xac, 0xf3, 0x94, 0xa2, + 0x1, 0xe3, 0xe6, 0x0, 0xfe, 0x4f, 0x40, 0xf, + 0x15, 0x43, 0x18, 0x80, 0x7c, 0x26, 0x1, 0xf1, + 0x2c, 0xe7, 0x72, 0x50, 0x2, 0x12, 0x50, 0xf, + 0xf8, 0x9e, 0x90, 0x0, 0x2f, 0xa6, 0x1, 0xf0, + 0x9b, 0x57, 0xc9, 0x80, 0xa5, 0xc2, 0x0, 0x70, + 0xb5, 0xf6, 0x4a, 0x90, 0xa4, 0xe5, 0xa8, 0x80, + 0x78, 0x53, 0x59, 0x62, 0xb3, 0xed, 0x88, 0x3, + 0xf0, + + /* U+FF1A ":" */ + 0x0, 0xc6, 0xd5, 0x99, 0xa9, 0x8c, 0x3, 0xc7, + 0x1d, 0x2a, 0x67, 0x96, 0x7a, 0x8, 0x3, 0x38, + 0x90, 0x7, 0xe2, 0x16, 0x0, 0xc9, 0x50, 0x82, + 0x1, 0x85, 0x26, 0xd0, 0x3, 0x8d, 0xef, 0xbb, + 0xd6, 0xc4, 0x1, 0xfe, 0x11, 0xc0, 0x1f, 0xff, + 0xf0, 0xf, 0xfe, 0x90, 0x88, 0x3, 0xfe, 0x26, + 0xbe, 0xfe, 0xe7, 0xf5, 0xb1, 0x0, 0x72, 0x5c, + 0xa0, 0x80, 0x61, 0x48, 0xb4, 0x0, 0xce, 0x24, + 0x1, 0xf8, 0xc5, 0xc0, 0x31, 0xc7, 0x4a, 0xa1, + 0x99, 0x1a, 0x7a, 0xc, 0x0 +}; + + +/*--------------------- + * GLYPH DESCRIPTION + *--------------------*/ + +static const lv_font_fmt_txt_glyph_dsc_t glyph_dsc[] = { + {.bitmap_index = 0, .adv_w = 0, .box_w = 0, .box_h = 0, .ofs_x = 0, .ofs_y = 0} /* id = 0 reserved */, + {.bitmap_index = 0, .adv_w = 86, .box_w = 6, .box_h = 0, .ofs_x = -1, .ofs_y = 0}, + {.bitmap_index = 0, .adv_w = 132, .box_w = 18, .box_h = 18, .ofs_x = 1, .ofs_y = 0}, + {.bitmap_index = 106, .adv_w = 199, .box_w = 30, .box_h = 8, .ofs_x = 1, .ofs_y = 12}, + {.bitmap_index = 195, .adv_w = 219, .box_w = 42, .box_h = 18, .ofs_x = 0, .ofs_y = 0}, + {.bitmap_index = 443, .adv_w = 219, .box_w = 39, .box_h = 24, .ofs_x = 0, .ofs_y = -3}, + {.bitmap_index = 715, .adv_w = 361, .box_w = 66, .box_h = 18, .ofs_x = 0, .ofs_y = 0}, + {.bitmap_index = 1149, .adv_w = 271, .box_w = 51, .box_h = 18, .ofs_x = 0, .ofs_y = 0}, + {.bitmap_index = 1475, .adv_w = 114, .box_w = 15, .box_h = 8, .ofs_x = 1, .ofs_y = 12}, + {.bitmap_index = 1520, .adv_w = 136, .box_w = 21, .box_h = 26, .ofs_x = 1, .ofs_y = -5}, + {.bitmap_index = 1707, .adv_w = 136, .box_w = 21, .box_h = 26, .ofs_x = 0, .ofs_y = -5}, + {.bitmap_index = 1893, .adv_w = 186, .box_w = 30, .box_h = 9, .ofs_x = 1, .ofs_y = 11}, + {.bitmap_index = 1999, .adv_w = 219, .box_w = 42, .box_h = 13, .ofs_x = 0, .ofs_y = 3}, + {.bitmap_index = 2071, .adv_w = 114, .box_w = 21, .box_h = 9, .ofs_x = 0, .ofs_y = -5}, + {.bitmap_index = 2143, .adv_w = 137, .box_w = 24, .box_h = 3, .ofs_x = 0, .ofs_y = 6}, + {.bitmap_index = 2159, .adv_w = 114, .box_w = 15, .box_h = 5, .ofs_x = 1, .ofs_y = 0}, + {.bitmap_index = 2188, .adv_w = 150, .box_w = 33, .box_h = 25, .ofs_x = -1, .ofs_y = -5}, + {.bitmap_index = 2387, .adv_w = 219, .box_w = 39, .box_h = 18, .ofs_x = 0, .ofs_y = 0}, + {.bitmap_index = 2636, .adv_w = 219, .box_w = 36, .box_h = 18, .ofs_x = 1, .ofs_y = 0}, + {.bitmap_index = 2717, .adv_w = 219, .box_w = 39, .box_h = 18, .ofs_x = 0, .ofs_y = 0}, + {.bitmap_index = 2925, .adv_w = 219, .box_w = 39, .box_h = 18, .ofs_x = 0, .ofs_y = 0}, + {.bitmap_index = 3169, .adv_w = 219, .box_w = 42, .box_h = 18, .ofs_x = 0, .ofs_y = 0}, + {.bitmap_index = 3313, .adv_w = 219, .box_w = 39, .box_h = 18, .ofs_x = 0, .ofs_y = 0}, + {.bitmap_index = 3525, .adv_w = 219, .box_w = 39, .box_h = 18, .ofs_x = 0, .ofs_y = 0}, + {.bitmap_index = 3795, .adv_w = 219, .box_w = 39, .box_h = 18, .ofs_x = 0, .ofs_y = 0}, + {.bitmap_index = 3945, .adv_w = 219, .box_w = 39, .box_h = 18, .ofs_x = 0, .ofs_y = 0}, + {.bitmap_index = 4228, .adv_w = 219, .box_w = 39, .box_h = 18, .ofs_x = 0, .ofs_y = 0}, + {.bitmap_index = 4495, .adv_w = 114, .box_w = 15, .box_h = 14, .ofs_x = 1, .ofs_y = 0}, + {.bitmap_index = 4558, .adv_w = 114, .box_w = 21, .box_h = 19, .ofs_x = 0, .ofs_y = -5}, + {.bitmap_index = 4671, .adv_w = 219, .box_w = 42, .box_h = 13, .ofs_x = 0, .ofs_y = 3}, + {.bitmap_index = 4841, .adv_w = 219, .box_w = 42, .box_h = 9, .ofs_x = 0, .ofs_y = 5}, + {.bitmap_index = 4885, .adv_w = 219, .box_w = 42, .box_h = 13, .ofs_x = 0, .ofs_y = 3}, + {.bitmap_index = 5057, .adv_w = 189, .box_w = 33, .box_h = 18, .ofs_x = 0, .ofs_y = 0}, + {.bitmap_index = 5230, .adv_w = 373, .box_w = 66, .box_h = 23, .ofs_x = 1, .ofs_y = -5}, + {.bitmap_index = 5773, .adv_w = 239, .box_w = 51, .box_h = 18, .ofs_x = -1, .ofs_y = 0}, + {.bitmap_index = 6020, .adv_w = 256, .box_w = 42, .box_h = 18, .ofs_x = 2, .ofs_y = 0}, + {.bitmap_index = 6228, .adv_w = 248, .box_w = 45, .box_h = 18, .ofs_x = 1, .ofs_y = 0}, + {.bitmap_index = 6460, .adv_w = 268, .box_w = 42, .box_h = 18, .ofs_x = 2, .ofs_y = 0}, + {.bitmap_index = 6648, .adv_w = 230, .box_w = 36, .box_h = 18, .ofs_x = 2, .ofs_y = 0}, + {.bitmap_index = 6725, .adv_w = 217, .box_w = 36, .box_h = 18, .ofs_x = 2, .ofs_y = 0}, + {.bitmap_index = 6788, .adv_w = 269, .box_w = 45, .box_h = 18, .ofs_x = 1, .ofs_y = 0}, + {.bitmap_index = 7032, .adv_w = 284, .box_w = 42, .box_h = 18, .ofs_x = 2, .ofs_y = 0}, + {.bitmap_index = 7093, .adv_w = 119, .box_w = 12, .box_h = 18, .ofs_x = 2, .ofs_y = 0}, + {.bitmap_index = 7107, .adv_w = 211, .box_w = 36, .box_h = 18, .ofs_x = 0, .ofs_y = 0}, + {.bitmap_index = 7212, .adv_w = 255, .box_w = 45, .box_h = 18, .ofs_x = 2, .ofs_y = 0}, + {.bitmap_index = 7409, .adv_w = 214, .box_w = 33, .box_h = 18, .ofs_x = 2, .ofs_y = 0}, + {.bitmap_index = 7452, .adv_w = 319, .box_w = 48, .box_h = 18, .ofs_x = 2, .ofs_y = 0}, + {.bitmap_index = 7691, .adv_w = 282, .box_w = 42, .box_h = 18, .ofs_x = 2, .ofs_y = 0}, + {.bitmap_index = 7860, .adv_w = 290, .box_w = 51, .box_h = 18, .ofs_x = 1, .ofs_y = 0}, + {.bitmap_index = 8155, .adv_w = 248, .box_w = 39, .box_h = 18, .ofs_x = 2, .ofs_y = 0}, + {.bitmap_index = 8304, .adv_w = 290, .box_w = 51, .box_h = 24, .ofs_x = 1, .ofs_y = -6}, + {.bitmap_index = 8687, .adv_w = 252, .box_w = 42, .box_h = 18, .ofs_x = 2, .ofs_y = 0}, + {.bitmap_index = 8877, .adv_w = 233, .box_w = 42, .box_h = 18, .ofs_x = 0, .ofs_y = 0}, + {.bitmap_index = 9140, .adv_w = 234, .box_w = 45, .box_h = 18, .ofs_x = 0, .ofs_y = 0}, + {.bitmap_index = 9206, .adv_w = 281, .box_w = 45, .box_h = 18, .ofs_x = 1, .ofs_y = 0}, + {.bitmap_index = 9359, .adv_w = 228, .box_w = 48, .box_h = 18, .ofs_x = -1, .ofs_y = 0}, + {.bitmap_index = 9611, .adv_w = 343, .box_w = 66, .box_h = 18, .ofs_x = 0, .ofs_y = 0}, + {.bitmap_index = 10021, .adv_w = 229, .box_w = 45, .box_h = 18, .ofs_x = 0, .ofs_y = 0}, + {.bitmap_index = 10285, .adv_w = 212, .box_w = 45, .box_h = 18, .ofs_x = -1, .ofs_y = 0}, + {.bitmap_index = 10469, .adv_w = 233, .box_w = 42, .box_h = 18, .ofs_x = 0, .ofs_y = 0}, + {.bitmap_index = 10637, .adv_w = 136, .box_w = 18, .box_h = 24, .ofs_x = 2, .ofs_y = -4}, + {.bitmap_index = 10681, .adv_w = 150, .box_w = 30, .box_h = 25, .ofs_x = 0, .ofs_y = -5}, + {.bitmap_index = 10874, .adv_w = 136, .box_w = 21, .box_h = 24, .ofs_x = 0, .ofs_y = -4}, + {.bitmap_index = 10923, .adv_w = 219, .box_w = 36, .box_h = 11, .ofs_x = 1, .ofs_y = 8}, + {.bitmap_index = 11062, .adv_w = 216, .box_w = 45, .box_h = 2, .ofs_x = -1, .ofs_y = -4}, + {.bitmap_index = 11077, .adv_w = 236, .box_w = 24, .box_h = 8, .ofs_x = 2, .ofs_y = 15}, + {.bitmap_index = 11141, .adv_w = 221, .box_w = 39, .box_h = 14, .ofs_x = 0, .ofs_y = 0}, + {.bitmap_index = 11343, .adv_w = 242, .box_w = 42, .box_h = 20, .ofs_x = 1, .ofs_y = 0}, + {.bitmap_index = 11536, .adv_w = 199, .box_w = 39, .box_h = 14, .ofs_x = 0, .ofs_y = 0}, + {.bitmap_index = 11710, .adv_w = 242, .box_w = 42, .box_h = 20, .ofs_x = 0, .ofs_y = 0}, + {.bitmap_index = 11900, .adv_w = 217, .box_w = 39, .box_h = 14, .ofs_x = 0, .ofs_y = 0}, + {.bitmap_index = 12092, .adv_w = 132, .box_w = 30, .box_h = 20, .ofs_x = 0, .ofs_y = 0}, + {.bitmap_index = 12201, .adv_w = 222, .box_w = 42, .box_h = 20, .ofs_x = 0, .ofs_y = -6}, + {.bitmap_index = 12510, .adv_w = 238, .box_w = 39, .box_h = 20, .ofs_x = 1, .ofs_y = 0}, + {.bitmap_index = 12624, .adv_w = 110, .box_w = 15, .box_h = 20, .ofs_x = 1, .ofs_y = 0}, + {.bitmap_index = 12674, .adv_w = 111, .box_w = 24, .box_h = 26, .ofs_x = -2, .ofs_y = -6}, + {.bitmap_index = 12780, .adv_w = 221, .box_w = 39, .box_h = 20, .ofs_x = 1, .ofs_y = 0}, + {.bitmap_index = 12944, .adv_w = 114, .box_w = 18, .box_h = 20, .ofs_x = 1, .ofs_y = 0}, + {.bitmap_index = 12988, .adv_w = 362, .box_w = 63, .box_h = 14, .ofs_x = 1, .ofs_y = 0}, + {.bitmap_index = 13160, .adv_w = 240, .box_w = 39, .box_h = 14, .ofs_x = 1, .ofs_y = 0}, + {.bitmap_index = 13263, .adv_w = 236, .box_w = 42, .box_h = 14, .ofs_x = 0, .ofs_y = 0}, + {.bitmap_index = 13480, .adv_w = 242, .box_w = 42, .box_h = 20, .ofs_x = 1, .ofs_y = -6}, + {.bitmap_index = 13683, .adv_w = 242, .box_w = 42, .box_h = 20, .ofs_x = 0, .ofs_y = -6}, + {.bitmap_index = 13888, .adv_w = 157, .box_w = 30, .box_h = 14, .ofs_x = 1, .ofs_y = 0}, + {.bitmap_index = 13962, .adv_w = 184, .box_w = 36, .box_h = 14, .ofs_x = 0, .ofs_y = 0}, + {.bitmap_index = 14157, .adv_w = 152, .box_w = 30, .box_h = 18, .ofs_x = 0, .ofs_y = 0}, + {.bitmap_index = 14268, .adv_w = 238, .box_w = 39, .box_h = 14, .ofs_x = 1, .ofs_y = 0}, + {.bitmap_index = 14368, .adv_w = 209, .box_w = 45, .box_h = 14, .ofs_x = -1, .ofs_y = 0}, + {.bitmap_index = 14562, .adv_w = 318, .box_w = 60, .box_h = 14, .ofs_x = 0, .ofs_y = 0}, + {.bitmap_index = 14874, .adv_w = 202, .box_w = 39, .box_h = 14, .ofs_x = 0, .ofs_y = 0}, + {.bitmap_index = 15067, .adv_w = 209, .box_w = 45, .box_h = 20, .ofs_x = -1, .ofs_y = -6}, + {.bitmap_index = 15317, .adv_w = 188, .box_w = 36, .box_h = 14, .ofs_x = 0, .ofs_y = 0}, + {.bitmap_index = 15452, .adv_w = 136, .box_w = 24, .box_h = 24, .ofs_x = 0, .ofs_y = -4}, + {.bitmap_index = 15624, .adv_w = 108, .box_w = 9, .box_h = 28, .ofs_x = 2, .ofs_y = -7}, + {.bitmap_index = 15641, .adv_w = 136, .box_w = 24, .box_h = 24, .ofs_x = 0, .ofs_y = -4}, + {.bitmap_index = 15817, .adv_w = 219, .box_w = 42, .box_h = 5, .ofs_x = 0, .ofs_y = 7}, + {.bitmap_index = 15893, .adv_w = 147, .box_w = 27, .box_h = 9, .ofs_x = 0, .ofs_y = 11}, + {.bitmap_index = 15994, .adv_w = 384, .box_w = 27, .box_h = 8, .ofs_x = 0, .ofs_y = -2}, + {.bitmap_index = 16071, .adv_w = 384, .box_w = 72, .box_h = 3, .ofs_x = 0, .ofs_y = 8}, + {.bitmap_index = 16090, .adv_w = 384, .box_w = 66, .box_h = 19, .ofs_x = 1, .ofs_y = -1}, + {.bitmap_index = 16184, .adv_w = 384, .box_w = 72, .box_h = 21, .ofs_x = 0, .ofs_y = -2}, + {.bitmap_index = 16446, .adv_w = 384, .box_w = 72, .box_h = 22, .ofs_x = 0, .ofs_y = -2}, + {.bitmap_index = 16706, .adv_w = 384, .box_w = 63, .box_h = 22, .ofs_x = 1, .ofs_y = -2}, + {.bitmap_index = 16861, .adv_w = 384, .box_w = 69, .box_h = 17, .ofs_x = 1, .ofs_y = 0}, + {.bitmap_index = 16937, .adv_w = 384, .box_w = 69, .box_h = 23, .ofs_x = 0, .ofs_y = -3}, + {.bitmap_index = 17191, .adv_w = 384, .box_w = 72, .box_h = 21, .ofs_x = 0, .ofs_y = -2}, + {.bitmap_index = 17597, .adv_w = 384, .box_w = 72, .box_h = 24, .ofs_x = 0, .ofs_y = -3}, + {.bitmap_index = 18007, .adv_w = 384, .box_w = 69, .box_h = 24, .ofs_x = 0, .ofs_y = -3}, + {.bitmap_index = 18278, .adv_w = 384, .box_w = 72, .box_h = 23, .ofs_x = 0, .ofs_y = -2}, + {.bitmap_index = 18630, .adv_w = 384, .box_w = 72, .box_h = 22, .ofs_x = 0, .ofs_y = -2}, + {.bitmap_index = 19024, .adv_w = 384, .box_w = 72, .box_h = 23, .ofs_x = 0, .ofs_y = -2}, + {.bitmap_index = 19437, .adv_w = 384, .box_w = 72, .box_h = 24, .ofs_x = 0, .ofs_y = -3}, + {.bitmap_index = 19806, .adv_w = 384, .box_w = 72, .box_h = 24, .ofs_x = 0, .ofs_y = -3}, + {.bitmap_index = 20240, .adv_w = 384, .box_w = 72, .box_h = 24, .ofs_x = 0, .ofs_y = -3}, + {.bitmap_index = 20610, .adv_w = 384, .box_w = 72, .box_h = 24, .ofs_x = 0, .ofs_y = -3}, + {.bitmap_index = 20883, .adv_w = 384, .box_w = 75, .box_h = 24, .ofs_x = 0, .ofs_y = -3}, + {.bitmap_index = 21416, .adv_w = 384, .box_w = 72, .box_h = 23, .ofs_x = 0, .ofs_y = -2}, + {.bitmap_index = 21731, .adv_w = 384, .box_w = 72, .box_h = 24, .ofs_x = 0, .ofs_y = -3}, + {.bitmap_index = 22051, .adv_w = 384, .box_w = 72, .box_h = 23, .ofs_x = 0, .ofs_y = -2}, + {.bitmap_index = 22490, .adv_w = 384, .box_w = 72, .box_h = 24, .ofs_x = 0, .ofs_y = -3}, + {.bitmap_index = 22906, .adv_w = 384, .box_w = 69, .box_h = 24, .ofs_x = 1, .ofs_y = -3}, + {.bitmap_index = 23261, .adv_w = 384, .box_w = 72, .box_h = 21, .ofs_x = 0, .ofs_y = -2}, + {.bitmap_index = 23573, .adv_w = 384, .box_w = 72, .box_h = 23, .ofs_x = 0, .ofs_y = -2}, + {.bitmap_index = 23895, .adv_w = 384, .box_w = 60, .box_h = 23, .ofs_x = 2, .ofs_y = -2}, + {.bitmap_index = 24228, .adv_w = 384, .box_w = 63, .box_h = 23, .ofs_x = 1, .ofs_y = -2}, + {.bitmap_index = 24496, .adv_w = 384, .box_w = 69, .box_h = 22, .ofs_x = 1, .ofs_y = -3}, + {.bitmap_index = 24769, .adv_w = 384, .box_w = 69, .box_h = 22, .ofs_x = 0, .ofs_y = -2}, + {.bitmap_index = 25043, .adv_w = 384, .box_w = 72, .box_h = 23, .ofs_x = 0, .ofs_y = -2}, + {.bitmap_index = 25564, .adv_w = 384, .box_w = 60, .box_h = 23, .ofs_x = 2, .ofs_y = -2}, + {.bitmap_index = 25736, .adv_w = 384, .box_w = 66, .box_h = 21, .ofs_x = 0, .ofs_y = -3}, + {.bitmap_index = 26052, .adv_w = 384, .box_w = 72, .box_h = 23, .ofs_x = 0, .ofs_y = -3}, + {.bitmap_index = 26478, .adv_w = 384, .box_w = 69, .box_h = 23, .ofs_x = 0, .ofs_y = -3}, + {.bitmap_index = 26896, .adv_w = 384, .box_w = 69, .box_h = 23, .ofs_x = 0, .ofs_y = -3}, + {.bitmap_index = 27268, .adv_w = 384, .box_w = 69, .box_h = 24, .ofs_x = 1, .ofs_y = -3}, + {.bitmap_index = 27585, .adv_w = 384, .box_w = 69, .box_h = 23, .ofs_x = 0, .ofs_y = -2}, + {.bitmap_index = 27901, .adv_w = 384, .box_w = 69, .box_h = 23, .ofs_x = 0, .ofs_y = -3}, + {.bitmap_index = 28287, .adv_w = 384, .box_w = 69, .box_h = 23, .ofs_x = 0, .ofs_y = -3}, + {.bitmap_index = 28599, .adv_w = 384, .box_w = 66, .box_h = 23, .ofs_x = 1, .ofs_y = -3}, + {.bitmap_index = 29029, .adv_w = 384, .box_w = 69, .box_h = 23, .ofs_x = 1, .ofs_y = -2}, + {.bitmap_index = 29314, .adv_w = 384, .box_w = 69, .box_h = 23, .ofs_x = 1, .ofs_y = -2}, + {.bitmap_index = 29615, .adv_w = 384, .box_w = 63, .box_h = 22, .ofs_x = 2, .ofs_y = -2}, + {.bitmap_index = 29843, .adv_w = 384, .box_w = 69, .box_h = 22, .ofs_x = 0, .ofs_y = -3}, + {.bitmap_index = 29983, .adv_w = 384, .box_w = 72, .box_h = 22, .ofs_x = 0, .ofs_y = -2}, + {.bitmap_index = 30248, .adv_w = 384, .box_w = 72, .box_h = 21, .ofs_x = 0, .ofs_y = -2}, + {.bitmap_index = 30619, .adv_w = 384, .box_w = 72, .box_h = 22, .ofs_x = 0, .ofs_y = -2}, + {.bitmap_index = 31156, .adv_w = 384, .box_w = 69, .box_h = 21, .ofs_x = 0, .ofs_y = -2}, + {.bitmap_index = 31525, .adv_w = 384, .box_w = 72, .box_h = 21, .ofs_x = 0, .ofs_y = -2}, + {.bitmap_index = 31945, .adv_w = 384, .box_w = 60, .box_h = 20, .ofs_x = 2, .ofs_y = -2}, + {.bitmap_index = 32034, .adv_w = 384, .box_w = 72, .box_h = 23, .ofs_x = 0, .ofs_y = -2}, + {.bitmap_index = 32271, .adv_w = 384, .box_w = 69, .box_h = 23, .ofs_x = 0, .ofs_y = -3}, + {.bitmap_index = 32503, .adv_w = 384, .box_w = 66, .box_h = 21, .ofs_x = 1, .ofs_y = -2}, + {.bitmap_index = 32670, .adv_w = 384, .box_w = 72, .box_h = 22, .ofs_x = 0, .ofs_y = -2}, + {.bitmap_index = 32982, .adv_w = 384, .box_w = 63, .box_h = 24, .ofs_x = 1, .ofs_y = -3}, + {.bitmap_index = 33184, .adv_w = 384, .box_w = 66, .box_h = 22, .ofs_x = 0, .ofs_y = -2}, + {.bitmap_index = 33488, .adv_w = 384, .box_w = 69, .box_h = 22, .ofs_x = 1, .ofs_y = -2}, + {.bitmap_index = 33711, .adv_w = 384, .box_w = 69, .box_h = 22, .ofs_x = 0, .ofs_y = -2}, + {.bitmap_index = 34023, .adv_w = 384, .box_w = 66, .box_h = 23, .ofs_x = 1, .ofs_y = -2}, + {.bitmap_index = 34368, .adv_w = 384, .box_w = 69, .box_h = 23, .ofs_x = 1, .ofs_y = -3}, + {.bitmap_index = 34765, .adv_w = 384, .box_w = 66, .box_h = 20, .ofs_x = 1, .ofs_y = -2}, + {.bitmap_index = 35005, .adv_w = 384, .box_w = 66, .box_h = 22, .ofs_x = 1, .ofs_y = -2}, + {.bitmap_index = 35148, .adv_w = 384, .box_w = 72, .box_h = 23, .ofs_x = 0, .ofs_y = -3}, + {.bitmap_index = 35548, .adv_w = 384, .box_w = 72, .box_h = 22, .ofs_x = 0, .ofs_y = -2}, + {.bitmap_index = 35945, .adv_w = 384, .box_w = 72, .box_h = 22, .ofs_x = 0, .ofs_y = -2}, + {.bitmap_index = 36336, .adv_w = 384, .box_w = 66, .box_h = 22, .ofs_x = 1, .ofs_y = -2}, + {.bitmap_index = 36817, .adv_w = 384, .box_w = 72, .box_h = 22, .ofs_x = 0, .ofs_y = -2}, + {.bitmap_index = 37119, .adv_w = 384, .box_w = 72, .box_h = 24, .ofs_x = 0, .ofs_y = -3}, + {.bitmap_index = 37524, .adv_w = 384, .box_w = 72, .box_h = 22, .ofs_x = 0, .ofs_y = -2}, + {.bitmap_index = 37998, .adv_w = 384, .box_w = 69, .box_h = 24, .ofs_x = 0, .ofs_y = -3}, + {.bitmap_index = 38320, .adv_w = 384, .box_w = 72, .box_h = 23, .ofs_x = 0, .ofs_y = -3}, + {.bitmap_index = 38651, .adv_w = 384, .box_w = 72, .box_h = 23, .ofs_x = 0, .ofs_y = -2}, + {.bitmap_index = 39050, .adv_w = 384, .box_w = 72, .box_h = 24, .ofs_x = 0, .ofs_y = -3}, + {.bitmap_index = 39552, .adv_w = 384, .box_w = 72, .box_h = 23, .ofs_x = 0, .ofs_y = -2}, + {.bitmap_index = 39975, .adv_w = 384, .box_w = 72, .box_h = 24, .ofs_x = 0, .ofs_y = -3}, + {.bitmap_index = 40379, .adv_w = 384, .box_w = 72, .box_h = 22, .ofs_x = 0, .ofs_y = -2}, + {.bitmap_index = 40781, .adv_w = 384, .box_w = 69, .box_h = 24, .ofs_x = 1, .ofs_y = -3}, + {.bitmap_index = 40988, .adv_w = 384, .box_w = 72, .box_h = 23, .ofs_x = 0, .ofs_y = -2}, + {.bitmap_index = 41373, .adv_w = 384, .box_w = 69, .box_h = 22, .ofs_x = 1, .ofs_y = -2}, + {.bitmap_index = 41649, .adv_w = 384, .box_w = 72, .box_h = 23, .ofs_x = 0, .ofs_y = -3}, + {.bitmap_index = 41927, .adv_w = 384, .box_w = 72, .box_h = 22, .ofs_x = 0, .ofs_y = -2}, + {.bitmap_index = 42216, .adv_w = 384, .box_w = 69, .box_h = 19, .ofs_x = 1, .ofs_y = -1}, + {.bitmap_index = 42318, .adv_w = 384, .box_w = 72, .box_h = 23, .ofs_x = 0, .ofs_y = -2}, + {.bitmap_index = 42584, .adv_w = 384, .box_w = 72, .box_h = 23, .ofs_x = 0, .ofs_y = -2}, + {.bitmap_index = 42830, .adv_w = 384, .box_w = 72, .box_h = 23, .ofs_x = 0, .ofs_y = -2}, + {.bitmap_index = 43194, .adv_w = 384, .box_w = 72, .box_h = 23, .ofs_x = 0, .ofs_y = -2}, + {.bitmap_index = 43633, .adv_w = 384, .box_w = 69, .box_h = 22, .ofs_x = 1, .ofs_y = -3}, + {.bitmap_index = 43864, .adv_w = 384, .box_w = 69, .box_h = 23, .ofs_x = 1, .ofs_y = -2}, + {.bitmap_index = 44219, .adv_w = 384, .box_w = 60, .box_h = 23, .ofs_x = 2, .ofs_y = -2}, + {.bitmap_index = 44457, .adv_w = 384, .box_w = 72, .box_h = 23, .ofs_x = 0, .ofs_y = -2}, + {.bitmap_index = 44886, .adv_w = 384, .box_w = 72, .box_h = 22, .ofs_x = 0, .ofs_y = -2}, + {.bitmap_index = 45283, .adv_w = 384, .box_w = 72, .box_h = 23, .ofs_x = 0, .ofs_y = -2}, + {.bitmap_index = 45628, .adv_w = 384, .box_w = 72, .box_h = 24, .ofs_x = 0, .ofs_y = -3}, + {.bitmap_index = 46113, .adv_w = 384, .box_w = 63, .box_h = 24, .ofs_x = 0, .ofs_y = -3}, + {.bitmap_index = 46327, .adv_w = 384, .box_w = 72, .box_h = 23, .ofs_x = 0, .ofs_y = -3}, + {.bitmap_index = 46618, .adv_w = 384, .box_w = 72, .box_h = 23, .ofs_x = 0, .ofs_y = -3}, + {.bitmap_index = 46892, .adv_w = 384, .box_w = 69, .box_h = 23, .ofs_x = 0, .ofs_y = -3}, + {.bitmap_index = 47245, .adv_w = 384, .box_w = 72, .box_h = 23, .ofs_x = 0, .ofs_y = -3}, + {.bitmap_index = 47684, .adv_w = 384, .box_w = 72, .box_h = 24, .ofs_x = 0, .ofs_y = -3}, + {.bitmap_index = 48177, .adv_w = 384, .box_w = 69, .box_h = 22, .ofs_x = 0, .ofs_y = -2}, + {.bitmap_index = 48541, .adv_w = 384, .box_w = 72, .box_h = 24, .ofs_x = 0, .ofs_y = -3}, + {.bitmap_index = 48955, .adv_w = 384, .box_w = 69, .box_h = 24, .ofs_x = 1, .ofs_y = -3}, + {.bitmap_index = 49408, .adv_w = 384, .box_w = 72, .box_h = 23, .ofs_x = 0, .ofs_y = -2}, + {.bitmap_index = 49949, .adv_w = 384, .box_w = 72, .box_h = 23, .ofs_x = 0, .ofs_y = -2}, + {.bitmap_index = 50533, .adv_w = 384, .box_w = 72, .box_h = 23, .ofs_x = 0, .ofs_y = -2}, + {.bitmap_index = 51132, .adv_w = 384, .box_w = 72, .box_h = 23, .ofs_x = 0, .ofs_y = -2}, + {.bitmap_index = 51498, .adv_w = 384, .box_w = 72, .box_h = 23, .ofs_x = 0, .ofs_y = -3}, + {.bitmap_index = 51941, .adv_w = 384, .box_w = 72, .box_h = 24, .ofs_x = 0, .ofs_y = -3}, + {.bitmap_index = 52399, .adv_w = 384, .box_w = 69, .box_h = 24, .ofs_x = 0, .ofs_y = -3}, + {.bitmap_index = 52718, .adv_w = 384, .box_w = 72, .box_h = 22, .ofs_x = 0, .ofs_y = -3}, + {.bitmap_index = 53038, .adv_w = 384, .box_w = 54, .box_h = 21, .ofs_x = 3, .ofs_y = -2}, + {.bitmap_index = 53156, .adv_w = 384, .box_w = 69, .box_h = 23, .ofs_x = 1, .ofs_y = -3}, + {.bitmap_index = 53428, .adv_w = 384, .box_w = 72, .box_h = 23, .ofs_x = 0, .ofs_y = -3}, + {.bitmap_index = 53830, .adv_w = 384, .box_w = 63, .box_h = 22, .ofs_x = 0, .ofs_y = -3}, + {.bitmap_index = 54057, .adv_w = 384, .box_w = 72, .box_h = 23, .ofs_x = 0, .ofs_y = -2}, + {.bitmap_index = 54318, .adv_w = 384, .box_w = 72, .box_h = 23, .ofs_x = 0, .ofs_y = -3}, + {.bitmap_index = 54742, .adv_w = 384, .box_w = 69, .box_h = 23, .ofs_x = 0, .ofs_y = -3}, + {.bitmap_index = 55172, .adv_w = 384, .box_w = 72, .box_h = 23, .ofs_x = 0, .ofs_y = -2}, + {.bitmap_index = 55486, .adv_w = 384, .box_w = 72, .box_h = 23, .ofs_x = 0, .ofs_y = -3}, + {.bitmap_index = 55838, .adv_w = 384, .box_w = 72, .box_h = 24, .ofs_x = 0, .ofs_y = -3}, + {.bitmap_index = 56208, .adv_w = 384, .box_w = 72, .box_h = 23, .ofs_x = 0, .ofs_y = -3}, + {.bitmap_index = 56691, .adv_w = 384, .box_w = 72, .box_h = 21, .ofs_x = 0, .ofs_y = -2}, + {.bitmap_index = 57060, .adv_w = 384, .box_w = 72, .box_h = 24, .ofs_x = 0, .ofs_y = -3}, + {.bitmap_index = 57472, .adv_w = 384, .box_w = 69, .box_h = 23, .ofs_x = 0, .ofs_y = -3}, + {.bitmap_index = 57793, .adv_w = 384, .box_w = 72, .box_h = 23, .ofs_x = 0, .ofs_y = -3}, + {.bitmap_index = 58281, .adv_w = 384, .box_w = 72, .box_h = 23, .ofs_x = 0, .ofs_y = -3}, + {.bitmap_index = 58772, .adv_w = 384, .box_w = 69, .box_h = 21, .ofs_x = 0, .ofs_y = -1}, + {.bitmap_index = 58907, .adv_w = 384, .box_w = 69, .box_h = 20, .ofs_x = 1, .ofs_y = -1}, + {.bitmap_index = 59056, .adv_w = 384, .box_w = 69, .box_h = 23, .ofs_x = 0, .ofs_y = -2}, + {.bitmap_index = 59427, .adv_w = 384, .box_w = 72, .box_h = 23, .ofs_x = 0, .ofs_y = -3}, + {.bitmap_index = 59943, .adv_w = 384, .box_w = 69, .box_h = 23, .ofs_x = 0, .ofs_y = -2}, + {.bitmap_index = 60264, .adv_w = 384, .box_w = 69, .box_h = 23, .ofs_x = 0, .ofs_y = -3}, + {.bitmap_index = 60650, .adv_w = 384, .box_w = 69, .box_h = 22, .ofs_x = 0, .ofs_y = -2}, + {.bitmap_index = 61060, .adv_w = 384, .box_w = 72, .box_h = 23, .ofs_x = 0, .ofs_y = -2}, + {.bitmap_index = 61465, .adv_w = 384, .box_w = 72, .box_h = 23, .ofs_x = 0, .ofs_y = -2}, + {.bitmap_index = 61758, .adv_w = 384, .box_w = 72, .box_h = 23, .ofs_x = 0, .ofs_y = -2}, + {.bitmap_index = 62198, .adv_w = 384, .box_w = 69, .box_h = 23, .ofs_x = 1, .ofs_y = -2}, + {.bitmap_index = 62445, .adv_w = 384, .box_w = 66, .box_h = 22, .ofs_x = 0, .ofs_y = -3}, + {.bitmap_index = 62706, .adv_w = 384, .box_w = 66, .box_h = 22, .ofs_x = 2, .ofs_y = -2}, + {.bitmap_index = 63001, .adv_w = 384, .box_w = 54, .box_h = 21, .ofs_x = 3, .ofs_y = -2}, + {.bitmap_index = 63128, .adv_w = 384, .box_w = 69, .box_h = 24, .ofs_x = 0, .ofs_y = -3}, + {.bitmap_index = 63473, .adv_w = 384, .box_w = 69, .box_h = 22, .ofs_x = 0, .ofs_y = -3}, + {.bitmap_index = 63872, .adv_w = 384, .box_w = 69, .box_h = 24, .ofs_x = 0, .ofs_y = -3}, + {.bitmap_index = 64329, .adv_w = 384, .box_w = 72, .box_h = 23, .ofs_x = 0, .ofs_y = -3}, + {.bitmap_index = 64819, .adv_w = 384, .box_w = 72, .box_h = 24, .ofs_x = 0, .ofs_y = -3}, + {.bitmap_index = 65387, .adv_w = 384, .box_w = 72, .box_h = 22, .ofs_x = 0, .ofs_y = -2}, + {.bitmap_index = 65754, .adv_w = 384, .box_w = 66, .box_h = 23, .ofs_x = 1, .ofs_y = -2}, + {.bitmap_index = 66041, .adv_w = 384, .box_w = 69, .box_h = 22, .ofs_x = 1, .ofs_y = -2}, + {.bitmap_index = 66426, .adv_w = 384, .box_w = 72, .box_h = 24, .ofs_x = 0, .ofs_y = -3}, + {.bitmap_index = 66847, .adv_w = 384, .box_w = 72, .box_h = 23, .ofs_x = 0, .ofs_y = -2}, + {.bitmap_index = 67308, .adv_w = 384, .box_w = 69, .box_h = 22, .ofs_x = 1, .ofs_y = -2}, + {.bitmap_index = 67659, .adv_w = 384, .box_w = 69, .box_h = 24, .ofs_x = 0, .ofs_y = -3}, + {.bitmap_index = 68065, .adv_w = 384, .box_w = 72, .box_h = 24, .ofs_x = 0, .ofs_y = -3}, + {.bitmap_index = 68392, .adv_w = 384, .box_w = 72, .box_h = 22, .ofs_x = 0, .ofs_y = -2}, + {.bitmap_index = 68901, .adv_w = 384, .box_w = 72, .box_h = 24, .ofs_x = 0, .ofs_y = -3}, + {.bitmap_index = 69523, .adv_w = 384, .box_w = 72, .box_h = 23, .ofs_x = 0, .ofs_y = -2}, + {.bitmap_index = 70148, .adv_w = 384, .box_w = 72, .box_h = 23, .ofs_x = 0, .ofs_y = -2}, + {.bitmap_index = 70546, .adv_w = 384, .box_w = 72, .box_h = 23, .ofs_x = 0, .ofs_y = -2}, + {.bitmap_index = 71172, .adv_w = 384, .box_w = 72, .box_h = 23, .ofs_x = 0, .ofs_y = -2}, + {.bitmap_index = 71642, .adv_w = 384, .box_w = 72, .box_h = 23, .ofs_x = 0, .ofs_y = -2}, + {.bitmap_index = 72080, .adv_w = 384, .box_w = 72, .box_h = 23, .ofs_x = 0, .ofs_y = -2}, + {.bitmap_index = 72592, .adv_w = 384, .box_w = 72, .box_h = 24, .ofs_x = 0, .ofs_y = -3}, + {.bitmap_index = 73209, .adv_w = 384, .box_w = 72, .box_h = 23, .ofs_x = 0, .ofs_y = -2}, + {.bitmap_index = 73716, .adv_w = 384, .box_w = 69, .box_h = 22, .ofs_x = 1, .ofs_y = -2}, + {.bitmap_index = 73996, .adv_w = 384, .box_w = 69, .box_h = 23, .ofs_x = 0, .ofs_y = -2}, + {.bitmap_index = 74527, .adv_w = 384, .box_w = 72, .box_h = 23, .ofs_x = 0, .ofs_y = -3}, + {.bitmap_index = 74978, .adv_w = 384, .box_w = 72, .box_h = 23, .ofs_x = 0, .ofs_y = -3}, + {.bitmap_index = 75479, .adv_w = 384, .box_w = 54, .box_h = 23, .ofs_x = 3, .ofs_y = -2}, + {.bitmap_index = 75646, .adv_w = 384, .box_w = 72, .box_h = 23, .ofs_x = 0, .ofs_y = -2}, + {.bitmap_index = 76049, .adv_w = 384, .box_w = 72, .box_h = 24, .ofs_x = 0, .ofs_y = -3}, + {.bitmap_index = 76609, .adv_w = 384, .box_w = 72, .box_h = 23, .ofs_x = 0, .ofs_y = -2}, + {.bitmap_index = 76874, .adv_w = 384, .box_w = 72, .box_h = 22, .ofs_x = 0, .ofs_y = -2}, + {.bitmap_index = 77192, .adv_w = 384, .box_w = 66, .box_h = 24, .ofs_x = 0, .ofs_y = -3}, + {.bitmap_index = 77575, .adv_w = 384, .box_w = 69, .box_h = 21, .ofs_x = 1, .ofs_y = -2}, + {.bitmap_index = 77748, .adv_w = 384, .box_w = 72, .box_h = 22, .ofs_x = 0, .ofs_y = -2}, + {.bitmap_index = 77978, .adv_w = 384, .box_w = 72, .box_h = 23, .ofs_x = 0, .ofs_y = -2}, + {.bitmap_index = 78359, .adv_w = 384, .box_w = 72, .box_h = 22, .ofs_x = 0, .ofs_y = -2}, + {.bitmap_index = 78649, .adv_w = 384, .box_w = 72, .box_h = 22, .ofs_x = 0, .ofs_y = -2}, + {.bitmap_index = 79102, .adv_w = 384, .box_w = 72, .box_h = 23, .ofs_x = 0, .ofs_y = -3}, + {.bitmap_index = 79532, .adv_w = 384, .box_w = 72, .box_h = 23, .ofs_x = 0, .ofs_y = -2}, + {.bitmap_index = 79873, .adv_w = 384, .box_w = 72, .box_h = 22, .ofs_x = 0, .ofs_y = -2}, + {.bitmap_index = 80231, .adv_w = 384, .box_w = 69, .box_h = 23, .ofs_x = 0, .ofs_y = -2}, + {.bitmap_index = 80610, .adv_w = 384, .box_w = 72, .box_h = 22, .ofs_x = 0, .ofs_y = -2}, + {.bitmap_index = 81067, .adv_w = 384, .box_w = 72, .box_h = 23, .ofs_x = 0, .ofs_y = -2}, + {.bitmap_index = 81519, .adv_w = 384, .box_w = 69, .box_h = 23, .ofs_x = 0, .ofs_y = -3}, + {.bitmap_index = 81996, .adv_w = 384, .box_w = 72, .box_h = 25, .ofs_x = 0, .ofs_y = -4}, + {.bitmap_index = 82431, .adv_w = 384, .box_w = 72, .box_h = 24, .ofs_x = 0, .ofs_y = -3}, + {.bitmap_index = 82976, .adv_w = 384, .box_w = 72, .box_h = 23, .ofs_x = 0, .ofs_y = -3}, + {.bitmap_index = 83453, .adv_w = 384, .box_w = 69, .box_h = 24, .ofs_x = 0, .ofs_y = -3}, + {.bitmap_index = 83834, .adv_w = 384, .box_w = 72, .box_h = 23, .ofs_x = 0, .ofs_y = -2}, + {.bitmap_index = 84292, .adv_w = 384, .box_w = 72, .box_h = 24, .ofs_x = 0, .ofs_y = -3}, + {.bitmap_index = 84757, .adv_w = 384, .box_w = 72, .box_h = 23, .ofs_x = 0, .ofs_y = -3}, + {.bitmap_index = 85229, .adv_w = 384, .box_w = 69, .box_h = 23, .ofs_x = 0, .ofs_y = -3}, + {.bitmap_index = 85661, .adv_w = 384, .box_w = 72, .box_h = 24, .ofs_x = 0, .ofs_y = -3}, + {.bitmap_index = 86139, .adv_w = 384, .box_w = 69, .box_h = 24, .ofs_x = 0, .ofs_y = -3}, + {.bitmap_index = 86599, .adv_w = 384, .box_w = 72, .box_h = 23, .ofs_x = 0, .ofs_y = -2}, + {.bitmap_index = 86979, .adv_w = 384, .box_w = 69, .box_h = 22, .ofs_x = 0, .ofs_y = -2}, + {.bitmap_index = 87259, .adv_w = 384, .box_w = 72, .box_h = 22, .ofs_x = 0, .ofs_y = -2}, + {.bitmap_index = 87676, .adv_w = 384, .box_w = 69, .box_h = 23, .ofs_x = 1, .ofs_y = -2}, + {.bitmap_index = 88009, .adv_w = 384, .box_w = 66, .box_h = 24, .ofs_x = 1, .ofs_y = -3}, + {.bitmap_index = 88307, .adv_w = 384, .box_w = 66, .box_h = 22, .ofs_x = 1, .ofs_y = -2}, + {.bitmap_index = 88508, .adv_w = 384, .box_w = 69, .box_h = 22, .ofs_x = 1, .ofs_y = -2}, + {.bitmap_index = 88993, .adv_w = 384, .box_w = 69, .box_h = 22, .ofs_x = 0, .ofs_y = -3}, + {.bitmap_index = 89287, .adv_w = 384, .box_w = 72, .box_h = 22, .ofs_x = 0, .ofs_y = -2}, + {.bitmap_index = 89644, .adv_w = 384, .box_w = 72, .box_h = 23, .ofs_x = 0, .ofs_y = -3}, + {.bitmap_index = 90141, .adv_w = 240, .box_w = 45, .box_h = 22, .ofs_x = 0, .ofs_y = -2}, + {.bitmap_index = 90375, .adv_w = 240, .box_w = 45, .box_h = 22, .ofs_x = 0, .ofs_y = -2}, + {.bitmap_index = 90610, .adv_w = 336, .box_w = 66, .box_h = 14, .ofs_x = -1, .ofs_y = 2}, + {.bitmap_index = 90839, .adv_w = 336, .box_w = 66, .box_h = 14, .ofs_x = -1, .ofs_y = 2}, + {.bitmap_index = 91073, .adv_w = 384, .box_w = 21, .box_h = 9, .ofs_x = 3, .ofs_y = -3}, + {.bitmap_index = 91146, .adv_w = 384, .box_w = 18, .box_h = 16, .ofs_x = 9, .ofs_y = 1} +}; + +/*--------------------- + * CHARACTER MAPPING + *--------------------*/ + +static const uint16_t unicode_list_1[] = { + 0x0, 0x2f51, 0x4d50, 0x4d59, 0x4d5d, 0x4d7a, 0x4d7d, 0x4ddc, + 0x4df7, 0x4e35, 0x4e68, 0x4e8a, 0x4e9d, 0x4ea3, 0x4ecf, 0x4eeb, + 0x4f0f, 0x4f2d, 0x4f31, 0x4f3e, 0x4f8c, 0x4fac, 0x4fcf, 0x5091, + 0x5098, 0x50b5, 0x50b8, 0x50c3, 0x50d5, 0x50e9, 0x5102, 0x511f, + 0x514a, 0x5150, 0x5156, 0x5157, 0x5170, 0x519d, 0x51c2, 0x51ef, + 0x51f0, 0x51f8, 0x52a5, 0x52a7, 0x52c0, 0x52d2, 0x52db, 0x52ef, + 0x5312, 0x531d, 0x5326, 0x5333, 0x5343, 0x5347, 0x535c, 0x535e, + 0x5361, 0x537f, 0x539a, 0x53dc, 0x5496, 0x5507, 0x562b, 0x562e, + 0x56a7, 0x57ee, 0x5866, 0x586a, 0x5877, 0x5881, 0x591b, 0x5aa8, + 0x5aea, 0x5af2, 0x5b06, 0x5b09, 0x5b0d, 0x5b16, 0x5b48, 0x5b49, + 0x5b4c, 0x5b5f, 0x5b8a, 0x5d35, 0x5d36, 0x5dc4, 0x5ddf, 0x5df6, + 0x5e50, 0x5e5f, 0x5ea3, 0x5ed4, 0x5f75, 0x5fbf, 0x6160, 0x6187, + 0x619b, 0x61a3, 0x61f4, 0x6239, 0x6259, 0x6271, 0x62be, 0x6489, + 0x6498, 0x64a9, 0x64c0, 0x64d7, 0x64e9, 0x6500, 0x6509, 0x6530, + 0x6535, 0x6546, 0x6650, 0x6658, 0x6659, 0x665d, 0x666f, 0x667a, + 0x668a, 0x66a0, 0x66cf, 0x66ec, 0x6757, 0x6796, 0x6971, 0x697a, + 0x6ab2, 0x6ab3, 0x6ab5, 0x6b05, 0x6c09, 0x6c9b, 0x6cd8, 0x6d55, + 0x7009, 0x717c, 0x746f, 0x7478, 0x7485, 0x763e, 0x7735, 0x7751, + 0x77be, 0x7922, 0x794b, 0x795b, 0x79ca, 0x7a26, 0x7a3f, 0x7a7c, + 0x7ad0, 0x7ae7, 0x7af1, 0x7c4b, 0x7df7, 0x7e0f, 0x7e14, 0x7e18, + 0x7e1f, 0x7e23, 0x7e2d, 0x7e2f, 0x7e44, 0x7ebe, 0x7f4b, 0x7fa4, + 0x8059, 0x813a, 0x8241, 0x8307, 0x879c, 0x87b5, 0x8922, 0x8950, + 0x8af1, 0x8af4, 0x8b08, 0x8b0e, 0x8b25, 0x8b2d, 0x8b3d, 0x8b47, + 0x8c75, 0x8c77, 0x8c7d, 0x8cc7, 0x8cda, 0x8ebc, 0x8ec4, 0x8ee3, + 0x8f20, 0x8f24, 0x8f50, 0x8f59, 0x8f6f, 0x9038, 0x911f, 0x9450, + 0x94cf, 0x953d, 0x9544, 0x95b4, 0x97c5, 0x97c9, 0x99c1, 0xefa3, + 0xefa4, 0xefc7, 0xefc8, 0xfe5c, 0xfe6a +}; + +/*Collect the unicode lists and glyph_id offsets*/ +static const lv_font_fmt_txt_cmap_t cmaps[] = +{ + { + .range_start = 32, .range_length = 95, .glyph_id_start = 1, + .unicode_list = NULL, .glyph_id_ofs_list = NULL, .list_length = 0, .type = LV_FONT_FMT_TXT_CMAP_FORMAT0_TINY + }, + { + .range_start = 176, .range_length = 65131, .glyph_id_start = 96, + .unicode_list = unicode_list_1, .glyph_id_ofs_list = NULL, .list_length = 213, .type = LV_FONT_FMT_TXT_CMAP_SPARSE_TINY + } +}; + +/*----------------- + * KERNING + *----------------*/ + + +/*Map glyph_ids to kern left classes*/ +static const uint8_t kern_left_class_mapping[] = +{ + 0, 0, 0, 1, 0, 0, 0, 0, + 1, 2, 0, 0, 0, 3, 4, 3, + 5, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 6, 6, 0, 0, 0, + 0, 0, 7, 8, 9, 10, 11, 12, + 13, 0, 0, 14, 15, 16, 0, 0, + 10, 17, 10, 18, 19, 20, 21, 22, + 23, 24, 25, 26, 2, 27, 0, 0, + 0, 0, 28, 29, 30, 0, 31, 32, + 33, 34, 0, 0, 35, 36, 34, 34, + 29, 29, 37, 38, 39, 40, 37, 41, + 42, 43, 44, 45, 2, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0 +}; + +/*Map glyph_ids to kern right classes*/ +static const uint8_t kern_right_class_mapping[] = +{ + 0, 0, 1, 2, 0, 0, 0, 0, + 2, 0, 3, 4, 0, 5, 6, 7, + 8, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 9, 10, 0, 0, 0, + 11, 0, 12, 0, 13, 0, 0, 0, + 13, 0, 0, 14, 0, 0, 0, 0, + 13, 0, 13, 0, 15, 16, 17, 18, + 19, 20, 21, 22, 0, 23, 3, 0, + 0, 0, 24, 0, 25, 25, 25, 26, + 27, 0, 28, 29, 0, 0, 30, 30, + 25, 30, 25, 30, 31, 32, 33, 34, + 35, 36, 37, 38, 0, 0, 3, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0 +}; + +/*Kern values between classes*/ +static const int8_t kern_class_values[] = +{ + 0, 0, 0, 0, -52, 0, -52, 0, + 0, 0, 0, -26, 0, -43, -4, 0, + 0, 0, 0, -4, 0, 0, 0, 0, + -11, 0, 0, 0, 0, 0, -8, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, -8, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 35, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, -46, 0, -64, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, -43, -10, -30, -15, 0, + -43, 0, 0, 0, -5, 0, 0, 0, + 13, 0, 0, -22, 0, -18, -11, 0, + -8, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, -8, + -9, -22, 0, -8, -4, -13, -30, -8, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, -11, 0, -4, 0, -7, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, -17, -4, -35, 0, 0, + 0, 0, 0, 0, 0, 0, 0, -11, + -12, 0, -4, 8, 8, 0, 0, 2, + -8, 0, 0, 0, 0, 0, 0, 0, + 0, -18, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, -13, 0, 0, 0, 0, 0, + 0, 0, 2, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, -26, 0, -39, + 0, 0, 0, 0, 0, 0, -13, -2, + -4, 0, 0, -26, -6, -7, 0, 0, + -7, -3, -17, 9, 0, -4, 0, 0, + 0, 0, 9, -7, -2, -4, -2, -2, + -4, 0, 0, 0, 0, -13, 0, 0, + 0, 0, 0, 0, 0, 0, 0, -7, + -7, -11, 0, -3, -2, -2, -7, -2, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, -4, 0, -7, -4, -4, -7, 0, + 0, 0, 0, 0, 0, -13, 0, 0, + 0, 0, 0, 0, -13, -4, -11, -7, + -7, -2, -2, -2, -4, -4, 0, 0, + 0, 0, -8, 0, 0, 0, 0, -13, + -4, -7, -4, 0, -7, 0, 0, 0, + 0, -13, 0, 0, 0, -7, 0, 0, + 0, -4, 0, -19, 0, -11, 0, -4, + -2, -9, -8, -8, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, -7, 0, -4, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, -4, 0, 0, 0, + 0, 0, 0, -11, 0, -4, 0, -15, + -4, 0, 0, 0, 0, 0, -34, 0, + -34, -27, 0, 0, 0, -17, -4, -59, + -10, 0, 0, 0, 0, -11, -2, -13, + 0, -15, -7, 0, -11, 0, 0, -8, + -10, -4, -7, -10, -8, -13, -8, -16, + 0, 0, 0, -11, 0, 0, 0, 0, + 0, 0, 0, -2, 0, 0, 0, -8, + 0, -7, -2, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, -11, 0, -11, 0, 0, 0, + 0, 0, 0, -17, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, -11, 0, -17, + 0, -16, 0, 0, 0, 0, -4, -4, + -10, 0, -5, -9, -7, -6, -4, 0, + -8, 0, 0, 0, -4, 0, 0, 0, + -4, 0, 0, -17, -6, -10, -8, -8, + -10, -7, 0, -45, 0, -68, 0, -22, + 0, 0, 0, 0, -17, 0, -13, 0, + -10, -52, -13, -33, -25, 0, -34, 0, + -35, 0, -5, -7, -2, 0, 0, 0, + 0, -10, -4, -18, -15, 0, -18, 0, + 0, 0, 0, 0, -51, -13, -51, -29, + 0, 0, 0, -22, 0, -63, -4, -9, + 0, 0, 0, -11, -4, -30, 0, -17, + -10, 0, -11, 0, 0, 0, -4, 0, + 0, 0, 0, -7, 0, -8, 0, 0, + 0, -4, 0, -13, 0, 0, 0, 0, + 0, -2, 0, -7, -6, -7, 0, 0, + 2, -2, -2, -4, 0, -2, -4, 0, + -2, 0, 0, 0, 0, 0, 0, 0, + 0, -4, 0, -4, 0, 0, 0, -7, + 0, 7, 0, 0, 0, 0, 0, 0, + 0, -7, -7, -8, 0, 0, 0, 0, + -7, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, -11, 0, 0, 0, 0, + 0, -2, 0, 0, 0, 0, -47, -30, + -47, -36, -8, -8, 0, -17, -11, -54, + -15, 0, 0, 0, 0, -8, -7, -22, + 0, -30, -30, -7, -30, 0, 0, -20, + -25, -7, -20, -13, -13, -15, -13, -31, + 0, 0, 0, 0, -8, 0, -8, -12, + 0, 0, 0, -7, 0, -22, -4, 0, + 0, -2, 0, -4, -7, 0, 0, -2, + 0, 0, -4, 0, 0, 0, -2, 0, + 0, 0, 0, -4, 0, 0, 0, 0, + 0, 0, -30, -8, -30, -18, 0, 0, + 0, -7, -4, -30, -4, 0, -4, 4, + 0, 0, 0, -8, 0, -11, -7, 0, + -9, 0, 0, -8, -6, 0, -13, -4, + -4, -7, -4, -10, 0, 0, 0, 0, + -15, -4, -15, -10, 0, 0, 0, 0, + -2, -26, -2, 0, 0, 0, 0, 0, + 0, -2, 0, -7, 0, 0, -4, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, -4, 0, -4, 0, -4, 0, -13, + 0, 0, 0, 0, 0, 0, -9, -2, + -7, -8, -4, 0, 0, 0, 0, 0, + 0, -4, -4, -8, 0, 0, 0, 0, + 0, -8, -4, -8, -7, -4, -8, -7, + 0, 0, 0, 0, -42, -30, -42, -26, + -12, -12, -4, -7, -7, -43, -7, -7, + -4, 0, 0, 0, 0, -11, 0, -30, + -20, 0, -26, 0, 0, -17, -20, -15, + -15, -7, -11, -15, -7, -22, 0, 0, + 0, 0, 0, -13, 0, 0, 0, 0, + 0, -2, -8, -13, -13, 0, -4, -2, + -2, 0, -7, -7, 0, -7, -8, -8, + -6, 0, 0, 0, 0, -7, -9, -7, + -7, -11, -7, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, -35, -11, -22, -11, 0, + -30, 0, 0, 0, 0, 0, 13, 0, + 30, 0, 0, 0, 0, -8, -4, 0, + 4, 0, 0, 0, 0, -22, 0, 0, + 0, 0, 0, 0, -8, 0, 0, 0, + 0, -11, 0, -8, -2, 0, -11, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, -7, 0, 0, 0, 0, 0, 0, + 0, -11, 0, -8, -4, 2, -4, 0, + 0, 0, -8, 0, 0, 0, 0, -25, + 0, -8, 0, -2, -21, 0, -13, -6, + 0, -1, 0, 0, 0, 0, -1, -9, + 0, -2, -2, -9, -2, -3, 0, 0, + 0, 0, 0, -10, 0, 0, 0, 0, + 0, 0, 0, 0, 0, -8, 0, -7, + 0, 0, -11, 0, 0, -4, -10, 0, + -4, 0, 0, 0, 0, -4, 0, 2, + 2, 2, 2, 0, 0, 0, 0, -13, + 0, 4, 0, 0, 0, 0, -4, 0, + 0, -8, -8, -11, 0, -8, -4, 0, + -13, 0, -10, -6, 0, -1, -4, 0, + 0, 0, 0, -4, 0, 0, 0, -4, + 0, 0, 5, 17, 20, 0, -23, -7, + -23, -5, 0, 0, 11, 0, 0, 0, + 0, 20, 0, 28, 20, 13, 24, 0, + 23, -8, -4, 0, -6, 0, -4, 0, + -2, 0, 0, 4, 0, -2, 0, -7, + 0, 0, 5, -13, 0, 0, 0, 18, + 0, 0, -17, 0, 0, 0, 0, -13, + 0, 0, 0, 0, -7, 0, 0, -7, + -7, 0, 0, 0, 17, 0, 0, 0, + 0, -2, -2, 0, 5, -7, 0, 0, + 0, -13, 0, 0, 0, 0, 0, 0, + -4, 0, 0, 0, 0, -11, 0, -4, + 0, 0, -8, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, -9, + 4, -25, 4, 0, 4, 4, -8, 0, + 0, 0, 0, -17, 0, 0, 0, 0, + -6, 0, 0, -4, -9, 0, -4, 0, + -4, 0, 0, -11, -7, 0, 0, -4, + 0, -4, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 4, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, -9, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, -8, + 0, -7, 0, 0, -13, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, -29, -11, -29, -13, 8, 8, + 0, -7, 0, -26, 0, 0, 0, 0, + 0, 0, 0, -4, 4, -11, -4, 0, + -4, 0, 0, 0, -2, 0, 0, 8, + 7, 0, 8, -2, 0, 0, 0, -18, + 0, 4, 0, 0, 0, 0, -7, 0, + 0, 0, 0, -11, 0, -4, 0, 0, + -8, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, -8, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, -13, + 0, 2, 5, 5, -13, 0, 0, 0, + 0, -7, 0, 0, 0, 0, -2, 0, + 0, -9, -7, 0, -4, 0, 0, 0, + -4, -8, 0, 0, 0, -7, 0, 0, + 0, 0, 0, -5, -18, -4, -18, -8, + 0, 0, 0, -5, 0, -17, 0, -8, + 0, -4, 0, 0, -7, -4, 0, -8, + -2, 0, 0, 0, -4, 0, 0, 0, + 0, 0, 0, 0, 0, -11, 0, 0, + 0, -5, -23, 0, -23, -3, 0, 0, + 0, -2, 0, -13, 0, -11, 0, -4, + 0, -7, -11, 0, 0, -4, -2, 0, + 0, 0, -4, 0, 0, 0, 0, 0, + 0, 0, 0, -9, -7, 0, 0, -10, + 4, -7, -4, 0, 0, 4, 0, 0, + -4, 0, -2, -13, 0, -7, 0, -4, + -15, 0, 0, -4, -9, 0, 0, 0, + 0, 0, 0, -11, 0, 0, 0, 0, + -2, 0, 0, 0, 0, 0, -18, 0, + -18, -5, 0, 0, 0, 0, 0, -17, + 0, -8, 0, -2, 0, -2, -4, 0, + 0, -8, -2, 0, 0, 0, -4, 0, + 0, 0, 0, 0, 0, -7, 0, -11, + 0, 0, 0, 0, 0, -8, 0, 0, + 0, 0, 0, 0, 0, 0, 0, -11, + 0, 0, 0, 0, -11, 0, 0, -9, + -4, 0, -2, 0, 0, 0, 0, 0, + -4, -2, 0, 0, -2, 0 +}; + + +/*Collect the kern class' data in one place*/ +static const lv_font_fmt_txt_kern_classes_t kern_classes = +{ + .class_pair_values = kern_class_values, + .left_class_mapping = kern_left_class_mapping, + .right_class_mapping = kern_right_class_mapping, + .left_class_cnt = 45, + .right_class_cnt = 38, +}; + +/*-------------------- + * ALL CUSTOM DATA + *--------------------*/ + +#if LVGL_VERSION_MAJOR == 8 +/*Store all the custom data of the font*/ +static lv_font_fmt_txt_glyph_cache_t cache; +#endif + +#if LVGL_VERSION_MAJOR >= 8 +static const lv_font_fmt_txt_dsc_t font_dsc = { +#else +static lv_font_fmt_txt_dsc_t font_dsc = { +#endif + .glyph_bitmap = glyph_bitmap, + .glyph_dsc = glyph_dsc, + .cmaps = cmaps, + .kern_dsc = &kern_classes, + .kern_scale = 16, + .cmap_num = 2, + .bpp = 4, + .kern_classes = 1, + .bitmap_format = 1, +#if LVGL_VERSION_MAJOR == 8 + .cache = &cache +#endif + +}; + + + +/*----------------- + * PUBLIC FONT + *----------------*/ + +/*Initialize a public general font descriptor*/ +#if LVGL_VERSION_MAJOR >= 8 +const lv_font_t sans_m_24 = { +#else +lv_font_t sans_m_24 = { +#endif + .get_glyph_dsc = lv_font_get_glyph_dsc_fmt_txt, /*Function pointer to get glyph's data*/ + .get_glyph_bitmap = lv_font_get_bitmap_fmt_txt, /*Function pointer to get glyph's bitmap*/ + .line_height = 30, /*The maximum line height required by the font*/ + .base_line = 7, /*Baseline measured from the bottom of the line*/ +#if !(LVGL_VERSION_MAJOR == 6 && LVGL_VERSION_MINOR == 0) + .subpx = LV_FONT_SUBPX_HOR, +#endif +#if LV_VERSION_CHECK(7, 4, 0) || LVGL_VERSION_MAJOR >= 8 + .underline_position = -3, + .underline_thickness = 1, +#endif + .dsc = &font_dsc, /*The custom font data. Will be accessed by `get_glyph_bitmap/dsc` */ +#if LV_VERSION_CHECK(8, 2, 0) || LVGL_VERSION_MAJOR >= 9 + .fallback = NULL, +#endif + .user_data = NULL, +}; + + + +#endif /*#if SANS_M_24*/ diff --git a/fonts/sans_m_30.c b/fonts/sans_m_30.c new file mode 100644 index 0000000..45bf7dc --- /dev/null +++ b/fonts/sans_m_30.c @@ -0,0 +1,900 @@ +/******************************************************************************* + * Size: 30 px + * Bpp: 4 + * Opts: + ******************************************************************************/ + +#ifdef LV_LVGL_H_INCLUDE_SIMPLE +#include "lvgl.h" +#else +#include "lvgl/lvgl.h" +#endif + +#ifndef SANS_M_30 +#define SANS_M_30 1 +#endif + +#if SANS_M_30 + +/*----------------- + * BITMAPS + *----------------*/ + +/*Store the image of the glyphs*/ +static LV_ATTRIBUTE_LARGE_CONST const uint8_t glyph_bitmap[] = { + /* U+002D "-" */ + 0x25, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, + 0x88, 0x88, 0x88, 0x88, 0x52, 0x4, 0x9e, 0xff, + 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, + 0xff, 0xfa, 0x50, 0x49, 0xef, 0xff, 0xff, 0xff, + 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xa5, + 0x0, + + /* U+002E "." */ + 0x0, 0x0, 0x2, 0x69, 0xbc, 0xdc, 0xb9, 0x52, + 0x0, 0x0, 0x0, 0x0, 0x38, 0xef, 0xff, 0xff, + 0xff, 0xff, 0xd7, 0x20, 0x0, 0x0, 0x27, 0xcf, + 0xff, 0xff, 0xff, 0xff, 0xff, 0xb6, 0x0, 0x0, + 0x0, 0x4a, 0xef, 0xff, 0xff, 0xff, 0xff, 0xe9, + 0x30, 0x0, 0x0, 0x0, 0x14, 0x8b, 0xde, 0xfe, + 0xdb, 0x73, 0x10, 0x0, 0x0, + + /* U+0030 "0" */ + 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x13, 0x68, + 0xac, 0xde, 0xef, 0xff, 0xee, 0xdc, 0xa8, 0x64, + 0x20, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, + 0x0, 0x0, 0x0, 0x0, 0x14, 0x8c, 0xef, 0xff, + 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, + 0xfd, 0x95, 0x10, 0x0, 0x0, 0x0, 0x0, 0x0, + 0x0, 0x0, 0x0, 0x27, 0xcf, 0xff, 0xff, 0xff, + 0xff, 0xff, 0xed, 0xdd, 0xef, 0xff, 0xff, 0xff, + 0xff, 0xff, 0xd8, 0x30, 0x0, 0x0, 0x0, 0x0, + 0x0, 0x0, 0x16, 0xbf, 0xff, 0xff, 0xff, 0xfd, + 0xa5, 0x20, 0x0, 0x0, 0x0, 0x24, 0x8c, 0xff, + 0xff, 0xff, 0xff, 0xd7, 0x20, 0x0, 0x0, 0x0, + 0x0, 0x3, 0x8e, 0xff, 0xff, 0xff, 0xfd, 0x83, + 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x2, 0x7c, + 0xff, 0xff, 0xff, 0xff, 0xa4, 0x0, 0x0, 0x0, + 0x0, 0x38, 0xef, 0xff, 0xff, 0xff, 0xb6, 0x10, + 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x5, + 0xaf, 0xff, 0xff, 0xff, 0xfa, 0x40, 0x0, 0x0, + 0x2, 0x7d, 0xff, 0xff, 0xff, 0xfc, 0x72, 0x0, + 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, + 0x5b, 0xff, 0xff, 0xff, 0xfe, 0x93, 0x0, 0x0, + 0x5, 0xaf, 0xff, 0xff, 0xff, 0xf9, 0x40, 0x0, + 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, + 0x28, 0xdf, 0xff, 0xff, 0xff, 0xb6, 0x10, 0x0, + 0x27, 0xcf, 0xff, 0xff, 0xff, 0xd7, 0x20, 0x0, + 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, + 0x6, 0xbf, 0xff, 0xff, 0xff, 0xe8, 0x30, 0x0, + 0x38, 0xdf, 0xff, 0xff, 0xff, 0xb6, 0x10, 0x0, + 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, + 0x5, 0xaf, 0xff, 0xff, 0xff, 0xf9, 0x40, 0x0, + 0x39, 0xef, 0xff, 0xff, 0xff, 0xb6, 0x0, 0x0, + 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, + 0x4, 0xaf, 0xff, 0xff, 0xff, 0xfa, 0x50, 0x0, + 0x39, 0xef, 0xff, 0xff, 0xff, 0xb6, 0x0, 0x0, + 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, + 0x4, 0xaf, 0xff, 0xff, 0xff, 0xfa, 0x50, 0x0, + 0x38, 0xdf, 0xff, 0xff, 0xff, 0xc6, 0x10, 0x0, + 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, + 0x5, 0xaf, 0xff, 0xff, 0xff, 0xe9, 0x40, 0x0, + 0x27, 0xcf, 0xff, 0xff, 0xff, 0xd8, 0x20, 0x0, + 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, + 0x16, 0xbf, 0xff, 0xff, 0xff, 0xd8, 0x30, 0x0, + 0x4, 0xaf, 0xff, 0xff, 0xff, 0xf9, 0x40, 0x0, + 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, + 0x38, 0xdf, 0xff, 0xff, 0xff, 0xb6, 0x10, 0x0, + 0x2, 0x7c, 0xff, 0xff, 0xff, 0xfd, 0x72, 0x0, + 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x1, + 0x6b, 0xff, 0xff, 0xff, 0xfe, 0x83, 0x0, 0x0, + 0x0, 0x38, 0xdf, 0xff, 0xff, 0xff, 0xc6, 0x10, + 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x5, + 0xaf, 0xff, 0xff, 0xff, 0xe9, 0x40, 0x0, 0x0, + 0x0, 0x3, 0x8d, 0xff, 0xff, 0xff, 0xfd, 0x83, + 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x2, 0x7c, + 0xff, 0xff, 0xff, 0xfe, 0x94, 0x0, 0x0, 0x0, + 0x0, 0x0, 0x16, 0xbf, 0xff, 0xff, 0xff, 0xfd, + 0xa5, 0x20, 0x0, 0x0, 0x0, 0x24, 0x9c, 0xff, + 0xff, 0xff, 0xff, 0xc7, 0x20, 0x0, 0x0, 0x0, + 0x0, 0x0, 0x0, 0x26, 0xbf, 0xff, 0xff, 0xff, + 0xff, 0xff, 0xed, 0xcd, 0xef, 0xff, 0xff, 0xff, + 0xff, 0xff, 0xc8, 0x30, 0x0, 0x0, 0x0, 0x0, + 0x0, 0x0, 0x0, 0x0, 0x13, 0x8c, 0xef, 0xff, + 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, + 0xfc, 0x94, 0x10, 0x0, 0x0, 0x0, 0x0, 0x0, + 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x13, 0x68, + 0xac, 0xde, 0xef, 0xff, 0xee, 0xdc, 0xa8, 0x64, + 0x10, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, + + /* U+0031 "1" */ + 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x12, 0x57, + 0xac, 0xef, 0xff, 0xff, 0xfd, 0x82, 0x0, 0x0, + 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x1, 0x36, + 0x89, 0xac, 0xde, 0xff, 0xff, 0xff, 0xff, 0xff, + 0xff, 0xfd, 0x82, 0x0, 0x0, 0x0, 0x0, 0x0, + 0x0, 0x0, 0x0, 0x3, 0x8d, 0xff, 0xff, 0xff, + 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x82, + 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, + 0x3, 0x7c, 0xdd, 0xdd, 0xdd, 0xdd, 0xde, 0xff, + 0xff, 0xff, 0xff, 0xfd, 0x82, 0x0, 0x0, 0x0, + 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, + 0x0, 0x0, 0x0, 0x4, 0x9e, 0xff, 0xff, 0xff, + 0xfd, 0x82, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, + 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, + 0x4, 0x9e, 0xff, 0xff, 0xff, 0xfd, 0x82, 0x0, + 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, + 0x0, 0x0, 0x0, 0x0, 0x0, 0x4, 0x9e, 0xff, + 0xff, 0xff, 0xfd, 0x82, 0x0, 0x0, 0x0, 0x0, + 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, + 0x0, 0x0, 0x4, 0x9e, 0xff, 0xff, 0xff, 0xfd, + 0x82, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, + 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x4, + 0x9e, 0xff, 0xff, 0xff, 0xfd, 0x82, 0x0, 0x0, + 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, + 0x0, 0x0, 0x0, 0x0, 0x4, 0x9e, 0xff, 0xff, + 0xff, 0xfd, 0x82, 0x0, 0x0, 0x0, 0x0, 0x0, + 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, + 0x0, 0x4, 0x9e, 0xff, 0xff, 0xff, 0xfd, 0x82, + 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, + 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x4, 0x9e, + 0xff, 0xff, 0xff, 0xfd, 0x82, 0x0, 0x0, 0x0, + 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, + 0x0, 0x0, 0x0, 0x4, 0x9e, 0xff, 0xff, 0xff, + 0xfd, 0x82, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, + 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, + 0x4, 0x9e, 0xff, 0xff, 0xff, 0xfd, 0x82, 0x0, + 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, + 0x0, 0x0, 0x0, 0x0, 0x0, 0x4, 0x9e, 0xff, + 0xff, 0xff, 0xfd, 0x82, 0x0, 0x0, 0x0, 0x0, + 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, + 0x0, 0x0, 0x4, 0x9e, 0xff, 0xff, 0xff, 0xfd, + 0x82, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, + 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x4, + 0x9e, 0xff, 0xff, 0xff, 0xfd, 0x82, 0x0, 0x0, + 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, + 0x0, 0x0, 0x0, 0x0, 0x4, 0x9e, 0xff, 0xff, + 0xff, 0xfd, 0x82, 0x0, 0x0, 0x0, 0x0, 0x0, + 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, + 0x0, 0x4, 0x9e, 0xff, 0xff, 0xff, 0xfd, 0x82, + 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x15, + 0xad, 0xdd, 0xdd, 0xdd, 0xdd, 0xdd, 0xde, 0xff, + 0xff, 0xff, 0xff, 0xff, 0xee, 0xdd, 0xdd, 0xdd, + 0xdd, 0xdd, 0xb7, 0x20, 0x16, 0xbf, 0xff, 0xff, + 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, + 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xd8, + 0x20, 0x16, 0xbf, 0xff, 0xff, 0xff, 0xff, 0xff, + 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, + 0xff, 0xff, 0xff, 0xff, 0xd8, 0x20, + + /* U+0032 "2" */ + 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x24, 0x68, + 0xab, 0xcd, 0xee, 0xff, 0xfe, 0xdc, 0xba, 0x98, + 0x63, 0x10, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, + 0x0, 0x0, 0x0, 0x1, 0x37, 0xbd, 0xff, 0xff, + 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, + 0xff, 0xec, 0x85, 0x20, 0x0, 0x0, 0x0, 0x0, + 0x0, 0x0, 0x25, 0xae, 0xff, 0xff, 0xff, 0xff, + 0xff, 0xfe, 0xdd, 0xdd, 0xef, 0xff, 0xff, 0xff, + 0xff, 0xff, 0xff, 0xd8, 0x30, 0x0, 0x0, 0x0, + 0x0, 0x3, 0x8d, 0xff, 0xff, 0xff, 0xfd, 0xa7, + 0x42, 0x0, 0x0, 0x0, 0x0, 0x2, 0x59, 0xdf, + 0xff, 0xff, 0xff, 0xff, 0xc7, 0x20, 0x0, 0x0, + 0x0, 0x0, 0x1, 0x49, 0xde, 0xc8, 0x41, 0x0, + 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x16, + 0xbf, 0xff, 0xff, 0xff, 0xfd, 0x72, 0x0, 0x0, + 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, + 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, + 0x5a, 0xff, 0xff, 0xff, 0xff, 0xa5, 0x0, 0x0, + 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, + 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, + 0x28, 0xdf, 0xff, 0xff, 0xff, 0xc7, 0x20, 0x0, + 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, + 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, + 0x39, 0xef, 0xff, 0xff, 0xff, 0xb6, 0x10, 0x0, + 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, + 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x1, + 0x7c, 0xff, 0xff, 0xff, 0xfe, 0x83, 0x0, 0x0, + 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, + 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x27, + 0xcf, 0xff, 0xff, 0xff, 0xe9, 0x40, 0x0, 0x0, + 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, + 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x4, 0xae, + 0xff, 0xff, 0xff, 0xfd, 0x82, 0x0, 0x0, 0x0, + 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, + 0x0, 0x0, 0x0, 0x0, 0x0, 0x4, 0x9d, 0xff, + 0xff, 0xff, 0xfe, 0xa5, 0x10, 0x0, 0x0, 0x0, + 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, + 0x0, 0x0, 0x0, 0x0, 0x14, 0x9e, 0xff, 0xff, + 0xff, 0xff, 0xb6, 0x10, 0x0, 0x0, 0x0, 0x0, + 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, + 0x0, 0x0, 0x0, 0x26, 0xbe, 0xff, 0xff, 0xff, + 0xfe, 0xa5, 0x10, 0x0, 0x0, 0x0, 0x0, 0x0, + 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, + 0x0, 0x1, 0x49, 0xdf, 0xff, 0xff, 0xff, 0xfd, + 0x83, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, + 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, + 0x13, 0x8d, 0xff, 0xff, 0xff, 0xff, 0xfb, 0x62, + 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, + 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x1, 0x48, + 0xcf, 0xff, 0xff, 0xff, 0xff, 0xc8, 0x31, 0x0, + 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, + 0x0, 0x0, 0x0, 0x0, 0x0, 0x14, 0x9d, 0xff, + 0xff, 0xff, 0xff, 0xfc, 0x84, 0x10, 0x0, 0x0, + 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, + 0x0, 0x0, 0x0, 0x2, 0x5a, 0xdf, 0xff, 0xff, + 0xff, 0xff, 0xc8, 0x41, 0x0, 0x0, 0x0, 0x0, + 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, + 0x0, 0x0, 0x37, 0xbe, 0xff, 0xff, 0xff, 0xff, + 0xff, 0xfe, 0xdc, 0xcc, 0xcd, 0xdd, 0xde, 0xee, + 0xee, 0xee, 0xee, 0xee, 0xee, 0xee, 0xec, 0x83, + 0x0, 0x5, 0xaf, 0xff, 0xff, 0xff, 0xff, 0xff, + 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, + 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0x83, + 0x0, 0x5, 0xaf, 0xff, 0xff, 0xff, 0xff, 0xff, + 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, + 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0x83, + + /* U+0033 "3" */ + 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x13, 0x57, + 0x9b, 0xcd, 0xee, 0xff, 0xfe, 0xed, 0xcc, 0xba, + 0x86, 0x31, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, + 0x0, 0x0, 0x0, 0x0, 0x26, 0x9c, 0xff, 0xff, + 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, + 0xff, 0xff, 0xeb, 0x73, 0x0, 0x0, 0x0, 0x0, + 0x0, 0x0, 0x25, 0xad, 0xff, 0xff, 0xff, 0xff, + 0xff, 0xff, 0xed, 0xdd, 0xde, 0xef, 0xff, 0xff, + 0xff, 0xff, 0xff, 0xfe, 0xb6, 0x20, 0x0, 0x0, + 0x0, 0x0, 0x1, 0x5a, 0xdf, 0xff, 0xfd, 0xa7, + 0x42, 0x10, 0x0, 0x0, 0x0, 0x0, 0x24, 0x8c, + 0xff, 0xff, 0xff, 0xff, 0xff, 0x94, 0x0, 0x0, + 0x0, 0x0, 0x0, 0x0, 0x25, 0x65, 0x20, 0x0, + 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x1, + 0x6c, 0xff, 0xff, 0xff, 0xff, 0xd7, 0x20, 0x0, + 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, + 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, + 0x38, 0xdf, 0xff, 0xff, 0xff, 0xf9, 0x40, 0x0, + 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, + 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, + 0x5a, 0xff, 0xff, 0xff, 0xff, 0xc7, 0x20, 0x0, + 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, + 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x1, 0x49, + 0xdf, 0xff, 0xff, 0xff, 0xfc, 0x61, 0x0, 0x0, + 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, + 0x0, 0x0, 0x11, 0x23, 0x46, 0x8a, 0xce, 0xff, + 0xff, 0xff, 0xff, 0xeb, 0x62, 0x0, 0x0, 0x0, + 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x4, + 0x9e, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, + 0xfe, 0xca, 0x74, 0x10, 0x0, 0x0, 0x0, 0x0, + 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x4, + 0x9e, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, + 0xdb, 0x85, 0x31, 0x0, 0x0, 0x0, 0x0, 0x0, + 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x2, + 0x58, 0x99, 0xaa, 0xbb, 0xcd, 0xef, 0xff, 0xff, + 0xff, 0xff, 0xff, 0xda, 0x52, 0x0, 0x0, 0x0, + 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, + 0x0, 0x0, 0x0, 0x0, 0x0, 0x1, 0x24, 0x7a, + 0xdf, 0xff, 0xff, 0xff, 0xfe, 0xa5, 0x10, 0x0, + 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, + 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, + 0x26, 0xbe, 0xff, 0xff, 0xff, 0xfe, 0x94, 0x0, + 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, + 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, + 0x0, 0x49, 0xff, 0xff, 0xff, 0xff, 0xe8, 0x30, + 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, + 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, + 0x0, 0x17, 0xcf, 0xff, 0xff, 0xff, 0xfb, 0x50, + 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, + 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, + 0x0, 0x49, 0xef, 0xff, 0xff, 0xff, 0xfa, 0x50, + 0x0, 0x0, 0x15, 0xbe, 0xeb, 0x73, 0x10, 0x0, + 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, + 0x15, 0xbe, 0xff, 0xff, 0xff, 0xff, 0xc7, 0x20, + 0x0, 0x27, 0xcf, 0xff, 0xff, 0xff, 0xeb, 0x86, + 0x42, 0x0, 0x0, 0x0, 0x0, 0x0, 0x24, 0x7a, + 0xdf, 0xff, 0xff, 0xff, 0xff, 0xeb, 0x51, 0x0, + 0x0, 0x14, 0x9d, 0xff, 0xff, 0xff, 0xff, 0xff, + 0xff, 0xff, 0xee, 0xdd, 0xee, 0xff, 0xff, 0xff, + 0xff, 0xff, 0xff, 0xff, 0xd9, 0x41, 0x0, 0x0, + 0x0, 0x0, 0x0, 0x36, 0x9c, 0xef, 0xff, 0xff, + 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, + 0xff, 0xff, 0xeb, 0x95, 0x20, 0x0, 0x0, 0x0, + 0x0, 0x0, 0x0, 0x0, 0x0, 0x2, 0x45, 0x79, + 0xbc, 0xcd, 0xee, 0xff, 0xfe, 0xed, 0xcb, 0xaa, + 0x86, 0x41, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, + + /* U+0034 "4" */ + 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, + 0x0, 0x0, 0x0, 0x0, 0x0, 0x49, 0xef, 0xff, + 0xff, 0xff, 0xff, 0xfb, 0x50, 0x0, 0x0, 0x0, + 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, + 0x0, 0x0, 0x0, 0x0, 0x0, 0x4, 0x9d, 0xff, + 0xff, 0xff, 0xff, 0xff, 0xff, 0xb5, 0x0, 0x0, + 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, + 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x38, 0xdf, + 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfb, 0x50, + 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, + 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x3, 0x8d, + 0xff, 0xff, 0xff, 0xdd, 0xdf, 0xff, 0xff, 0xff, + 0xb5, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, + 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x38, + 0xdf, 0xff, 0xff, 0xfe, 0x95, 0x7b, 0xff, 0xff, + 0xff, 0xfb, 0x50, 0x0, 0x0, 0x0, 0x0, 0x0, + 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x2, + 0x7c, 0xff, 0xff, 0xff, 0xfc, 0x61, 0x17, 0xcf, + 0xff, 0xff, 0xff, 0xb5, 0x0, 0x0, 0x0, 0x0, + 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, + 0x27, 0xcf, 0xff, 0xff, 0xff, 0xd8, 0x30, 0x2, + 0x7d, 0xff, 0xff, 0xff, 0xfb, 0x50, 0x0, 0x0, + 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, + 0x2, 0x6c, 0xff, 0xff, 0xff, 0xfe, 0x94, 0x0, + 0x0, 0x28, 0xdf, 0xff, 0xff, 0xff, 0xb5, 0x0, + 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, + 0x0, 0x16, 0xbf, 0xff, 0xff, 0xff, 0xe9, 0x40, + 0x0, 0x0, 0x2, 0x8d, 0xff, 0xff, 0xff, 0xfb, + 0x50, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, + 0x0, 0x1, 0x6b, 0xff, 0xff, 0xff, 0xfe, 0x94, + 0x0, 0x0, 0x0, 0x0, 0x28, 0xdf, 0xff, 0xff, + 0xff, 0xb5, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, + 0x0, 0x0, 0x15, 0xbe, 0xff, 0xff, 0xff, 0xe9, + 0x40, 0x0, 0x0, 0x0, 0x0, 0x2, 0x8d, 0xff, + 0xff, 0xff, 0xfb, 0x50, 0x0, 0x0, 0x0, 0x0, + 0x0, 0x0, 0x1, 0x5a, 0xef, 0xff, 0xff, 0xfe, + 0x94, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x28, + 0xdf, 0xff, 0xff, 0xff, 0xb5, 0x0, 0x0, 0x0, + 0x0, 0x0, 0x0, 0x15, 0xae, 0xff, 0xff, 0xff, + 0xe9, 0x40, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, + 0x2, 0x8d, 0xff, 0xff, 0xff, 0xfb, 0x50, 0x0, + 0x0, 0x0, 0x0, 0x0, 0x49, 0xef, 0xff, 0xff, + 0xff, 0xfd, 0xba, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, + 0xaa, 0xaa, 0xbd, 0xff, 0xff, 0xff, 0xff, 0xec, + 0xba, 0xaa, 0xaa, 0x95, 0x20, 0x16, 0xbf, 0xff, + 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, + 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, + 0xff, 0xff, 0xff, 0xff, 0xfd, 0x83, 0x1, 0x6b, + 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, + 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, + 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xd8, 0x30, + 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, + 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x2, 0x8d, + 0xff, 0xff, 0xff, 0xfb, 0x50, 0x0, 0x0, 0x0, + 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, + 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, + 0x28, 0xdf, 0xff, 0xff, 0xff, 0xb5, 0x0, 0x0, + 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, + 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, + 0x0, 0x2, 0x8d, 0xff, 0xff, 0xff, 0xfb, 0x50, + 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, + 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, + 0x0, 0x0, 0x0, 0x28, 0xdf, 0xff, 0xff, 0xff, + 0xb5, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, + 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, + 0x0, 0x0, 0x0, 0x0, 0x2, 0x8d, 0xff, 0xff, + 0xff, 0xfb, 0x50, 0x0, 0x0, 0x0, 0x0, 0x0, + 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, + 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x28, 0xdf, + 0xff, 0xff, 0xff, 0xb5, 0x0, 0x0, 0x0, 0x0, + 0x0, + + /* U+0035 "5" */ + 0x0, 0x0, 0x0, 0x0, 0x27, 0xcf, 0xff, 0xff, + 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, + 0xff, 0xff, 0xff, 0xff, 0xff, 0xc6, 0x10, 0x0, + 0x0, 0x0, 0x0, 0x0, 0x38, 0xdf, 0xff, 0xff, + 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, + 0xff, 0xff, 0xff, 0xff, 0xff, 0xc6, 0x10, 0x0, + 0x0, 0x0, 0x0, 0x0, 0x49, 0xef, 0xff, 0xff, + 0xff, 0xff, 0xee, 0xee, 0xee, 0xee, 0xee, 0xee, + 0xee, 0xee, 0xee, 0xee, 0xee, 0xb6, 0x10, 0x0, + 0x0, 0x0, 0x0, 0x0, 0x5a, 0xff, 0xff, 0xff, + 0xfd, 0x82, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, + 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, + 0x0, 0x0, 0x0, 0x0, 0x6b, 0xff, 0xff, 0xff, + 0xfc, 0x61, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, + 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, + 0x0, 0x0, 0x0, 0x1, 0x7c, 0xff, 0xff, 0xff, + 0xfa, 0x50, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, + 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, + 0x0, 0x0, 0x0, 0x2, 0x8d, 0xff, 0xff, 0xff, + 0xe9, 0x30, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, + 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, + 0x0, 0x0, 0x0, 0x4, 0x9e, 0xff, 0xff, 0xff, + 0xc7, 0x21, 0x34, 0x56, 0x77, 0x77, 0x65, 0x44, + 0x32, 0x10, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, + 0x0, 0x0, 0x0, 0x5, 0xaf, 0xff, 0xff, 0xff, + 0xfe, 0xef, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, + 0xff, 0xfd, 0xa7, 0x41, 0x0, 0x0, 0x0, 0x0, + 0x0, 0x0, 0x0, 0x6, 0xbf, 0xff, 0xff, 0xff, + 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, + 0xff, 0xff, 0xff, 0xfe, 0xb6, 0x10, 0x0, 0x0, + 0x0, 0x0, 0x0, 0x1, 0x48, 0xbe, 0xff, 0xeb, + 0x96, 0x43, 0x21, 0x0, 0x12, 0x24, 0x58, 0xbe, + 0xff, 0xff, 0xff, 0xff, 0xff, 0xb6, 0x20, 0x0, + 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x11, 0x0, + 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x1, + 0x5a, 0xef, 0xff, 0xff, 0xff, 0xff, 0xa4, 0x0, + 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, + 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, + 0x1, 0x6b, 0xff, 0xff, 0xff, 0xff, 0xe9, 0x40, + 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, + 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, + 0x0, 0x27, 0xdf, 0xff, 0xff, 0xff, 0xfb, 0x61, + 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, + 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, + 0x0, 0x5, 0xbf, 0xff, 0xff, 0xff, 0xfc, 0x72, + 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, + 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, + 0x0, 0x27, 0xdf, 0xff, 0xff, 0xff, 0xfb, 0x60, + 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, + 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, + 0x1, 0x6b, 0xff, 0xff, 0xff, 0xff, 0xe8, 0x30, + 0x0, 0x0, 0x15, 0xbe, 0xd9, 0x52, 0x0, 0x0, + 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x1, + 0x4a, 0xef, 0xff, 0xff, 0xff, 0xfe, 0x83, 0x0, + 0x0, 0x27, 0xcf, 0xff, 0xff, 0xff, 0xda, 0x75, + 0x31, 0x0, 0x0, 0x0, 0x0, 0x2, 0x47, 0xad, + 0xff, 0xff, 0xff, 0xff, 0xfe, 0x94, 0x0, 0x0, + 0x0, 0x25, 0xad, 0xff, 0xff, 0xff, 0xff, 0xff, + 0xff, 0xff, 0xee, 0xde, 0xef, 0xff, 0xff, 0xff, + 0xff, 0xff, 0xff, 0xfd, 0x94, 0x0, 0x0, 0x0, + 0x0, 0x0, 0x1, 0x36, 0x9c, 0xef, 0xff, 0xff, + 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, + 0xff, 0xfd, 0xa7, 0x41, 0x0, 0x0, 0x0, 0x0, + 0x0, 0x0, 0x0, 0x0, 0x0, 0x2, 0x45, 0x79, + 0xac, 0xcd, 0xde, 0xff, 0xfe, 0xdc, 0xba, 0x98, + 0x74, 0x20, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, + + /* U+0036 "6" */ + 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x1, + 0x35, 0x79, 0xac, 0xde, 0xef, 0xff, 0xfe, 0xdd, + 0xca, 0x86, 0x42, 0x0, 0x0, 0x0, 0x0, 0x0, + 0x0, 0x0, 0x0, 0x0, 0x0, 0x1, 0x59, 0xce, + 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, + 0xff, 0xff, 0xff, 0xd9, 0x62, 0x0, 0x0, 0x0, + 0x0, 0x0, 0x0, 0x0, 0x25, 0xae, 0xff, 0xff, + 0xff, 0xff, 0xff, 0xff, 0xff, 0xee, 0xef, 0xff, + 0xff, 0xff, 0xff, 0xff, 0xfc, 0x72, 0x0, 0x0, + 0x0, 0x0, 0x0, 0x26, 0xcf, 0xff, 0xff, 0xff, + 0xff, 0xd9, 0x64, 0x21, 0x0, 0x0, 0x0, 0x12, + 0x36, 0x9c, 0xef, 0xda, 0x51, 0x0, 0x0, 0x0, + 0x0, 0x0, 0x15, 0xbf, 0xff, 0xff, 0xff, 0xfd, + 0x83, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, + 0x0, 0x0, 0x11, 0x10, 0x0, 0x0, 0x0, 0x0, + 0x0, 0x1, 0x6c, 0xff, 0xff, 0xff, 0xfd, 0x83, + 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, + 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, + 0x0, 0x17, 0xcf, 0xff, 0xff, 0xff, 0xc7, 0x20, + 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, + 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, + 0x0, 0x5a, 0xff, 0xff, 0xff, 0xfd, 0x82, 0x0, + 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, + 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, + 0x3, 0x8d, 0xff, 0xff, 0xff, 0xfa, 0x40, 0x0, + 0x2, 0x57, 0x9b, 0xde, 0xff, 0xfe, 0xdc, 0xba, + 0x98, 0x52, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, + 0x4, 0x9f, 0xff, 0xff, 0xff, 0xe8, 0x43, 0x6b, + 0xef, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, + 0xff, 0xff, 0xdb, 0x73, 0x0, 0x0, 0x0, 0x0, + 0x5, 0xaf, 0xff, 0xff, 0xff, 0xed, 0xde, 0xff, + 0xff, 0xfd, 0xba, 0x99, 0x9a, 0xbc, 0xde, 0xff, + 0xff, 0xff, 0xff, 0xfd, 0x93, 0x0, 0x0, 0x0, + 0x16, 0xbf, 0xff, 0xff, 0xff, 0xff, 0xff, 0xda, + 0x63, 0x0, 0x0, 0x0, 0x0, 0x0, 0x1, 0x49, + 0xcf, 0xff, 0xff, 0xff, 0xfd, 0x72, 0x0, 0x0, + 0x5, 0xaf, 0xff, 0xff, 0xff, 0xfe, 0xa5, 0x10, + 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, + 0x39, 0xef, 0xff, 0xff, 0xff, 0xc7, 0x20, 0x0, + 0x4, 0x9f, 0xff, 0xff, 0xff, 0xf9, 0x40, 0x0, + 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, + 0x4, 0x9e, 0xff, 0xff, 0xff, 0xe9, 0x40, 0x0, + 0x2, 0x7d, 0xff, 0xff, 0xff, 0xfc, 0x71, 0x0, + 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, + 0x2, 0x7c, 0xff, 0xff, 0xff, 0xfc, 0x61, 0x0, + 0x0, 0x49, 0xef, 0xff, 0xff, 0xff, 0x94, 0x0, + 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, + 0x2, 0x7d, 0xff, 0xff, 0xff, 0xfc, 0x61, 0x0, + 0x0, 0x5, 0xaf, 0xff, 0xff, 0xff, 0xea, 0x50, + 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, + 0x5, 0xaf, 0xff, 0xff, 0xff, 0xfa, 0x40, 0x0, + 0x0, 0x0, 0x49, 0xef, 0xff, 0xff, 0xff, 0xc7, + 0x20, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x1, + 0x6b, 0xff, 0xff, 0xff, 0xff, 0xb5, 0x0, 0x0, + 0x0, 0x0, 0x1, 0x6b, 0xff, 0xff, 0xff, 0xff, + 0xea, 0x62, 0x0, 0x0, 0x0, 0x0, 0x13, 0x8c, + 0xef, 0xff, 0xff, 0xff, 0xd8, 0x30, 0x0, 0x0, + 0x0, 0x0, 0x0, 0x2, 0x6b, 0xef, 0xff, 0xff, + 0xff, 0xff, 0xfe, 0xdb, 0xbb, 0xce, 0xff, 0xff, + 0xff, 0xff, 0xff, 0xd8, 0x30, 0x0, 0x0, 0x0, + 0x0, 0x0, 0x0, 0x0, 0x0, 0x26, 0xad, 0xff, + 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, + 0xff, 0xec, 0x84, 0x20, 0x0, 0x0, 0x0, 0x0, + 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x24, + 0x78, 0xac, 0xde, 0xef, 0xff, 0xfe, 0xdc, 0xa9, + 0x63, 0x10, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, + + /* U+0037 "7" */ + 0x38, 0xdf, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, + 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, + 0xff, 0xff, 0xff, 0xff, 0xff, 0xfa, 0x50, 0x0, + 0x38, 0xdf, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, + 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, + 0xff, 0xff, 0xff, 0xff, 0xff, 0xfa, 0x50, 0x0, + 0x27, 0xce, 0xee, 0xee, 0xee, 0xee, 0xee, 0xee, + 0xee, 0xee, 0xee, 0xee, 0xee, 0xee, 0xee, 0xee, + 0xff, 0xff, 0xff, 0xff, 0xff, 0xb6, 0x20, 0x0, + 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, + 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x38, + 0xdf, 0xff, 0xff, 0xfe, 0xa5, 0x10, 0x0, 0x0, + 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, + 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x38, 0xdf, + 0xff, 0xff, 0xfe, 0x94, 0x0, 0x0, 0x0, 0x0, + 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, + 0x0, 0x0, 0x0, 0x0, 0x0, 0x28, 0xdf, 0xff, + 0xff, 0xfe, 0xa4, 0x10, 0x0, 0x0, 0x0, 0x0, + 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, + 0x0, 0x0, 0x0, 0x0, 0x16, 0xbf, 0xff, 0xff, + 0xff, 0xb5, 0x10, 0x0, 0x0, 0x0, 0x0, 0x0, + 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, + 0x0, 0x0, 0x0, 0x4, 0x9e, 0xff, 0xff, 0xff, + 0xd8, 0x30, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, + 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, + 0x0, 0x0, 0x0, 0x5a, 0xff, 0xff, 0xff, 0xfb, + 0x61, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, + 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, + 0x0, 0x0, 0x16, 0xbf, 0xff, 0xff, 0xff, 0xa4, + 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, + 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, + 0x0, 0x2, 0x7d, 0xff, 0xff, 0xff, 0xe9, 0x40, + 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, + 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, + 0x0, 0x38, 0xef, 0xff, 0xff, 0xff, 0xa5, 0x0, + 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, + 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, + 0x2, 0x7d, 0xff, 0xff, 0xff, 0xfc, 0x71, 0x0, + 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, + 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, + 0x5, 0xbf, 0xff, 0xff, 0xff, 0xe9, 0x40, 0x0, + 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, + 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, + 0x49, 0xef, 0xff, 0xff, 0xff, 0xb6, 0x10, 0x0, + 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, + 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x2, + 0x7c, 0xff, 0xff, 0xff, 0xfd, 0x83, 0x0, 0x0, + 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, + 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x5, + 0xaf, 0xff, 0xff, 0xff, 0xfb, 0x60, 0x0, 0x0, + 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, + 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x17, + 0xcf, 0xff, 0xff, 0xff, 0xf9, 0x40, 0x0, 0x0, + 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, + 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x38, + 0xef, 0xff, 0xff, 0xff, 0xd8, 0x30, 0x0, 0x0, + 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, + 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x4a, + 0xff, 0xff, 0xff, 0xff, 0xc7, 0x20, 0x0, 0x0, + 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, + 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x1, 0x6b, + 0xff, 0xff, 0xff, 0xff, 0xb6, 0x10, 0x0, 0x0, + 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, + 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x2, 0x7d, + 0xff, 0xff, 0xff, 0xff, 0xa5, 0x0, 0x0, 0x0, + 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, + + /* U+0038 "8" */ + 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x13, 0x68, + 0xab, 0xcd, 0xde, 0xff, 0xed, 0xcc, 0xba, 0x86, + 0x41, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, + 0x0, 0x0, 0x0, 0x0, 0x26, 0xad, 0xff, 0xff, + 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, + 0xff, 0xda, 0x62, 0x0, 0x0, 0x0, 0x0, 0x0, + 0x0, 0x0, 0x0, 0x49, 0xdf, 0xff, 0xff, 0xff, + 0xff, 0xdb, 0xa9, 0x88, 0x9a, 0xcd, 0xff, 0xff, + 0xff, 0xff, 0xfd, 0x83, 0x0, 0x0, 0x0, 0x0, + 0x0, 0x0, 0x38, 0xdf, 0xff, 0xff, 0xff, 0xea, + 0x51, 0x0, 0x0, 0x0, 0x0, 0x0, 0x25, 0xae, + 0xff, 0xff, 0xff, 0xfc, 0x72, 0x0, 0x0, 0x0, + 0x0, 0x1, 0x6b, 0xff, 0xff, 0xff, 0xfb, 0x60, + 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x15, + 0xaf, 0xff, 0xff, 0xff, 0xb5, 0x0, 0x0, 0x0, + 0x0, 0x4, 0x9e, 0xff, 0xff, 0xff, 0xd8, 0x20, + 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x1, + 0x6c, 0xff, 0xff, 0xff, 0xd8, 0x20, 0x0, 0x0, + 0x0, 0x2, 0x7c, 0xff, 0xff, 0xff, 0xfa, 0x40, + 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x1, + 0x6c, 0xff, 0xff, 0xff, 0xc6, 0x10, 0x0, 0x0, + 0x0, 0x0, 0x38, 0xdf, 0xff, 0xff, 0xfe, 0xa5, + 0x10, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x5, + 0xaf, 0xff, 0xff, 0xfd, 0x72, 0x0, 0x0, 0x0, + 0x0, 0x0, 0x1, 0x49, 0xdf, 0xff, 0xff, 0xff, + 0xc8, 0x41, 0x0, 0x0, 0x0, 0x0, 0x1, 0x5a, + 0xef, 0xff, 0xfe, 0xa4, 0x0, 0x0, 0x0, 0x0, + 0x0, 0x0, 0x0, 0x0, 0x15, 0xad, 0xff, 0xff, + 0xff, 0xff, 0xda, 0x74, 0x20, 0x1, 0x5a, 0xef, + 0xff, 0xfd, 0x83, 0x0, 0x0, 0x0, 0x0, 0x0, + 0x0, 0x0, 0x0, 0x0, 0x0, 0x3, 0x8d, 0xff, + 0xff, 0xff, 0xff, 0xff, 0xff, 0xee, 0xff, 0xff, + 0xd9, 0x41, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, + 0x0, 0x0, 0x0, 0x2, 0x59, 0xdf, 0xff, 0xff, + 0xec, 0xbc, 0xef, 0xff, 0xff, 0xff, 0xff, 0xff, + 0xff, 0xda, 0x63, 0x10, 0x0, 0x0, 0x0, 0x0, + 0x0, 0x0, 0x26, 0xbe, 0xff, 0xff, 0xfd, 0x94, + 0x10, 0x0, 0x1, 0x24, 0x7a, 0xce, 0xff, 0xff, + 0xff, 0xff, 0xff, 0xc8, 0x30, 0x0, 0x0, 0x0, + 0x0, 0x27, 0xcf, 0xff, 0xff, 0xfd, 0x72, 0x0, + 0x0, 0x0, 0x0, 0x0, 0x0, 0x1, 0x36, 0xbe, + 0xff, 0xff, 0xff, 0xff, 0xd9, 0x30, 0x0, 0x0, + 0x4, 0x9e, 0xff, 0xff, 0xff, 0xb6, 0x0, 0x0, + 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x2, + 0x7c, 0xff, 0xff, 0xff, 0xff, 0xb5, 0x10, 0x0, + 0x27, 0xcf, 0xff, 0xff, 0xfd, 0x82, 0x0, 0x0, + 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, + 0x16, 0xbf, 0xff, 0xff, 0xff, 0xe9, 0x30, 0x0, + 0x49, 0xef, 0xff, 0xff, 0xfe, 0x83, 0x0, 0x0, + 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, + 0x4, 0x9f, 0xff, 0xff, 0xff, 0xfa, 0x50, 0x0, + 0x27, 0xcf, 0xff, 0xff, 0xff, 0xd8, 0x30, 0x0, + 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, + 0x28, 0xdf, 0xff, 0xff, 0xff, 0xe9, 0x30, 0x0, + 0x2, 0x6c, 0xff, 0xff, 0xff, 0xff, 0xea, 0x63, + 0x10, 0x0, 0x0, 0x0, 0x0, 0x0, 0x1, 0x49, + 0xdf, 0xff, 0xff, 0xff, 0xfd, 0x83, 0x0, 0x0, + 0x0, 0x1, 0x5a, 0xef, 0xff, 0xff, 0xff, 0xff, + 0xfd, 0xba, 0x99, 0x88, 0x99, 0xac, 0xef, 0xff, + 0xff, 0xff, 0xff, 0xfc, 0x73, 0x0, 0x0, 0x0, + 0x0, 0x0, 0x0, 0x36, 0x9c, 0xef, 0xff, 0xff, + 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, + 0xff, 0xfd, 0xb7, 0x41, 0x0, 0x0, 0x0, 0x0, + 0x0, 0x0, 0x0, 0x0, 0x0, 0x2, 0x47, 0x9a, + 0xbb, 0xcd, 0xef, 0xff, 0xed, 0xdc, 0xba, 0x98, + 0x63, 0x10, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, + + /* U+0039 "9" */ + 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x35, + 0x89, 0xab, 0xcd, 0xef, 0xfe, 0xed, 0xcb, 0x97, + 0x52, 0x10, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, + 0x0, 0x0, 0x0, 0x0, 0x1, 0x47, 0xbe, 0xff, + 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, + 0xff, 0xec, 0x84, 0x10, 0x0, 0x0, 0x0, 0x0, + 0x0, 0x0, 0x0, 0x2, 0x7c, 0xff, 0xff, 0xff, + 0xff, 0xff, 0xed, 0xcb, 0xcd, 0xef, 0xff, 0xff, + 0xff, 0xff, 0xff, 0xd8, 0x30, 0x0, 0x0, 0x0, + 0x0, 0x0, 0x2, 0x7c, 0xff, 0xff, 0xff, 0xff, + 0xc8, 0x41, 0x0, 0x0, 0x0, 0x0, 0x14, 0x8c, + 0xef, 0xff, 0xff, 0xff, 0xd9, 0x30, 0x0, 0x0, + 0x0, 0x0, 0x4a, 0xff, 0xff, 0xff, 0xff, 0xc6, + 0x20, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, + 0x49, 0xef, 0xff, 0xff, 0xff, 0xb6, 0x10, 0x0, + 0x0, 0x3, 0x8e, 0xff, 0xff, 0xff, 0xfb, 0x60, + 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, + 0x2, 0x6c, 0xff, 0xff, 0xff, 0xfd, 0x72, 0x0, + 0x0, 0x5, 0xaf, 0xff, 0xff, 0xff, 0xe8, 0x30, + 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, + 0x0, 0x17, 0xcf, 0xff, 0xff, 0xff, 0xb6, 0x10, + 0x0, 0x4, 0x9f, 0xff, 0xff, 0xff, 0xe9, 0x30, + 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, + 0x0, 0x4, 0x9e, 0xff, 0xff, 0xff, 0xf9, 0x40, + 0x0, 0x2, 0x7c, 0xff, 0xff, 0xff, 0xfb, 0x61, + 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, + 0x0, 0x3, 0x8d, 0xff, 0xff, 0xff, 0xfb, 0x61, + 0x0, 0x0, 0x49, 0xff, 0xff, 0xff, 0xff, 0xd8, + 0x30, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, + 0x15, 0xad, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x72, + 0x0, 0x0, 0x2, 0x7c, 0xff, 0xff, 0xff, 0xff, + 0xec, 0x85, 0x32, 0x10, 0x0, 0x13, 0x47, 0x9c, + 0xef, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x72, + 0x0, 0x0, 0x0, 0x3, 0x8d, 0xff, 0xff, 0xff, + 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, + 0xfe, 0xb7, 0x8c, 0xff, 0xff, 0xff, 0xfc, 0x71, + 0x0, 0x0, 0x0, 0x0, 0x0, 0x36, 0x9c, 0xef, + 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0xb8, + 0x41, 0x2, 0x7c, 0xff, 0xff, 0xff, 0xfb, 0x60, + 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x1, + 0x23, 0x45, 0x67, 0x77, 0x65, 0x42, 0x10, 0x0, + 0x0, 0x4, 0x9e, 0xff, 0xff, 0xff, 0xf9, 0x40, + 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, + 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, + 0x0, 0x27, 0xcf, 0xff, 0xff, 0xff, 0xb6, 0x10, + 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, + 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, + 0x1, 0x7c, 0xff, 0xff, 0xff, 0xfd, 0x82, 0x0, + 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, + 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, + 0x38, 0xdf, 0xff, 0xff, 0xff, 0xd7, 0x20, 0x0, + 0x0, 0x0, 0x0, 0x0, 0x2, 0x32, 0x10, 0x0, + 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x37, + 0xcf, 0xff, 0xff, 0xff, 0xfc, 0x61, 0x0, 0x0, + 0x0, 0x0, 0x0, 0x14, 0x9d, 0xff, 0xeb, 0x74, + 0x21, 0x0, 0x0, 0x0, 0x2, 0x35, 0x8c, 0xef, + 0xff, 0xff, 0xff, 0xfd, 0x83, 0x0, 0x0, 0x0, + 0x0, 0x0, 0x16, 0xbf, 0xff, 0xff, 0xff, 0xff, + 0xff, 0xff, 0xee, 0xef, 0xff, 0xff, 0xff, 0xff, + 0xff, 0xff, 0xeb, 0x72, 0x0, 0x0, 0x0, 0x0, + 0x0, 0x0, 0x0, 0x14, 0x8b, 0xef, 0xff, 0xff, + 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, + 0xfd, 0xa6, 0x20, 0x0, 0x0, 0x0, 0x0, 0x0, + 0x0, 0x0, 0x0, 0x0, 0x0, 0x13, 0x57, 0x9b, + 0xcd, 0xee, 0xff, 0xff, 0xee, 0xdb, 0xa8, 0x64, + 0x10, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, + + /* U+006D "m" */ + 0x6, 0xbf, 0xff, 0xff, 0xfc, 0x72, 0x0, 0x0, + 0x1, 0x36, 0x8a, 0xcd, 0xef, 0xff, 0xee, 0xdc, + 0xa7, 0x52, 0x0, 0x0, 0x0, 0x0, 0x0, 0x1, + 0x36, 0x8a, 0xcd, 0xef, 0xfe, 0xdc, 0xba, 0x96, + 0x31, 0x0, 0x0, 0x0, 0x0, 0x0, 0x6b, 0xff, + 0xff, 0xff, 0xe9, 0x40, 0x3, 0x6b, 0xef, 0xff, + 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, + 0x73, 0x0, 0x0, 0x14, 0x8c, 0xef, 0xff, 0xff, + 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xda, 0x52, + 0x0, 0x0, 0x0, 0x6, 0xbf, 0xff, 0xff, 0xff, + 0xca, 0x9d, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, + 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xd8, 0x45, + 0xad, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, + 0xff, 0xff, 0xff, 0xff, 0xff, 0xa5, 0x0, 0x0, + 0x0, 0x6b, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, + 0xfd, 0xa7, 0x53, 0x10, 0x1, 0x13, 0x6a, 0xdf, + 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, + 0xa7, 0x42, 0x10, 0x1, 0x24, 0x7b, 0xef, 0xff, + 0xff, 0xff, 0xff, 0xc7, 0x20, 0x0, 0x6, 0xbf, + 0xff, 0xff, 0xff, 0xff, 0xeb, 0x73, 0x0, 0x0, + 0x0, 0x0, 0x0, 0x0, 0x4, 0x9e, 0xff, 0xff, + 0xff, 0xff, 0xff, 0xeb, 0x62, 0x0, 0x0, 0x0, + 0x0, 0x0, 0x0, 0x5, 0xaf, 0xff, 0xff, 0xff, + 0xff, 0xa5, 0x0, 0x0, 0x6b, 0xff, 0xff, 0xff, + 0xff, 0xb6, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, + 0x0, 0x0, 0x4, 0xaf, 0xff, 0xff, 0xff, 0xff, + 0xa5, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, + 0x0, 0x6, 0xbf, 0xff, 0xff, 0xff, 0xfc, 0x71, + 0x0, 0x6, 0xbf, 0xff, 0xff, 0xff, 0xfb, 0x50, + 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, + 0x38, 0xdf, 0xff, 0xff, 0xff, 0xf9, 0x40, 0x0, + 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x49, + 0xef, 0xff, 0xff, 0xff, 0xd8, 0x30, 0x0, 0x6b, + 0xff, 0xff, 0xff, 0xff, 0xb5, 0x0, 0x0, 0x0, + 0x0, 0x0, 0x0, 0x0, 0x0, 0x2, 0x7c, 0xff, + 0xff, 0xff, 0xff, 0x94, 0x0, 0x0, 0x0, 0x0, + 0x0, 0x0, 0x0, 0x0, 0x3, 0x8e, 0xff, 0xff, + 0xff, 0xfe, 0x83, 0x0, 0x6, 0xbf, 0xff, 0xff, + 0xff, 0xfb, 0x50, 0x0, 0x0, 0x0, 0x0, 0x0, + 0x0, 0x0, 0x0, 0x27, 0xcf, 0xff, 0xff, 0xff, + 0xf9, 0x40, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, + 0x0, 0x0, 0x38, 0xef, 0xff, 0xff, 0xff, 0xe8, + 0x30, 0x0, 0x6b, 0xff, 0xff, 0xff, 0xff, 0xb5, + 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, + 0x2, 0x7c, 0xff, 0xff, 0xff, 0xff, 0x94, 0x0, + 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x3, + 0x8e, 0xff, 0xff, 0xff, 0xfe, 0x83, 0x0, 0x6, + 0xbf, 0xff, 0xff, 0xff, 0xfb, 0x50, 0x0, 0x0, + 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x27, 0xcf, + 0xff, 0xff, 0xff, 0xf9, 0x40, 0x0, 0x0, 0x0, + 0x0, 0x0, 0x0, 0x0, 0x0, 0x38, 0xef, 0xff, + 0xff, 0xff, 0xe8, 0x30, 0x0, 0x6b, 0xff, 0xff, + 0xff, 0xff, 0xb5, 0x0, 0x0, 0x0, 0x0, 0x0, + 0x0, 0x0, 0x0, 0x2, 0x7c, 0xff, 0xff, 0xff, + 0xff, 0x94, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, + 0x0, 0x0, 0x3, 0x8e, 0xff, 0xff, 0xff, 0xfe, + 0x83, 0x0, 0x6, 0xbf, 0xff, 0xff, 0xff, 0xfb, + 0x50, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, + 0x0, 0x27, 0xcf, 0xff, 0xff, 0xff, 0xf9, 0x40, + 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, + 0x38, 0xef, 0xff, 0xff, 0xff, 0xe8, 0x30, 0x0, + 0x6b, 0xff, 0xff, 0xff, 0xff, 0xb5, 0x0, 0x0, + 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x2, 0x7c, + 0xff, 0xff, 0xff, 0xff, 0x94, 0x0, 0x0, 0x0, + 0x0, 0x0, 0x0, 0x0, 0x0, 0x3, 0x8e, 0xff, + 0xff, 0xff, 0xfe, 0x83, 0x0, 0x6, 0xbf, 0xff, + 0xff, 0xff, 0xfb, 0x50, 0x0, 0x0, 0x0, 0x0, + 0x0, 0x0, 0x0, 0x0, 0x27, 0xcf, 0xff, 0xff, + 0xff, 0xf9, 0x40, 0x0, 0x0, 0x0, 0x0, 0x0, + 0x0, 0x0, 0x0, 0x38, 0xef, 0xff, 0xff, 0xff, + 0xe8, 0x30, 0x0, 0x6b, 0xff, 0xff, 0xff, 0xff, + 0xb5, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, + 0x0, 0x2, 0x7c, 0xff, 0xff, 0xff, 0xff, 0x94, + 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, + 0x3, 0x8e, 0xff, 0xff, 0xff, 0xfe, 0x83, 0x0, + 0x6, 0xbf, 0xff, 0xff, 0xff, 0xfb, 0x50, 0x0, + 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x27, + 0xcf, 0xff, 0xff, 0xff, 0xf9, 0x40, 0x0, 0x0, + 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x38, 0xef, + 0xff, 0xff, 0xff, 0xe8, 0x30, 0x0 +}; + + +/*--------------------- + * GLYPH DESCRIPTION + *--------------------*/ + +static const lv_font_fmt_txt_glyph_dsc_t glyph_dsc[] = { + {.bitmap_index = 0, .adv_w = 0, .box_w = 0, .box_h = 0, .ofs_x = 0, .ofs_y = 0} /* id = 0 reserved */, + {.bitmap_index = 0, .adv_w = 171, .box_w = 27, .box_h = 3, .ofs_x = 1, .ofs_y = 7}, + {.bitmap_index = 41, .adv_w = 143, .box_w = 21, .box_h = 5, .ofs_x = 1, .ofs_y = 0}, + {.bitmap_index = 94, .adv_w = 274, .box_w = 48, .box_h = 22, .ofs_x = 1, .ofs_y = 0}, + {.bitmap_index = 622, .adv_w = 274, .box_w = 42, .box_h = 22, .ofs_x = 2, .ofs_y = 0}, + {.bitmap_index = 1084, .adv_w = 274, .box_w = 48, .box_h = 22, .ofs_x = 0, .ofs_y = 0}, + {.bitmap_index = 1612, .adv_w = 274, .box_w = 48, .box_h = 22, .ofs_x = 0, .ofs_y = 0}, + {.bitmap_index = 2140, .adv_w = 274, .box_w = 51, .box_h = 22, .ofs_x = 0, .ofs_y = 0}, + {.bitmap_index = 2701, .adv_w = 274, .box_w = 48, .box_h = 22, .ofs_x = 0, .ofs_y = 0}, + {.bitmap_index = 3229, .adv_w = 274, .box_w = 48, .box_h = 22, .ofs_x = 1, .ofs_y = 0}, + {.bitmap_index = 3757, .adv_w = 274, .box_w = 48, .box_h = 22, .ofs_x = 1, .ofs_y = 0}, + {.bitmap_index = 4285, .adv_w = 274, .box_w = 48, .box_h = 22, .ofs_x = 1, .ofs_y = 0}, + {.bitmap_index = 4813, .adv_w = 274, .box_w = 48, .box_h = 22, .ofs_x = 0, .ofs_y = 0}, + {.bitmap_index = 5341, .adv_w = 452, .box_w = 75, .box_h = 17, .ofs_x = 2, .ofs_y = 0} +}; + +/*--------------------- + * CHARACTER MAPPING + *--------------------*/ + +static const uint16_t unicode_list_0[] = { + 0x0, 0x1, 0x3, 0x4, 0x5, 0x6, 0x7, 0x8, + 0x9, 0xa, 0xb, 0xc, 0x40 +}; + +/*Collect the unicode lists and glyph_id offsets*/ +static const lv_font_fmt_txt_cmap_t cmaps[] = +{ + { + .range_start = 45, .range_length = 65, .glyph_id_start = 1, + .unicode_list = unicode_list_0, .glyph_id_ofs_list = NULL, .list_length = 13, .type = LV_FONT_FMT_TXT_CMAP_SPARSE_TINY + } +}; + + + +/*-------------------- + * ALL CUSTOM DATA + *--------------------*/ + +#if LVGL_VERSION_MAJOR == 8 +/*Store all the custom data of the font*/ +static lv_font_fmt_txt_glyph_cache_t cache; +#endif + +#if LVGL_VERSION_MAJOR >= 8 +static const lv_font_fmt_txt_dsc_t font_dsc = { +#else +static lv_font_fmt_txt_dsc_t font_dsc = { +#endif + .glyph_bitmap = glyph_bitmap, + .glyph_dsc = glyph_dsc, + .cmaps = cmaps, + .kern_dsc = NULL, + .kern_scale = 0, + .cmap_num = 1, + .bpp = 4, + .kern_classes = 0, + .bitmap_format = 0, +#if LVGL_VERSION_MAJOR == 8 + .cache = &cache +#endif +}; + + +/*----------------- + * PUBLIC FONT + *----------------*/ + +/*Initialize a public general font descriptor*/ +#if LVGL_VERSION_MAJOR >= 8 +const lv_font_t sans_m_30 = { +#else +lv_font_t sans_m_30 = { +#endif + .get_glyph_dsc = lv_font_get_glyph_dsc_fmt_txt, /*Function pointer to get glyph's data*/ + .get_glyph_bitmap = lv_font_get_bitmap_fmt_txt, /*Function pointer to get glyph's bitmap*/ + .line_height = 22, /*The maximum line height required by the font*/ + .base_line = 0, /*Baseline measured from the bottom of the line*/ +#if !(LVGL_VERSION_MAJOR == 6 && LVGL_VERSION_MINOR == 0) + .subpx = LV_FONT_SUBPX_HOR, +#endif +#if LV_VERSION_CHECK(7, 4, 0) || LVGL_VERSION_MAJOR >= 8 + .underline_position = -4, + .underline_thickness = 2, +#endif + .dsc = &font_dsc, /*The custom font data. Will be accessed by `get_glyph_bitmap/dsc` */ +}; + + + +#endif /*#if SANS_M_30*/ + diff --git a/fonts/sans_r_18.c b/fonts/sans_r_18.c new file mode 100644 index 0000000..6e052ab --- /dev/null +++ b/fonts/sans_r_18.c @@ -0,0 +1,2567 @@ +/******************************************************************************* + * Size: 18 px + * Bpp: 4 + * Opts: + ******************************************************************************/ + +#ifdef LV_LVGL_H_INCLUDE_SIMPLE +#include "lvgl.h" +#else +#include "lvgl/lvgl.h" +#endif + +#ifndef SANS_R_18 +#define SANS_R_18 1 +#endif + +#if SANS_R_18 + +/*----------------- + * BITMAPS + *----------------*/ + +/*Store the image of the glyphs*/ +static LV_ATTRIBUTE_LARGE_CONST const uint8_t glyph_bitmap[] = { + /* U+0020 " " */ + + /* U+0021 "!" */ + 0x0, 0x1c, 0xf7, 0xfa, 0xd8, 0x3, 0xc2, 0x1, + 0x8c, 0x3, 0x84, 0xc, 0x0, 0x20, 0x1f, 0xfc, + 0x1, 0x0, 0xf7, 0x88, 0x9, 0x80, 0x78, 0xc0, + 0x3f, 0xf8, 0x2, 0xe0, 0x1, 0x70, 0xe, 0x10, + 0x8, 0xc0, 0x3f, 0x18, 0x80, 0x3c, 0x40, 0x3c, + 0xfd, 0x16, 0x86, 0x1, 0xf0, 0x88, 0xc0, 0x3c, + 0x51, 0xf5, 0x35, 0x96, 0x80, 0x11, 0x62, 0x10, + 0x92, 0xe3, 0x0, 0x0, + + /* U+0022 "\"" */ + 0x5, 0xbf, 0xfa, 0x94, 0x2, 0x28, 0xdf, 0xf7, + 0x41, 0x80, 0x61, 0x0, 0xfe, 0xf1, 0x0, 0x18, + 0x7, 0x9, 0x80, 0x4, 0xd8, 0x2, 0x21, 0x70, + 0x0, 0xf9, 0x0, 0x4c, 0x24, 0x7, 0xc2, 0x1, + 0x88, 0x40, 0xc, 0x42, 0x1, 0x1f, 0x8, 0x31, + 0x10, 0x3, 0x39, 0x10, 0x4c, 0x40, 0x30, 0xb6, + 0xea, 0x94, 0x3, 0x8e, 0x7f, 0x21, 0x0, 0x20, + + /* U+0023 "#" */ + 0x0, 0xfe, 0x5a, 0xfb, 0x61, 0x0, 0xe3, 0x9e, + 0xd7, 0x20, 0xf, 0xfe, 0x1, 0x11, 0x84, 0x88, + 0x20, 0x1c, 0xa4, 0x2e, 0x44, 0x0, 0xff, 0xe0, + 0x36, 0x99, 0x7a, 0x80, 0x71, 0xf2, 0x91, 0x1c, + 0x3, 0xe3, 0x8e, 0xff, 0xad, 0x40, 0xe7, 0xbf, + 0xfb, 0x1c, 0x49, 0xf7, 0xfd, 0x6a, 0x1, 0x1c, + 0xff, 0x72, 0x98, 0x49, 0xaf, 0xbb, 0xad, 0xc8, + 0x16, 0xbb, 0xaa, 0x50, 0xc, 0x23, 0xc6, 0x22, + 0xf5, 0x11, 0xe7, 0x13, 0x22, 0x30, 0x8e, 0x0, + 0xfc, 0x24, 0x20, 0xc6, 0x20, 0x1c, 0xc6, 0x2d, + 0xc4, 0x1, 0xff, 0xc0, 0x31, 0x61, 0x36, 0x0, + 0xe1, 0x36, 0x1, 0x31, 0x0, 0xf9, 0x27, 0xbf, + 0xdb, 0x4, 0x2d, 0x9f, 0xfd, 0xd2, 0x60, 0xb5, + 0xff, 0x52, 0x0, 0x49, 0x19, 0xb8, 0xe6, 0x9, + 0x1b, 0xbe, 0x84, 0x3, 0x8c, 0xdd, 0xad, 0x0, + 0x30, 0x91, 0x0, 0x2, 0x23, 0x42, 0x2e, 0x30, + 0x70, 0x53, 0x31, 0x14, 0x20, 0x1f, 0x98, 0x88, + 0xbc, 0x40, 0x1c, 0x5c, 0x44, 0xe6, 0x0, 0xff, + 0xe0, 0x9, 0x30, 0x11, 0x4, 0x3, 0x98, 0x85, + 0x88, 0x80, 0x1f, 0x80, + + /* U+0024 "$" */ + 0x0, 0xff, 0xe0, 0x9, 0x22, 0x98, 0x80, 0x7f, + 0xf3, 0xe, 0xa6, 0xa5, 0x0, 0x3f, 0xf9, 0x62, + 0xe4, 0x60, 0xc4, 0x41, 0x0, 0xff, 0xe2, 0xa, + 0xce, 0x7f, 0x52, 0x88, 0x1c, 0x6f, 0x7e, 0xd3, + 0x10, 0x7, 0xf0, 0xb5, 0x51, 0x8c, 0xcf, 0x7b, + 0xdf, 0xdb, 0x94, 0xe2, 0x97, 0x46, 0x1, 0xf9, + 0x35, 0x0, 0x5b, 0xe1, 0x8, 0x40, 0x48, 0xd6, + 0x33, 0xb6, 0xc, 0x3, 0xff, 0x80, 0x20, 0xe0, + 0x1f, 0xfc, 0xb4, 0xd4, 0x0, 0x34, 0xc9, 0x48, + 0x3, 0xff, 0x90, 0x2d, 0x56, 0xe6, 0x66, 0xad, + 0xec, 0x96, 0x20, 0xf, 0xfe, 0x28, 0xa4, 0x67, + 0xe4, 0xa9, 0x99, 0xa7, 0x7a, 0xdd, 0x4, 0x3, + 0xff, 0x88, 0x26, 0xd5, 0xbd, 0x92, 0xa6, 0x91, + 0x79, 0x6, 0x1, 0xff, 0xc7, 0x13, 0x6a, 0xf8, + 0x30, 0x27, 0xa4, 0x0, 0xff, 0xe5, 0x12, 0x20, + 0x80, 0x4, 0x41, 0x0, 0xe1, 0x46, 0x61, 0x88, + 0x7, 0xf8, 0x54, 0xc8, 0x4, 0x88, 0x20, 0x18, + 0x53, 0xa2, 0x73, 0xf2, 0xa5, 0xd9, 0xb4, 0x56, + 0x4a, 0x1, 0xcd, 0xa0, 0x7, 0xa, 0xd7, 0xe4, + 0xb3, 0x5, 0x26, 0x79, 0x9d, 0x99, 0x39, 0xae, + 0x40, 0x1f, 0xc2, 0x6d, 0x15, 0x7b, 0xa7, 0x20, + 0x5b, 0xdb, 0x96, 0x31, 0x0, 0xff, 0xe3, 0x8, + 0x7, 0xff, 0x14, + + /* U+0025 "%" */ + 0x0, 0xc2, 0x6f, 0x59, 0xdc, 0xfe, 0xdb, 0x84, + 0x10, 0xf, 0xfe, 0x12, 0x4f, 0x6c, 0x18, 0x7, + 0xff, 0xc, 0x56, 0xb2, 0x42, 0xb3, 0xfb, 0x20, + 0x5a, 0xf5, 0x84, 0x3, 0xfc, 0x4f, 0xe, 0x93, + 0x6, 0x1, 0xff, 0xc2, 0x17, 0x94, 0x29, 0x86, + 0x21, 0x11, 0x2d, 0xc9, 0x9a, 0xd8, 0x80, 0x3e, + 0x15, 0x99, 0x3c, 0x5a, 0x0, 0x7f, 0xf1, 0xb, + 0x88, 0x1c, 0xc8, 0x3, 0xc2, 0x6a, 0x25, 0xac, + 0x1, 0xe4, 0x8b, 0x66, 0x4b, 0x8, 0x7, 0xff, + 0x18, 0x40, 0x3f, 0xf8, 0xa2, 0x1, 0x89, 0xe5, + 0xdd, 0x30, 0x40, 0x1f, 0xfc, 0x72, 0xf2, 0x6, + 0x32, 0x0, 0xf0, 0x91, 0x4, 0x88, 0xe0, 0x1, + 0x69, 0x93, 0x44, 0x10, 0x5, 0x1e, 0xb3, 0x76, + 0xcb, 0x85, 0x20, 0xf, 0x85, 0xe9, 0xe, 0xa1, + 0x44, 0x0, 0x29, 0x16, 0x87, 0x54, 0x20, 0x48, + 0x83, 0x4c, 0x98, 0x49, 0xf6, 0xe8, 0xe7, 0xbf, + 0xd0, 0x69, 0x59, 0x6, 0x1, 0xe1, 0x6a, 0xb4, + 0x6b, 0xef, 0xf7, 0x52, 0xa5, 0x73, 0x91, 0x22, + 0x5d, 0xd2, 0xe4, 0x7, 0x72, 0x6b, 0x12, 0xa6, + 0x44, 0x48, 0x83, 0x3, 0xca, 0x80, 0x7c, 0x29, + 0x39, 0xdf, 0xfb, 0xb2, 0x54, 0x85, 0xa5, 0x99, + 0x10, 0x40, 0x9, 0x48, 0x48, 0x8e, 0x1, 0xf2, + 0xfa, 0x83, 0x11, 0x0, 0x3f, 0xf8, 0xe9, 0x10, + 0x79, 0x93, 0x8, 0x4, 0x20, 0x1b, 0xc0, 0x3f, + 0xf8, 0x2, 0x1, 0xff, 0xc7, 0x38, 0x94, 0x78, + 0x72, 0x0, 0xe1, 0x22, 0x9, 0x6b, 0x80, 0x7c, + 0x5e, 0xa0, 0xe4, 0x40, 0xf, 0xfe, 0x18, 0xb4, + 0x33, 0x22, 0x8, 0x1, 0xf9, 0x29, 0x89, 0x62, + 0x8, 0x23, 0x1b, 0xfb, 0x3, 0x72, 0x80, 0x7f, + 0xf0, 0xd2, 0xe1, 0xe6, 0x4a, 0x20, 0x1f, 0xe3, + 0x8f, 0xa4, 0x39, 0xfe, 0xfe, 0xb6, 0x9d, 0x94, + 0x0, 0xc0, + + /* U+0026 "&" */ + 0x0, 0xfe, 0x25, 0x8b, 0xde, 0xff, 0x76, 0xe4, + 0xa9, 0x0, 0x7f, 0xf2, 0xce, 0x3e, 0x9d, 0xcb, + 0x77, 0x90, 0x1a, 0xb9, 0xc8, 0x3, 0xff, 0x90, + 0x76, 0xa4, 0x2b, 0x10, 0x54, 0x42, 0xc5, 0x20, + 0x1e, 0xb0, 0x7, 0xff, 0x30, 0xc9, 0xc0, 0x30, + 0xa6, 0x28, 0x26, 0x28, 0x7, 0xff, 0x20, 0xf5, + 0xc0, 0x95, 0xc, 0x9a, 0xb2, 0x91, 0x66, 0x4c, + 0x20, 0x1f, 0xfc, 0x95, 0xe6, 0x12, 0x8c, 0xd9, + 0x64, 0xbf, 0xb6, 0x20, 0xf, 0xfe, 0x48, 0x9b, + 0xfb, 0x88, 0x4, 0x2b, 0x30, 0x82, 0x1, 0xfc, + 0x93, 0xdf, 0xb0, 0x60, 0x1e, 0x49, 0xcc, 0x42, + 0xa4, 0xdd, 0x28, 0x2d, 0x6b, 0x90, 0x7, 0xe5, + 0xe6, 0x12, 0xaa, 0x18, 0x6, 0x27, 0x86, 0x21, + 0x6a, 0xa3, 0x22, 0xd6, 0xb9, 0x1c, 0x65, 0xb1, + 0x0, 0x47, 0x10, 0x50, 0x4b, 0x62, 0x0, 0xe6, + 0xd3, 0x0, 0x26, 0x20, 0x7, 0x1c, 0x65, 0xb1, + 0x24, 0xe6, 0x26, 0xbd, 0xc8, 0xe6, 0x4c, 0x20, + 0x1e, 0x6d, 0x20, 0x2, 0x62, 0x0, 0x7c, 0x29, + 0x3b, 0x6a, 0x6, 0xca, 0x60, 0x96, 0x84, 0x1, + 0xf8, 0x9a, 0x14, 0x44, 0xd7, 0xb5, 0xc, 0xaa, + 0x67, 0x8a, 0xda, 0x51, 0x24, 0x54, 0x14, 0x8d, + 0xec, 0x97, 0x31, 0x0, 0xc2, 0xb5, 0xf7, 0xc, + 0xc7, 0x58, 0xaa, 0x45, 0x20, 0xb3, 0x2b, 0x75, + 0x75, 0x7d, 0xb7, 0xe, 0xe4, 0xe6, 0x10, 0x0, + + /* U+0027 "'" */ + 0x5, 0xbf, 0xfa, 0x94, 0x2, 0x10, 0xf, 0x84, + 0xc0, 0x2, 0x6c, 0x0, 0x61, 0x20, 0x3e, 0x10, + 0x1, 0xf0, 0x83, 0x11, 0x0, 0x2, 0xdb, 0xaa, + 0x50, 0x0, + + /* U+0028 "(" */ + 0x0, 0xfc, 0x4a, 0xec, 0x62, 0x1, 0xf0, 0xac, + 0x54, 0xe3, 0x88, 0x7, 0x8a, 0x61, 0x4e, 0x61, + 0x0, 0x3c, 0x76, 0xc4, 0x94, 0xc4, 0x1, 0xe4, + 0xa7, 0x14, 0xd7, 0x10, 0xf, 0x16, 0x20, 0x9e, + 0x20, 0x80, 0x78, 0x50, 0xc8, 0x14, 0xc8, 0x3, + 0xe2, 0xe5, 0x2, 0xe6, 0x0, 0xfc, 0xe2, 0x20, + 0x11, 0x18, 0x7, 0xe1, 0x30, 0x3, 0x98, 0x80, + 0x7e, 0x13, 0x0, 0x39, 0x88, 0x7, 0xe7, 0x12, + 0x1, 0x11, 0x80, 0x7e, 0x3d, 0x60, 0x2d, 0x70, + 0xf, 0xe7, 0xc2, 0x7, 0xd2, 0x0, 0xfc, 0x48, + 0xa2, 0x48, 0xa2, 0x1, 0xf8, 0xed, 0x88, 0xed, + 0x84, 0x3, 0xf1, 0xd5, 0xc, 0xd5, 0x26, 0x1, + 0xf8, 0x9e, 0x18, 0xde, 0x14, 0x40, 0x3f, 0x24, + 0x6d, 0x7b, 0x88, 0x0, + + /* U+0029 ")" */ + 0x0, 0x12, 0xbb, 0x18, 0x7, 0xf8, 0x76, 0xa6, + 0x18, 0x40, 0x3f, 0x1c, 0xc2, 0x22, 0x20, 0x80, + 0x1f, 0x85, 0x7d, 0x45, 0xb9, 0x40, 0x3f, 0x93, + 0x94, 0x17, 0x94, 0x3, 0xf9, 0x31, 0x1, 0x31, + 0x0, 0x3f, 0x94, 0xc8, 0x13, 0x8, 0x3, 0xf1, + 0xf3, 0x1, 0x11, 0x80, 0x3f, 0x88, 0x40, 0x2, + 0x40, 0x1f, 0xe3, 0x0, 0x38, 0x8, 0x7, 0xe1, + 0x30, 0x3, 0x98, 0x80, 0x7e, 0x31, 0x0, 0x8, + 0x80, 0x3f, 0x1f, 0x28, 0x16, 0xb0, 0x7, 0xc2, + 0xa6, 0x22, 0x44, 0x10, 0x7, 0xc9, 0xa8, 0x9, + 0x86, 0x1, 0xf2, 0xf2, 0xb, 0x72, 0x80, 0x78, + 0x9e, 0x50, 0x9a, 0x90, 0x3, 0xc9, 0x72, 0x6b, + 0x12, 0x60, 0x1f, 0x2d, 0x5d, 0xa1, 0x44, 0x3, + 0xc0, + + /* U+002A "*" */ + 0x0, 0xff, 0x2d, 0x7d, 0xb0, 0x7, 0xff, 0x0, + 0x48, 0xc8, 0x40, 0x4c, 0x41, 0xc4, 0x80, 0x48, + 0xc8, 0x40, 0x39, 0x6f, 0xb7, 0xbf, 0xa5, 0x0, + 0xe3, 0x7f, 0xb7, 0xad, 0x4, 0x3, 0x24, 0xef, + 0xe3, 0x98, 0x7, 0x13, 0xe7, 0xec, 0xa8, 0x80, + 0x7c, 0x74, 0xa6, 0x4d, 0x2e, 0x64, 0xd4, 0x80, + 0x1f, 0xe1, 0x60, 0x4a, 0xc9, 0x68, 0xda, 0x60, + 0x12, 0x0, 0xc0, + + /* U+002B "+" */ + 0x0, 0xff, 0xef, 0x2d, 0x7f, 0xa9, 0x40, 0x3f, + 0xff, 0xe0, 0x1f, 0xfd, 0x4, 0xaf, 0xff, 0xea, + 0x50, 0x2, 0xd7, 0xff, 0xf5, 0x20, 0x1, 0x63, + 0x33, 0xfa, 0x10, 0x0, 0x91, 0x99, 0xfd, 0xa, + 0x0, 0x12, 0x33, 0xfe, 0x21, 0x0, 0x9, 0x19, + 0xff, 0x10, 0x80, 0x7f, 0xfc, 0x40, + + /* U+002C "," */ + 0x0, 0xf1, 0x19, 0x84, 0x3, 0xf1, 0x3e, 0xeb, + 0x31, 0xd4, 0xa0, 0x1e, 0x32, 0x42, 0x0, 0x93, + 0xc, 0x3, 0x85, 0x67, 0x24, 0xc0, 0xc4, 0x40, + 0x1e, 0x14, 0x8b, 0x33, 0x55, 0x8, 0x3, 0x1c, + 0x65, 0xa3, 0xd7, 0x39, 0x0, 0x71, 0xd7, 0xee, + 0xa9, 0x48, 0x3, 0x80, + + /* U+002D "-" */ + 0x0, 0xff, 0xe3, 0x93, 0xef, 0xff, 0xfd, 0x8c, + 0x20, 0x4d, 0xf9, 0x9f, 0xf7, 0x38, 0x80, + + /* U+002E "." */ + 0x0, 0xc2, 0x6a, 0xca, 0x62, 0x1, 0xf1, 0xc6, + 0xd4, 0xd6, 0xc1, 0x80, 0x78, 0xb1, 0xc8, 0x49, + 0xf0, 0x80, 0x20, + + /* U+002F "/" */ + 0x0, 0xff, 0xe3, 0x1c, 0x77, 0x29, 0x0, 0x3f, + 0xf9, 0x7, 0x6a, 0x29, 0xe8, 0x1, 0xff, 0xc7, + 0x2b, 0x52, 0x5f, 0x50, 0xf, 0xfe, 0x39, 0x2a, + 0x89, 0x31, 0x40, 0x3f, 0xf8, 0xe2, 0xb6, 0x49, + 0xae, 0x1, 0xff, 0xc7, 0x17, 0xb3, 0x36, 0xb8, + 0x80, 0x7f, 0xf1, 0x85, 0xf4, 0xcd, 0x6e, 0x20, + 0x1f, 0xfc, 0x61, 0x7d, 0x43, 0xb5, 0x10, 0xf, + 0xfe, 0x3a, 0x6a, 0x15, 0xa9, 0x0, 0x7f, 0xf1, + 0xd7, 0xd0, 0x95, 0x8, 0x3, 0xff, 0x8e, 0xbe, + 0xa2, 0xb6, 0x60, 0x1f, 0xfc, 0x74, 0xc4, 0x17, + 0xb3, 0x0, 0xff, 0xe3, 0xa6, 0xb8, 0x3e, 0x98, + 0x7, 0xff, 0x1c, 0xf5, 0xc5, 0x35, 0x0, 0x3f, + 0xf8, 0xe7, 0x68, 0x2b, 0xe8, 0x1, 0xff, 0xc7, + 0x2b, 0x52, 0x4f, 0x50, 0xf, 0xfe, 0x39, 0x2a, + 0x89, 0x35, 0x40, 0x3f, 0xf9, 0x2, 0x55, 0x30, + 0xe0, 0x1f, 0xfc, 0x60, + + /* U+0030 "0" */ + 0x0, 0xfc, 0x6f, 0x37, 0x9d, 0xdb, 0x2e, 0x58, + 0xc0, 0x3f, 0xf8, 0x27, 0x19, 0x88, 0x77, 0x2c, + 0xc4, 0x25, 0x5d, 0xd3, 0x98, 0x73, 0x0, 0xfc, + 0x2d, 0xe, 0x62, 0xd5, 0x92, 0xec, 0xc7, 0x9c, + 0xa6, 0x13, 0x89, 0x51, 0x0, 0xe1, 0x6a, 0x40, + 0x26, 0xa4, 0x0, 0xfc, 0x94, 0xc2, 0xb, 0xce, + 0x20, 0x19, 0x78, 0x80, 0xf, 0x86, 0x1, 0xfe, + 0x3d, 0x40, 0x2, 0xf9, 0x0, 0x61, 0x21, 0x1, + 0x27, 0x0, 0xff, 0xe0, 0x31, 0x88, 0x9, 0xb0, + 0x4, 0x26, 0xe0, 0x3, 0x1, 0x0, 0xff, 0xe0, + 0x89, 0x80, 0x18, 0xc4, 0x0, 0x26, 0xe0, 0x3, + 0x1, 0x0, 0xff, 0xe0, 0x38, 0x98, 0x1, 0x8c, + 0x40, 0x26, 0x21, 0x1, 0x26, 0x0, 0xff, 0xe0, + 0x9, 0x88, 0x9, 0xb0, 0x6, 0x2f, 0x20, 0x3, + 0xe9, 0x80, 0x7f, 0x8f, 0x10, 0x0, 0xbe, 0x40, + 0x18, 0x5e, 0x50, 0x9, 0xa9, 0x0, 0x3e, 0x14, + 0xa7, 0x10, 0x5e, 0x61, 0x0, 0xe1, 0x58, 0x81, + 0x8b, 0x56, 0x4b, 0xb3, 0x1e, 0x76, 0x98, 0x4e, + 0x25, 0x40, 0x3f, 0x8d, 0xf3, 0x12, 0xee, 0x59, + 0x88, 0x4a, 0xbb, 0xa7, 0x30, 0xe6, 0x1, 0xc0, + + /* U+0031 "1" */ + 0x0, 0x84, 0x8d, 0x5a, 0x2b, 0x7b, 0xfd, 0xae, + 0x40, 0x1f, 0xfc, 0x2, 0x6e, 0xca, 0x97, 0x52, + 0x10, 0xf, 0xfe, 0x29, 0x3e, 0x7f, 0xed, 0x83, + 0x0, 0xff, 0xff, 0x80, 0x7f, 0xff, 0xc0, 0x3f, + 0xff, 0xe0, 0x1f, 0x12, 0x2a, 0xfd, 0xa4, 0x0, + 0x3d, 0x55, 0xf2, 0x10, 0x4, 0x29, 0xf5, 0x5e, + 0x85, 0x10, 0x0, 0xac, 0x55, 0x74, 0x29, 0x0, + 0x0, + + /* U+0032 "2" */ + 0x0, 0xe1, 0x47, 0x9b, 0xde, 0xff, 0xbb, 0x72, + 0xa1, 0x48, 0x3, 0xfc, 0x6f, 0x7f, 0x70, 0x80, + 0x8d, 0x33, 0x90, 0x11, 0xeb, 0x2d, 0x44, 0x3, + 0xe2, 0x21, 0xbc, 0xee, 0xae, 0x61, 0x9a, 0x79, + 0xcd, 0x72, 0x14, 0xb9, 0x30, 0xf, 0xa, 0xc4, + 0xb1, 0x0, 0x7f, 0x8e, 0xd4, 0x40, 0x4d, 0x40, + 0x3f, 0xf9, 0x6e, 0x22, 0x0, 0x11, 0x0, 0x3f, + 0xf9, 0x47, 0x88, 0x0, 0x3f, 0x50, 0xf, 0xfe, + 0x40, 0xb4, 0x39, 0xb, 0x43, 0x8, 0x7, 0xff, + 0x18, 0x56, 0xa1, 0x1, 0x22, 0x8, 0x1, 0xff, + 0xc6, 0x48, 0xca, 0x40, 0x5b, 0xa6, 0x10, 0xf, + 0xfe, 0x21, 0x3d, 0xd3, 0x91, 0xc6, 0xd2, 0x8, + 0x7, 0xff, 0x8, 0x4e, 0x33, 0x61, 0x9, 0xf3, + 0xe, 0x60, 0x1f, 0xfc, 0x21, 0x59, 0xcc, 0x39, + 0x89, 0xbd, 0x6a, 0xb3, 0x7f, 0xca, 0x40, 0x11, + 0xcc, 0x31, 0x0, 0x42, 0x6f, 0x35, 0x33, 0xff, + 0xc1, 0x41, 0x0, + + /* U+0033 "3" */ + 0x0, 0xe1, 0x36, 0x9a, 0xbc, 0xef, 0xfb, 0xb7, + 0x2a, 0x14, 0xc4, 0x3, 0xf0, 0xad, 0x7e, 0x42, + 0x81, 0xdc, 0x4c, 0xa1, 0xdc, 0x8, 0xf5, 0x9a, + 0xc4, 0x1, 0xe1, 0x5b, 0xcd, 0xfc, 0xa8, 0x76, + 0x69, 0xe6, 0xb2, 0x98, 0x40, 0xe9, 0x44, 0x3, + 0xe1, 0x22, 0x8, 0x7, 0xff, 0x11, 0xc4, 0x3, + 0xff, 0x86, 0x22, 0x23, 0x46, 0x8b, 0xa6, 0x4, + 0x88, 0x30, 0x80, 0x7f, 0xc2, 0xf9, 0xdc, 0xdc, + 0xb9, 0x76, 0x7a, 0xfb, 0x73, 0x0, 0xff, 0xe0, + 0x8b, 0x7d, 0xd5, 0x26, 0x19, 0xd, 0xab, 0xf2, + 0xc, 0x40, 0x3f, 0xf8, 0x22, 0x68, 0xaa, 0x67, + 0x9b, 0xec, 0x73, 0x33, 0xec, 0x20, 0x7, 0xff, + 0x28, 0xe6, 0x8c, 0x5, 0xf0, 0xc0, 0x3f, 0xfa, + 0x2, 0x1, 0x85, 0x66, 0xe5, 0x4, 0x3, 0xfe, + 0x26, 0xb3, 0x0, 0x26, 0x18, 0x4, 0x67, 0x33, + 0x2f, 0xf6, 0xea, 0x1d, 0x98, 0xf1, 0x5b, 0x90, + 0x60, 0x93, 0xa, 0x1, 0x89, 0xab, 0x31, 0x2c, + 0xef, 0x34, 0x4c, 0xcc, 0xe2, 0x91, 0x7b, 0x6c, + 0x40, 0x18, + + /* U+0034 "4" */ + 0x0, 0xff, 0xe1, 0x93, 0xe7, 0xfe, 0xa5, 0x0, + 0xff, 0xe3, 0x93, 0xfc, 0x18, 0x7, 0xff, 0x2c, + 0xa3, 0xe0, 0x91, 0xd8, 0x80, 0x3f, 0xf8, 0xe7, + 0x1e, 0xe4, 0x71, 0x36, 0x20, 0x1f, 0xfc, 0x63, + 0x8e, 0x72, 0x38, 0xe7, 0x20, 0x1, 0x80, 0x7f, + 0xf0, 0xce, 0x39, 0xc8, 0xe7, 0x9c, 0x80, 0x3f, + 0xf8, 0xc7, 0x1c, 0xe4, 0x93, 0xac, 0x40, 0x1f, + 0xfc, 0x63, 0x8e, 0x72, 0x49, 0x93, 0x88, 0x7, + 0x9c, 0x40, 0x21, 0x30, 0xf, 0x24, 0xb9, 0x0, + 0x12, 0x77, 0xbf, 0xfe, 0xb6, 0x10, 0x2, 0x4f, + 0xfd, 0x6c, 0x2b, 0x19, 0x9f, 0xfc, 0x39, 0x51, + 0x0, 0x1b, 0xe6, 0x52, 0xe2, 0x22, 0x33, 0xff, + 0xe1, 0xa9, 0x0, 0x4d, 0xa6, 0x71, 0x8, 0x7, + 0xff, 0xc4, + + /* U+0035 "5" */ + 0x0, 0xc2, 0xd7, 0xff, 0xff, 0xc5, 0xb6, 0x0, + 0xfc, 0x62, 0xc0, 0x2, 0x59, 0x9f, 0xfe, 0xf, + 0xa0, 0x7, 0xe1, 0xf3, 0x0, 0x27, 0x33, 0x7f, + 0xf0, 0x50, 0x80, 0x3f, 0x39, 0x8, 0x10, 0xb0, + 0x7, 0xff, 0x2c, 0x84, 0x0, 0x69, 0x39, 0xdf, + 0xfb, 0xb6, 0xe5, 0x8c, 0x40, 0x3f, 0xc4, 0x64, + 0x52, 0xe4, 0xd5, 0xdd, 0x2c, 0xc5, 0x69, 0xcd, + 0x72, 0x0, 0xfc, 0x91, 0xba, 0xc9, 0x75, 0x44, + 0xcd, 0x17, 0x90, 0x60, 0x71, 0x5, 0x0, 0xff, + 0xe5, 0x13, 0x59, 0x80, 0x13, 0x4c, 0x3, 0xff, + 0x94, 0x24, 0xc0, 0x1, 0x27, 0x0, 0xff, 0xe5, + 0x16, 0xb8, 0x0, 0xf5, 0x80, 0x21, 0x48, 0xa7, + 0x31, 0x0, 0xff, 0xa, 0xc3, 0x10, 0x12, 0x20, + 0x80, 0x22, 0x21, 0xa4, 0x67, 0xe5, 0xcc, 0x3b, + 0x31, 0xe6, 0xfe, 0x94, 0x49, 0xfa, 0xc, 0x3, + 0x1b, 0x5f, 0xe4, 0xbb, 0xc8, 0xd1, 0x33, 0x23, + 0xa3, 0xd6, 0xea, 0xc, 0x3, 0x80, + + /* U+0036 "6" */ + 0x0, 0xfe, 0x13, 0x79, 0xbc, 0xde, 0xfe, 0xdc, + 0xba, 0x74, 0x10, 0xf, 0xf1, 0x35, 0x7e, 0x43, + 0xb9, 0x96, 0x65, 0x14, 0xa0, 0xf1, 0x56, 0xa2, + 0x1, 0xf2, 0xc4, 0x14, 0x16, 0xbf, 0x2a, 0x1d, + 0x98, 0xf3, 0x7b, 0xdf, 0x4a, 0x20, 0x1c, 0x4f, + 0xa, 0x27, 0x30, 0xa2, 0x1, 0xfe, 0x11, 0x0, + 0x7c, 0x29, 0x64, 0x7, 0x6c, 0x40, 0x1f, 0xfc, + 0x92, 0xf2, 0x0, 0x31, 0x1, 0xbd, 0x5e, 0xf7, + 0xfb, 0xb7, 0x29, 0xd0, 0x40, 0x3e, 0x73, 0x10, + 0x3, 0xc6, 0x76, 0x96, 0xc5, 0x5d, 0xa1, 0x41, + 0x22, 0xf2, 0xc, 0x3, 0x9c, 0xc4, 0x2, 0x5e, + 0xda, 0x86, 0x54, 0x49, 0xa3, 0x2d, 0x44, 0x9e, + 0x50, 0x3, 0x17, 0x10, 0x1, 0xb4, 0xc0, 0x3f, + 0xe4, 0xc5, 0x0, 0x31, 0x90, 0x4, 0x26, 0xa2, + 0xb, 0x86, 0x1, 0xff, 0xc1, 0x70, 0x8, 0x4c, + 0x3, 0x25, 0x31, 0xb, 0x43, 0x8, 0x7, 0xe1, + 0x7a, 0x30, 0x14, 0x51, 0x0, 0xe3, 0x99, 0x31, + 0x24, 0xe5, 0xc3, 0x2a, 0x99, 0xeb, 0x24, 0xc5, + 0x6e, 0x4c, 0x3, 0xe1, 0x49, 0xcc, 0x42, 0x2, + 0x5d, 0xaa, 0x29, 0x9e, 0x2f, 0xe9, 0x44, 0x2, + + /* U+0037 "7" */ + 0x1, 0x7c, 0xff, 0xff, 0xe5, 0x63, 0x90, 0x0, + 0x56, 0x67, 0xff, 0x8a, 0xe6, 0x1, 0x1d, 0xa9, + 0x0, 0x44, 0xac, 0xdf, 0xfc, 0x24, 0x3, 0x30, + 0x1c, 0x73, 0x90, 0x7, 0xff, 0x18, 0x56, 0x64, + 0x87, 0x1c, 0xe4, 0x1, 0xff, 0xc7, 0x38, 0xb4, + 0x15, 0x87, 0x20, 0xf, 0xfe, 0x42, 0x4b, 0x89, + 0x34, 0xa0, 0x7, 0xff, 0x20, 0x5b, 0xd4, 0x4a, + 0xa8, 0x60, 0x1f, 0xfc, 0x94, 0xc4, 0x1, 0x43, + 0x20, 0xf, 0xfe, 0x49, 0xea, 0x0, 0x17, 0xd4, + 0x3, 0xff, 0x92, 0x2a, 0x82, 0x4, 0x6a, 0x20, + 0x1f, 0xfc, 0x92, 0xe2, 0x0, 0xf, 0x88, 0x7, + 0xff, 0x29, 0xc8, 0x40, 0xe, 0x24, 0x1, 0xff, + 0xc9, 0x12, 0x10, 0x8, 0x4c, 0x3, 0xff, 0x82, + + /* U+0038 "8" */ + 0x0, 0xf8, 0x92, 0x2b, 0x37, 0xbf, 0xdd, 0xba, + 0xb9, 0x63, 0x10, 0xf, 0xf0, 0xad, 0x65, 0xbb, + 0x96, 0xef, 0x55, 0xa8, 0x3c, 0xe6, 0xb9, 0x0, + 0x7c, 0x2f, 0xca, 0x25, 0x1f, 0x2c, 0xa8, 0x93, + 0x45, 0xd2, 0x89, 0xd5, 0xc, 0x3, 0xc6, 0x2c, + 0x0, 0x62, 0x20, 0x7, 0xf2, 0xe1, 0x1, 0x11, + 0xc0, 0x3c, 0x48, 0xa4, 0xb, 0xea, 0x20, 0x1f, + 0x97, 0xc8, 0x13, 0x14, 0x3, 0xe3, 0x8f, 0x95, + 0x4a, 0xcb, 0x85, 0x31, 0x3, 0x88, 0x3a, 0xcc, + 0x98, 0x40, 0x3f, 0x8d, 0x4c, 0x84, 0x1d, 0x6f, + 0x3b, 0xf1, 0xc5, 0xa1, 0x88, 0x3, 0xf0, 0xad, + 0x7e, 0xa2, 0x2b, 0x31, 0xbd, 0xcc, 0x96, 0x33, + 0x3e, 0x62, 0x10, 0x40, 0x39, 0x22, 0xd4, 0xdb, + 0xe1, 0x4, 0x2, 0x13, 0x69, 0xcc, 0x39, 0x99, + 0xea, 0x4c, 0x2, 0x23, 0x51, 0x7, 0xd3, 0x0, + 0xff, 0x8a, 0xac, 0xc0, 0x51, 0x44, 0x0, 0x44, + 0x60, 0x2, 0x7a, 0x0, 0x7f, 0xf0, 0x1f, 0x48, + 0x0, 0xc4, 0x20, 0x12, 0xc4, 0xc, 0x56, 0xf6, + 0x9d, 0x51, 0x32, 0xbc, 0xe5, 0xa8, 0x9c, 0x41, + 0x0, 0x38, 0x9f, 0x36, 0xa1, 0xda, 0xa2, 0xae, + 0xd5, 0x74, 0xac, 0xca, 0xdc, 0x72, 0x0, 0x80, + + /* U+0039 "9" */ + 0x0, 0xf0, 0xa3, 0xd6, 0x6f, 0x7f, 0x6e, 0x5d, + 0x39, 0x88, 0x7, 0xfc, 0x29, 0x3f, 0x70, 0xec, + 0xb1, 0x57, 0x64, 0x7, 0x8c, 0xfa, 0x51, 0x0, + 0xf8, 0xe6, 0x4c, 0x27, 0x19, 0x50, 0xca, 0xa6, + 0x8b, 0xca, 0x41, 0x5b, 0x83, 0x0, 0xe1, 0x54, + 0x20, 0x3a, 0x61, 0x0, 0xfc, 0x2b, 0xc, 0x22, + 0x69, 0x50, 0xc, 0x62, 0x20, 0x3, 0x80, 0x80, + 0x7f, 0xc7, 0x88, 0x0, 0x62, 0x20, 0x4, 0x44, + 0x70, 0x2, 0xfa, 0x0, 0x7f, 0xc4, 0x46, 0x0, + 0x1f, 0x30, 0x6, 0x5e, 0x61, 0x13, 0x4c, 0x98, + 0xc4, 0x62, 0x35, 0x8c, 0xc4, 0x90, 0x4, 0x60, + 0x1e, 0x49, 0xd9, 0x50, 0x69, 0xce, 0xeb, 0x75, + 0x25, 0x5b, 0x68, 0x0, 0x13, 0x70, 0xf, 0x8d, + 0xab, 0x7f, 0xdd, 0xba, 0xef, 0xec, 0xa6, 0x12, + 0x60, 0x2, 0xf9, 0x0, 0x7f, 0xf0, 0x44, 0x88, + 0x20, 0x18, 0x96, 0xcc, 0xb, 0x10, 0x40, 0x3e, + 0x11, 0x0, 0x7f, 0x85, 0x62, 0x4c, 0x12, 0xd8, + 0x80, 0x38, 0x56, 0xbf, 0xb6, 0xe5, 0xd9, 0xa7, + 0x9c, 0xfa, 0x50, 0x5a, 0x96, 0x10, 0xf, 0xa, + 0xdd, 0x43, 0x82, 0xd4, 0x4c, 0x52, 0xba, 0x46, + 0x7d, 0x29, 0x0, 0x78, + + /* U+003A ":" */ + 0x0, 0x85, 0x67, 0x7b, 0x65, 0x44, 0x3, 0xc5, + 0x8e, 0x42, 0x4f, 0x84, 0x1, 0xe3, 0x8d, 0xa9, + 0xad, 0x83, 0x0, 0xf8, 0x4d, 0x59, 0x4c, 0x40, + 0x3f, 0xfd, 0x22, 0x6a, 0xca, 0x62, 0x1, 0xf1, + 0xc6, 0xd4, 0xd6, 0xc1, 0x80, 0x78, 0xb1, 0xc8, + 0x49, 0xf0, 0x80, 0x20, + + /* U+003B ";" */ + 0x0, 0x85, 0x67, 0x7b, 0x65, 0x44, 0x3, 0xc5, + 0x8e, 0x42, 0x4f, 0x84, 0x1, 0xe3, 0x8d, 0xa9, + 0xad, 0x83, 0x0, 0xf8, 0x4d, 0x59, 0x4c, 0x40, + 0x3f, 0xfd, 0x64, 0x66, 0x10, 0xf, 0xc4, 0xfb, + 0xac, 0xc7, 0x52, 0x80, 0x78, 0xc9, 0x8, 0x2, + 0x4c, 0x30, 0xe, 0x15, 0x9c, 0x93, 0x3, 0x11, + 0x0, 0x78, 0x52, 0x2c, 0xcd, 0x54, 0x20, 0xc, + 0x71, 0x96, 0x8f, 0x5c, 0xe4, 0x1, 0xc7, 0x5f, + 0xba, 0xa5, 0x20, 0xe, + + /* U+003C "<" */ + 0x0, 0xff, 0xe5, 0x89, 0xab, 0xa9, 0x80, 0x7f, + 0xf1, 0x4, 0x91, 0xe6, 0xf7, 0xb9, 0x95, 0x3a, + 0x1, 0xfe, 0x24, 0x68, 0xac, 0xee, 0x6d, 0xca, + 0x8a, 0xc5, 0xef, 0x72, 0xc, 0x0, 0x28, 0xf3, + 0x7b, 0xfb, 0x70, 0x80, 0x91, 0x7b, 0xfd, 0x95, + 0xc, 0x84, 0x20, 0x1c, 0xbd, 0xc, 0x84, 0x6d, + 0x5b, 0xaa, 0x86, 0x42, 0x0, 0xff, 0xe1, 0x25, + 0xe5, 0x43, 0x3a, 0x5e, 0x77, 0x36, 0xe5, 0xd4, + 0xc4, 0x3, 0xff, 0x80, 0x26, 0xaf, 0x37, 0xbd, + 0xcc, 0xba, 0x25, 0x9a, 0xce, 0xe6, 0xdc, 0xba, + 0x98, 0x80, 0x7f, 0xf0, 0x4, 0xd5, 0xe7, 0x3b, + 0xf6, 0xe1, 0x45, 0x66, 0xb2, 0xd0, 0x3, 0xff, + 0x8e, 0x48, 0xd1, 0x59, 0xdc, 0xd8, 0x50, + + /* U+003D "=" */ + 0x4, 0xaf, 0xff, 0xfe, 0x65, 0x20, 0x1, 0x63, + 0x33, 0xff, 0x99, 0xa, 0x0, 0x12, 0x33, 0xff, + 0xe6, 0x10, 0x80, 0x7f, 0xf5, 0x12, 0xbf, 0xff, + 0xf9, 0x94, 0x80, 0x5, 0x8c, 0xcf, 0xfe, 0x64, + 0x28, 0x0, + + /* U+003E ">" */ + 0x3, 0x57, 0x53, 0x10, 0xf, 0xfe, 0x6e, 0xcd, + 0x67, 0x73, 0x6e, 0x5d, 0x8, 0x40, 0x3f, 0xf8, + 0x87, 0x1d, 0xcd, 0xb8, 0x51, 0x59, 0xbd, 0xee, + 0x65, 0x43, 0x21, 0x0, 0x7f, 0xf0, 0x4, 0x91, + 0xa2, 0xb3, 0xbf, 0x6e, 0x10, 0x12, 0x2f, 0x7f, + 0x6e, 0x5d, 0x4, 0x3, 0xff, 0x84, 0x48, 0xd1, + 0x5b, 0xa9, 0x62, 0x22, 0x34, 0x72, 0x80, 0x7f, + 0xc2, 0x6a, 0xf3, 0x7b, 0xdc, 0xc8, 0x46, 0x64, + 0x56, 0x5a, 0x0, 0x42, 0x6a, 0xf3, 0x7b, 0xdc, + 0xca, 0xa2, 0x95, 0x5e, 0x77, 0x36, 0xe5, 0xd4, + 0xc4, 0x2, 0x4b, 0xca, 0x95, 0x15, 0x8b, 0xdf, + 0xdc, 0x97, 0x53, 0x10, 0xf, 0xf9, 0x63, 0x7b, + 0x99, 0x50, 0xc8, 0x40, 0x1f, 0xfc, 0x60, + + /* U+003F "?" */ + 0x0, 0xc2, 0x6d, 0x35, 0x9b, 0xdf, 0xee, 0xdc, + 0xa7, 0x41, 0x0, 0xe3, 0x8c, 0xc4, 0xa0, 0x25, + 0x44, 0xc3, 0x30, 0x56, 0x2f, 0x1c, 0x80, 0x23, + 0x9f, 0xcd, 0xd5, 0x43, 0xb3, 0x1e, 0x2e, 0x58, + 0x40, 0xa9, 0x48, 0x2, 0x12, 0x32, 0x0, 0xfe, + 0x61, 0x30, 0x0, 0x80, 0x7f, 0xf1, 0x52, 0xd8, + 0x81, 0x29, 0x88, 0x3, 0xff, 0x80, 0x4d, 0x74, + 0xc0, 0xb5, 0x46, 0x10, 0xf, 0xf8, 0x9f, 0xa5, + 0xd, 0xf6, 0x94, 0x40, 0x3f, 0xf8, 0xb, 0x10, + 0x31, 0x6e, 0x83, 0x0, 0xff, 0xe1, 0x9, 0x30, + 0x1, 0x30, 0xc0, 0x3f, 0xf8, 0x82, 0xf9, 0xfe, + 0xa5, 0x0, 0xff, 0xe3, 0x12, 0x33, 0x10, 0x80, + 0x3f, 0xf8, 0x82, 0xdd, 0x73, 0x2b, 0x96, 0x10, + 0xf, 0xfe, 0x10, 0xad, 0x98, 0x88, 0xf1, 0x44, + 0x3, 0xe0, + + /* U+0040 "@" */ + 0x0, 0xff, 0xe2, 0x9, 0x2b, 0xc5, 0x66, 0xf7, + 0x3f, 0xee, 0xdc, 0xba, 0xa4, 0x3a, 0x8, 0x7, + 0xff, 0x30, 0x96, 0x73, 0xf6, 0xec, 0x3b, 0x53, + 0xb9, 0xbb, 0xa6, 0x5d, 0x84, 0x4a, 0xbe, 0xd9, + 0x63, 0x0, 0xff, 0xe2, 0x9b, 0xe6, 0xd2, 0x34, + 0xe7, 0xe4, 0xbb, 0x21, 0x91, 0x63, 0x45, 0x53, + 0x45, 0x6e, 0xad, 0x16, 0x76, 0x90, 0x3, 0xff, + 0x80, 0x2b, 0x5b, 0x2, 0xd9, 0xb4, 0xe6, 0x20, + 0x1f, 0xfc, 0x62, 0x49, 0xe8, 0x25, 0xa9, 0x40, + 0xf, 0xe3, 0x8b, 0x53, 0x69, 0x91, 0x80, 0x78, + 0x9a, 0x6b, 0x37, 0xb9, 0xb4, 0xf3, 0x7f, 0x6c, + 0x20, 0x11, 0x3f, 0xb0, 0x37, 0x20, 0x7, 0x85, + 0x61, 0x81, 0x66, 0x48, 0x1, 0xc4, 0xf9, 0x88, + 0x2d, 0xfc, 0xff, 0x49, 0x53, 0x20, 0x9a, 0x88, + 0x7, 0x1e, 0x28, 0x31, 0x90, 0x7, 0x27, 0xa0, + 0xbf, 0x20, 0x7, 0xa, 0xcc, 0x13, 0xd5, 0xb9, + 0x88, 0xc9, 0x68, 0x20, 0xbc, 0x60, 0x1f, 0x31, + 0x89, 0xf3, 0x0, 0x62, 0xd7, 0x5, 0xc4, 0x0, + 0xe1, 0x79, 0x42, 0x6a, 0x40, 0xf, 0xa, 0x90, + 0x91, 0xa8, 0x7, 0xe7, 0x10, 0x21, 0x70, 0xc, + 0xc2, 0x40, 0x42, 0x1, 0xe5, 0xf2, 0x6, 0xd3, + 0x0, 0xf8, 0xb9, 0x41, 0xb4, 0xc0, 0x3e, 0x12, + 0x51, 0x6d, 0x30, 0xf, 0x8, 0x18, 0x80, 0x7f, + 0xc6, 0x1, 0xf0, 0xaa, 0x8, 0x88, 0x40, 0x3e, + 0x29, 0xb2, 0x5e, 0x40, 0xe, 0x61, 0x30, 0x7d, + 0x20, 0xe, 0x4c, 0x40, 0x4a, 0x73, 0x11, 0x12, + 0xce, 0xd0, 0x10, 0xa6, 0x18, 0x8c, 0x6d, 0x5e, + 0xcc, 0x8b, 0x51, 0x0, 0xe2, 0xc4, 0x12, 0x34, + 0x10, 0xe, 0x5b, 0xb3, 0x5, 0x6f, 0xe7, 0x7f, + 0x7e, 0xe7, 0xcb, 0xa6, 0xff, 0xed, 0x28, 0xfb, + 0x61, 0x0, 0xfc, 0x97, 0x26, 0x91, 0x6a, 0x20, + 0x18, 0x52, 0x73, 0x7b, 0x9b, 0x94, 0xe6, 0x20, + 0x4d, 0x59, 0xdd, 0xb2, 0xe1, 0x44, 0x3, 0xff, + 0x80, 0x4f, 0xd0, 0x4b, 0x74, 0xe6, 0x20, 0x1f, + 0xfd, 0xe2, 0x7d, 0xb6, 0x9, 0xcf, 0xc9, 0x64, + 0x32, 0x20, 0x80, 0x61, 0x23, 0x46, 0x8a, 0x84, + 0x0, 0xff, 0xe5, 0x8a, 0x45, 0xf6, 0xda, 0x1d, + 0x4f, 0x66, 0xf7, 0xfe, 0xed, 0xd4, 0xe8, 0xee, + 0x30, 0x7, 0xff, 0x40, 0x96, 0x2b, 0x37, 0x5d, + 0xfe, 0xee, 0xbf, 0xee, 0xdb, 0x97, 0x42, 0x0, + 0xff, 0xe1, 0x80, + + /* U+0041 "A" */ + 0x0, 0xff, 0xe1, 0xad, 0x7f, 0xee, 0x83, 0x0, + 0xff, 0xe8, 0xaf, 0xa8, 0x11, 0x42, 0xd4, 0x60, + 0x1f, 0xfc, 0xf5, 0xf5, 0x4, 0xb9, 0x52, 0x17, + 0xa3, 0x0, 0xff, 0xe6, 0xaf, 0xa8, 0x1e, 0x3a, + 0x5a, 0x8, 0x9e, 0x90, 0x3, 0xff, 0x96, 0xbc, + 0xa0, 0x56, 0xa2, 0x7, 0xae, 0x22, 0x7d, 0x40, + 0xf, 0xfe, 0x40, 0xaf, 0x20, 0xa, 0xa1, 0x0, + 0x49, 0x88, 0x2, 0xfa, 0x80, 0x1f, 0xfc, 0x61, + 0x7e, 0x40, 0x17, 0xb3, 0x0, 0xe5, 0xf5, 0x1, + 0x7e, 0x40, 0xf, 0xfe, 0x20, 0xbe, 0xa0, 0xb, + 0xe9, 0x0, 0x7c, 0x98, 0x80, 0x2b, 0xc8, 0x1, + 0xff, 0xc2, 0x17, 0xd4, 0x0, 0xb, 0x5f, 0x7f, + 0xfd, 0xd2, 0x80, 0x12, 0xf2, 0x80, 0x7f, 0xf0, + 0x5, 0xf5, 0x0, 0x56, 0x6f, 0x33, 0xfe, 0xb7, + 0x30, 0x2, 0xfa, 0x80, 0x7f, 0x85, 0xe9, 0x0, + 0x5f, 0x99, 0xc, 0xff, 0xe4, 0x9a, 0x40, 0x2, + 0xfa, 0x80, 0x7e, 0x17, 0xa3, 0x1, 0x7d, 0x40, + 0xf, 0xfe, 0x10, 0xbe, 0xa0, 0x1, 0x7d, 0x40, + 0x3c, 0x2d, 0x46, 0x2, 0xf4, 0x80, 0x1f, 0xfc, + 0x41, 0x7d, 0x40, 0x2, 0xf2, 0x80, 0x40, + + /* U+0042 "B" */ + 0x3, 0x8d, 0xff, 0xff, 0xe0, 0x77, 0x37, 0x57, + 0x30, 0xa4, 0x1, 0xff, 0xc2, 0x25, 0x9b, 0xba, + 0xab, 0x44, 0x15, 0x1d, 0xea, 0xdc, 0x72, 0x0, + 0xff, 0x87, 0x51, 0x32, 0xae, 0x66, 0x44, 0xe6, + 0xb9, 0x1, 0xd2, 0x90, 0x7, 0xff, 0x34, 0x7c, + 0x40, 0x3f, 0xf9, 0x62, 0x22, 0x22, 0x34, 0xf4, + 0x19, 0x34, 0x31, 0x0, 0x7f, 0x8e, 0x37, 0xff, + 0xbb, 0x9b, 0xab, 0x96, 0x24, 0x9e, 0x85, 0x10, + 0xf, 0xf8, 0x9a, 0xb3, 0x3d, 0x76, 0xa9, 0x86, + 0x25, 0x9c, 0xfb, 0x62, 0x0, 0xff, 0xf, 0x39, + 0x9f, 0x91, 0xa, 0xcf, 0x39, 0xf4, 0x80, 0x93, + 0x26, 0x10, 0xf, 0xfe, 0x60, 0xaf, 0x28, 0x1, + 0x31, 0x40, 0x3f, 0xf9, 0xa2, 0x6e, 0x0, 0x12, + 0x70, 0xf, 0xfe, 0x61, 0xcd, 0x98, 0x1, 0x34, + 0xc0, 0x3f, 0xe, 0xa2, 0xaf, 0xcc, 0xf1, 0x37, + 0xd8, 0xe4, 0x2b, 0x56, 0xa0, 0x1f, 0xc4, 0xb3, + 0x55, 0xf4, 0xc9, 0x54, 0xe8, 0xf5, 0x9f, 0x4a, + 0x20, 0x18, + + /* U+0043 "C" */ + 0x0, 0xff, 0x85, 0x1e, 0x6a, 0xf3, 0x7b, 0xfd, + 0xdb, 0x95, 0xa, 0x40, 0x1f, 0xfc, 0x21, 0x49, + 0xcf, 0xb8, 0x67, 0x73, 0x23, 0x3b, 0xfd, 0x5b, + 0xa8, 0x30, 0xf, 0xe1, 0x6a, 0xb6, 0x33, 0x35, + 0x6e, 0xb2, 0xa6, 0x22, 0x9a, 0xbd, 0xd5, 0x4c, + 0x51, 0x80, 0x7c, 0x2b, 0x70, 0x80, 0x4f, 0xd2, + 0xa4, 0x1, 0xff, 0x12, 0xb2, 0x90, 0x7, 0xe5, + 0xf5, 0x10, 0x4b, 0x93, 0x0, 0xff, 0xe7, 0x9, + 0xb0, 0x0, 0x4d, 0x44, 0x3, 0xff, 0x9e, 0x5c, + 0x40, 0x2, 0xf2, 0x0, 0xff, 0xe8, 0xf, 0x10, + 0x0, 0xbc, 0x80, 0x3f, 0xfa, 0x4, 0x6c, 0x0, + 0x13, 0x51, 0x0, 0xff, 0xe8, 0x2f, 0xa8, 0x1, + 0x2e, 0x48, 0x3, 0xff, 0x9e, 0x2b, 0x10, 0x30, + 0x27, 0xf9, 0x52, 0x0, 0xff, 0x85, 0x22, 0x61, + 0x4, 0x3, 0xf1, 0x3f, 0x52, 0x91, 0x1a, 0xb7, + 0x57, 0x53, 0x11, 0x4d, 0x5e, 0xfd, 0xba, 0x10, + 0x98, 0x7, 0xf8, 0x96, 0xb7, 0x55, 0xc, 0xc7, + 0x79, 0x9d, 0x91, 0x81, 0xda, 0x73, 0x69, 0x48, + 0x2, + + /* U+0044 "D" */ + 0x3, 0x8d, 0xff, 0xfe, 0xee, 0x6e, 0x5d, 0x4b, + 0xa9, 0x0, 0x7f, 0xf1, 0x9, 0x66, 0xaa, 0x98, + 0x95, 0x50, 0xb3, 0xc5, 0x6e, 0xa9, 0xcc, 0x3, + 0xff, 0x80, 0x3a, 0x8a, 0xb3, 0x31, 0xe2, 0x6b, + 0x3e, 0xdc, 0xcc, 0xb1, 0xd0, 0x60, 0x1f, 0xfc, + 0xb1, 0x48, 0xe8, 0x30, 0x27, 0xf7, 0x20, 0xf, + 0xfe, 0x61, 0x34, 0xa8, 0x0, 0xf1, 0x0, 0x3f, + 0xf9, 0xcc, 0x44, 0x0, 0x37, 0x18, 0x7, 0xff, + 0x34, 0xb8, 0x40, 0x4, 0x47, 0x0, 0xff, 0xe6, + 0x97, 0x8, 0x0, 0x88, 0xc0, 0x1f, 0xfc, 0xd6, + 0x22, 0x0, 0x1b, 0x48, 0x3, 0xff, 0x96, 0x4f, + 0x2a, 0x0, 0x3d, 0x40, 0xf, 0xfe, 0x48, 0xa4, + 0x74, 0x18, 0x13, 0xfb, 0x8, 0x7, 0xe1, 0xd5, + 0x5c, 0xcf, 0x10, 0x9b, 0xde, 0xb7, 0x32, 0x59, + 0xe8, 0x30, 0xf, 0xf1, 0x2c, 0x55, 0x53, 0xc, + 0xaa, 0x7, 0x68, 0xad, 0xd5, 0x31, 0x80, 0x78, + + /* U+0045 "E" */ + 0x3, 0x8d, 0xff, 0xff, 0xe4, 0x5b, 0x8, 0x7, + 0x85, 0x62, 0x67, 0xff, 0x87, 0xe8, 0x20, 0x1e, + 0x2d, 0x56, 0x6f, 0xfe, 0x1a, 0x10, 0x7, 0xff, + 0x58, 0x7c, 0x47, 0xff, 0x84, 0x1, 0xff, 0x13, + 0xe7, 0x77, 0xff, 0x3, 0x5c, 0x80, 0x3f, 0x89, + 0x66, 0xef, 0xff, 0x81, 0xea, 0x40, 0x1f, 0xc3, + 0xa8, 0x9f, 0xfc, 0x13, 0x20, 0xf, 0xff, 0xf8, + 0x7, 0xff, 0x10, 0xb2, 0x99, 0xbf, 0xf8, 0x88, + 0x20, 0x1e, 0x14, 0x79, 0x9f, 0xfe, 0x1c, 0x6a, + 0x80, + + /* U+0046 "F" */ + 0x3, 0x8d, 0xff, 0xff, 0xe4, 0x5b, 0x8, 0x7, + 0x85, 0x62, 0x67, 0xff, 0x87, 0xe8, 0x20, 0x1e, + 0x2d, 0x56, 0x6f, 0xfe, 0x1a, 0x10, 0x7, 0xff, + 0xc4, 0x7c, 0x47, 0xff, 0x84, 0x1, 0xff, 0x13, + 0xe7, 0x77, 0xff, 0x3, 0x20, 0x80, 0x3f, 0x89, + 0xa6, 0xef, 0xff, 0x81, 0xd4, 0x40, 0x1f, 0xc3, + 0xc8, 0x9f, 0xfc, 0x13, 0x20, 0xf, 0xff, 0xf8, + 0x7, 0xff, 0x64, + + /* U+0047 "G" */ + 0x0, 0xff, 0x84, 0xda, 0x2a, 0xf3, 0x7b, 0xfe, + 0xed, 0xcb, 0x86, 0x30, 0xf, 0xfe, 0x8, 0xa4, + 0x67, 0xe4, 0xba, 0x3b, 0xff, 0x99, 0x93, 0x9b, + 0x28, 0x1, 0xf8, 0x5a, 0xad, 0xcc, 0xcb, 0x39, + 0xd9, 0x75, 0x31, 0x14, 0xd5, 0xef, 0xe5, 0x4d, + 0xa0, 0x7, 0x85, 0x6e, 0x10, 0x9, 0xfa, 0x98, + 0xc0, 0x3f, 0xf8, 0x2, 0x6a, 0x84, 0x1, 0xf2, + 0xe2, 0x88, 0x25, 0xc9, 0x80, 0x7f, 0xf3, 0x84, + 0xd4, 0x0, 0x26, 0xa2, 0x1, 0xfe, 0x11, 0xff, + 0xe0, 0x0, 0x71, 0x71, 0x0, 0xb, 0xc8, 0x3, + 0xf8, 0xe7, 0xfb, 0xbf, 0xd4, 0xc0, 0x18, 0x78, + 0x80, 0x5, 0xe4, 0x1, 0xfc, 0x57, 0x57, 0x7d, + 0x4c, 0x40, 0x1f, 0x88, 0xd8, 0x0, 0x26, 0xa2, + 0x1, 0xf8, 0x49, 0x13, 0xee, 0x10, 0xf, 0xe5, + 0xf5, 0x0, 0x25, 0xc9, 0x80, 0x7f, 0xf3, 0xc5, + 0x62, 0x4c, 0x9, 0xfa, 0x54, 0x80, 0x3f, 0xf8, + 0x7, 0xe2, 0x1, 0xff, 0x13, 0x75, 0x31, 0x93, + 0x56, 0xf6, 0x5d, 0x4c, 0x3c, 0x42, 0x6f, 0x74, + 0xe4, 0x4, 0x6a, 0x1, 0xfc, 0x4b, 0x39, 0xd7, + 0xc, 0x8e, 0xfd, 0xc, 0xaa, 0x7, 0x68, 0xbe, + 0xd8, 0x30, 0x0, + + /* U+0048 "H" */ + 0x3, 0x8d, 0xff, 0x63, 0x90, 0x7, 0xff, 0x11, + 0x6f, 0xfe, 0x94, 0x0, 0xff, 0xff, 0x80, 0x7f, + 0xf4, 0xc7, 0xc4, 0x7f, 0xf8, 0x84, 0x40, 0xf, + 0xfe, 0x9, 0x3e, 0x77, 0x7f, 0xf0, 0xf6, 0x10, + 0x3, 0xff, 0x80, 0x4b, 0x37, 0x7f, 0xfc, 0x3a, + 0x63, 0x0, 0xff, 0xe0, 0xe, 0xa2, 0x7f, 0xf1, + 0x17, 0x1c, 0x3, 0xff, 0xfe, 0x1, 0xff, 0xff, + 0x0, 0xff, 0xe4, 0x80, + + /* U+0049 "I" */ + 0x3, 0x8d, 0xff, 0x63, 0x90, 0x7, 0xff, 0xfc, + 0x3, 0xff, 0xaa, + + /* U+004A "J" */ + 0x0, 0xff, 0xe2, 0x8b, 0x67, 0xfb, 0xa0, 0xc0, + 0x3f, 0xff, 0xe0, 0x1f, 0xff, 0xf0, 0xf, 0xff, + 0x78, 0x80, 0x7f, 0xf3, 0x4f, 0xc4, 0x0, 0x7e, + 0x20, 0x10, 0x9b, 0x55, 0x1c, 0xc0, 0x3f, 0xa, + 0x20, 0x80, 0xe, 0x44, 0x0, 0x84, 0x39, 0x96, + 0x33, 0x6e, 0x62, 0x29, 0xbf, 0x93, 0x2, 0x79, + 0x50, 0xe, 0x38, 0xdc, 0x85, 0x16, 0x77, 0xe6, + 0x25, 0x8b, 0xc8, 0x30, 0xc, + + /* U+004B "K" */ + 0x3, 0x8d, 0xff, 0x63, 0x90, 0x7, 0xff, 0x0, + 0x9a, 0xfb, 0xfd, 0x8e, 0x60, 0x1f, 0xfc, 0x91, + 0x48, 0xf9, 0x40, 0x5a, 0xd7, 0x30, 0xf, 0xfe, + 0x39, 0x35, 0x51, 0xc8, 0xe3, 0x69, 0x44, 0x3, + 0xff, 0x8c, 0x29, 0x3f, 0x28, 0xb, 0x5a, 0xe6, + 0x1, 0xff, 0xc7, 0x26, 0xaa, 0x31, 0x1c, 0x6d, + 0x28, 0x80, 0x7f, 0xf1, 0x85, 0x27, 0xe5, 0x4, + 0x2, 0x11, 0x0, 0x7f, 0xf1, 0xca, 0xba, 0xd8, + 0x8d, 0x98, 0x60, 0x73, 0x25, 0x10, 0xf, 0xfe, + 0x28, 0x91, 0x5, 0x6b, 0x66, 0x5e, 0xe4, 0x9, + 0x70, 0x80, 0x1f, 0xfc, 0x53, 0x8c, 0xa5, 0x10, + 0x1, 0xc4, 0xb0, 0x89, 0xa6, 0xc, 0x3, 0xff, + 0x84, 0x76, 0xa4, 0x1, 0xf2, 0x45, 0xa8, 0x13, + 0xfb, 0x90, 0x7, 0xff, 0x30, 0x56, 0x20, 0x60, + 0x71, 0x2c, 0x20, 0x1f, 0xfc, 0xc2, 0x7f, 0x72, + 0x4, 0x8b, 0x51, 0x0, 0xff, 0xe6, 0x1c, 0x4b, + 0x8, 0x96, 0xe1, 0x0, + + /* U+004C "L" */ + 0x3, 0x8d, 0xff, 0x63, 0x90, 0x7, 0xff, 0xfc, + 0x3, 0xff, 0xfe, 0x1, 0xff, 0xff, 0x0, 0xff, + 0xfc, 0x96, 0x53, 0x37, 0xff, 0xc, 0xc4, 0x3, + 0xe1, 0x47, 0x99, 0xff, 0xe1, 0x45, 0x90, 0x0, + + /* U+004D "M" */ + 0x3, 0x8d, 0xff, 0xd4, 0xa0, 0x1f, 0xfc, 0x51, + 0x6b, 0xff, 0xd8, 0xe4, 0x1, 0xfe, 0x5f, 0x51, + 0x0, 0xff, 0xe1, 0xb, 0xea, 0x0, 0x7f, 0xf0, + 0x88, 0xcc, 0x2b, 0xce, 0x20, 0x1f, 0xfc, 0x1, + 0x7a, 0x42, 0x33, 0x8, 0x7, 0xff, 0x1, 0x2d, + 0xc5, 0x29, 0xc4, 0x3, 0xfc, 0x4d, 0x46, 0x4b, + 0x6a, 0x20, 0x1f, 0xf1, 0x89, 0xd3, 0x89, 0xd3, + 0x10, 0x7, 0xe2, 0xaa, 0x19, 0x55, 0x8, 0xc0, + 0x3f, 0xf8, 0x2, 0x0, 0x3a, 0x61, 0x3a, 0x52, + 0x0, 0xf1, 0xd2, 0x91, 0xd2, 0x91, 0x88, 0x7, + 0xff, 0x4, 0xc0, 0x7, 0x4c, 0x44, 0xaa, 0x18, + 0x6, 0x3b, 0x62, 0x3a, 0x62, 0x10, 0xf, 0xfe, + 0x39, 0x55, 0x8, 0x8b, 0x66, 0x0, 0x3a, 0x61, + 0x4a, 0x71, 0x0, 0xff, 0xe5, 0x13, 0x51, 0x93, + 0x59, 0x9a, 0x9c, 0x53, 0x98, 0x40, 0x3f, 0xf9, + 0x82, 0xd4, 0x82, 0xdf, 0xe7, 0x15, 0xe5, 0x0, + 0xff, 0xe7, 0x8b, 0xea, 0x9, 0x98, 0x1b, 0x94, + 0x3, 0xff, 0xa2, 0x2d, 0xf0, 0xaa, 0x9a, 0x40, + 0xf, 0xfe, 0xa2, 0x3d, 0x51, 0xcc, 0x3, 0xff, + 0x8a, + + /* U+004E "N" */ + 0x3, 0x8d, 0xff, 0xb1, 0xc8, 0x3, 0xff, 0x86, + 0xd7, 0xfe, 0xd8, 0x30, 0xf, 0xc7, 0x12, 0xc2, + 0x1, 0xff, 0xce, 0x14, 0x41, 0x24, 0x5a, 0x88, + 0x7, 0xff, 0x34, 0xba, 0x14, 0x16, 0x20, 0x60, + 0x1f, 0xfc, 0xb1, 0x31, 0x58, 0x93, 0x26, 0xe7, + 0x20, 0xf, 0xfe, 0x58, 0x81, 0x3f, 0xb1, 0x12, + 0x25, 0x84, 0x3, 0xff, 0x90, 0x26, 0x1, 0x1c, + 0x4a, 0x8a, 0x45, 0xa8, 0x80, 0x7f, 0xf3, 0x5, + 0x2e, 0x10, 0x56, 0xe0, 0xc0, 0x23, 0x10, 0xf, + 0xfe, 0x40, 0xb4, 0xc1, 0x8b, 0x7b, 0x90, 0x8, + 0x7, 0xff, 0x2c, 0x9f, 0xdc, 0x8e, 0x20, 0xa2, + 0x62, 0x1, 0xff, 0xcb, 0x38, 0x95, 0x15, 0x8e, + 0x20, 0xf, 0xfe, 0x72, 0x5c, 0x21, 0x22, 0x4, + 0x3, 0xff, 0x9c, 0x2d, 0x30, 0x60, 0x1f, 0x0, + + /* U+004F "O" */ + 0x0, 0xff, 0x89, 0x62, 0xaf, 0x37, 0xbf, 0xdd, + 0xb9, 0x75, 0xa, 0x40, 0x1f, 0xfc, 0x52, 0x6a, + 0xdd, 0x53, 0xa3, 0xbc, 0xce, 0xe6, 0x77, 0x32, + 0x3d, 0x6e, 0xa9, 0x8c, 0x3, 0xfe, 0x27, 0xf9, + 0x52, 0x37, 0xbf, 0xcb, 0xa8, 0x8d, 0x57, 0xbf, + 0x6e, 0x66, 0x59, 0xe8, 0x20, 0xf, 0x85, 0xa6, + 0x8, 0xe, 0x3a, 0x10, 0x40, 0x3f, 0xc2, 0x91, + 0xd2, 0x60, 0x4f, 0x2c, 0x20, 0x1c, 0x98, 0x80, + 0x4, 0x97, 0x20, 0xf, 0xfe, 0x21, 0x3c, 0xa8, + 0x1, 0x31, 0x0, 0x31, 0x11, 0x80, 0x4, 0x6c, + 0x1, 0xff, 0xc8, 0x62, 0x20, 0x1, 0xc8, 0x80, + 0x10, 0xf1, 0x0, 0x7, 0xc8, 0x3, 0xff, 0x90, + 0x5c, 0x20, 0x2, 0xe6, 0x0, 0x87, 0x88, 0x0, + 0x5e, 0x40, 0x1f, 0xfc, 0x82, 0xe1, 0x0, 0x17, + 0x30, 0x4, 0x44, 0x60, 0x0, 0x9a, 0x80, 0x7f, + 0xf2, 0x18, 0xc8, 0x0, 0xe4, 0x40, 0xc, 0x9e, + 0xa0, 0x4, 0xb7, 0x20, 0xf, 0xfe, 0x21, 0x3c, + 0xa0, 0x1, 0x31, 0x0, 0x38, 0x56, 0x20, 0x60, + 0x51, 0xd0, 0x82, 0x1, 0xfe, 0x14, 0x8e, 0x83, + 0x2, 0x89, 0x61, 0x0, 0xf8, 0x9f, 0xa9, 0x48, + 0xde, 0xff, 0x6e, 0xa2, 0x29, 0xab, 0xdf, 0xb7, + 0x32, 0x59, 0xf7, 0x20, 0xf, 0xf8, 0x96, 0xb7, + 0x54, 0xe8, 0xce, 0xe6, 0x77, 0xe6, 0x47, 0xad, + 0xd5, 0x31, 0x0, 0x78, + + /* U+0050 "P" */ + 0x3, 0x8d, 0xff, 0xff, 0xbb, 0x9b, 0xac, 0xa8, + 0x63, 0x10, 0xf, 0xf8, 0x96, 0x6a, 0xba, 0x62, + 0x55, 0x1d, 0xe9, 0xcf, 0xa5, 0x10, 0xf, 0xc3, + 0xa8, 0xab, 0xcc, 0xc7, 0x89, 0xbd, 0xb6, 0x21, + 0x5b, 0x93, 0x0, 0xff, 0xe5, 0x25, 0x28, 0x80, + 0x9a, 0x88, 0x7, 0xff, 0x3d, 0xc0, 0x3f, 0xf9, + 0x65, 0x6a, 0x20, 0x28, 0xa2, 0x1, 0xe1, 0xf1, + 0x1f, 0x88, 0xd1, 0x62, 0xfd, 0xc8, 0x52, 0x24, + 0xc0, 0x3e, 0x27, 0xce, 0xef, 0x6e, 0x5d, 0x3a, + 0xb3, 0x27, 0x69, 0x84, 0x3, 0xf1, 0x35, 0x5d, + 0xf6, 0x63, 0x7b, 0x9f, 0xd7, 0x2c, 0x62, 0x1, + 0xfe, 0x1e, 0x74, 0x4e, 0x33, 0x10, 0x88, 0x3, + 0xff, 0xfe, 0x1, 0xff, 0xce, + + /* U+0051 "Q" */ + 0x0, 0xff, 0x89, 0x62, 0xaf, 0x37, 0xbf, 0xdd, + 0xb9, 0x75, 0xa, 0x40, 0x1f, 0xfc, 0x52, 0x5a, + 0xdd, 0x53, 0xa3, 0x3b, 0xfe, 0x64, 0x7a, 0xdd, + 0x53, 0x10, 0x7, 0xfc, 0x4f, 0xd4, 0xa4, 0x6f, + 0x7f, 0xb7, 0x53, 0x10, 0x9a, 0xbd, 0xfb, 0x73, + 0x25, 0x9e, 0x72, 0x0, 0xf8, 0x56, 0x20, 0x60, + 0x51, 0xd0, 0x82, 0x1, 0xfe, 0x14, 0x8e, 0x82, + 0x3, 0x89, 0x51, 0x0, 0xe5, 0xf5, 0x0, 0x25, + 0xb1, 0x0, 0x7f, 0xf1, 0x9, 0xed, 0x0, 0x9, + 0xe8, 0x1, 0x84, 0xd8, 0x0, 0x24, 0xa2, 0x1, + 0xff, 0xc7, 0x53, 0x20, 0x3, 0x91, 0x0, 0x22, + 0xe2, 0x0, 0x17, 0x10, 0x7, 0xff, 0x20, 0xb8, + 0x40, 0x5, 0xcc, 0x1, 0x8, 0x8c, 0x0, 0x3e, + 0x60, 0x1f, 0xfc, 0x83, 0xe1, 0x0, 0x10, 0xb8, + 0x4, 0x5a, 0xc0, 0x2, 0x23, 0x80, 0x7f, 0xf2, + 0x18, 0x88, 0x0, 0x6e, 0x30, 0xc, 0xf8, 0x60, + 0x5, 0xf5, 0x10, 0xf, 0xfe, 0x2a, 0xf2, 0x80, + 0xf, 0x10, 0x3, 0x89, 0xe1, 0x44, 0x16, 0x20, + 0x62, 0x1, 0xff, 0xc1, 0x38, 0x82, 0x80, 0xac, + 0xb9, 0x0, 0x7c, 0x97, 0x4c, 0x44, 0x6c, 0xc5, + 0x3a, 0x99, 0x8, 0x88, 0xd5, 0xeb, 0x71, 0xc8, + 0x8d, 0x56, 0xa0, 0x1f, 0xe1, 0x49, 0xcc, 0x42, + 0x8a, 0x45, 0x66, 0xf7, 0x37, 0x2a, 0x10, 0x56, + 0x2f, 0x25, 0x4, 0x3, 0xff, 0x84, 0x26, 0xf5, + 0x9d, 0xfb, 0x4a, 0x20, 0x1, 0x4a, 0xfc, 0xa7, + 0x41, 0x0, 0xff, 0xe6, 0x12, 0xdd, 0x94, 0x44, + 0x95, 0x97, 0xc, 0xa8, 0x45, 0x8c, 0x84, 0x3, + 0xff, 0x8e, 0x2b, 0x5f, 0x70, 0xa2, 0xaf, 0x35, + 0x7b, 0xbb, 0x39, 0x88, 0x3, 0xff, 0x92, 0x28, + 0xf5, 0x9d, 0xd6, 0xe6, 0x2f, 0x31, 0xba, 0x72, + + /* U+0052 "R" */ + 0x3, 0x8d, 0xff, 0xff, 0xe0, 0xf6, 0xeb, 0x2a, + 0x18, 0xc4, 0x3, 0xff, 0x82, 0x4b, 0x35, 0x5e, + 0x99, 0x95, 0xc1, 0x1e, 0x73, 0x10, 0x60, 0x1f, + 0xf0, 0xea, 0x2a, 0xf9, 0x98, 0xf1, 0x59, 0xf2, + 0x80, 0x4f, 0x2a, 0x1, 0xff, 0xcd, 0x14, 0xc2, + 0x0, 0x39, 0x10, 0x3, 0xff, 0x98, 0x2f, 0xa4, + 0x0, 0x61, 0x30, 0xf, 0xe1, 0xf1, 0x1f, 0x88, + 0x86, 0x8d, 0x3b, 0x6a, 0x2, 0xbe, 0xc2, 0x1, + 0xfc, 0x4f, 0x9d, 0xde, 0xdd, 0x65, 0xcb, 0xa, + 0xb5, 0x65, 0x20, 0x7, 0xfc, 0x4d, 0x57, 0x7d, + 0x8, 0x1, 0x1c, 0x7d, 0xca, 0x90, 0x7, 0xff, + 0x4, 0x79, 0xd1, 0x39, 0xe6, 0xc, 0xe, 0x25, + 0x44, 0x3, 0xff, 0x98, 0x4f, 0xec, 0x20, 0x97, + 0x8, 0x1, 0xff, 0xcd, 0x38, 0xb5, 0x1, 0x69, + 0x83, 0x0, 0xff, 0xe6, 0xa, 0xc4, 0xc, 0x9, + 0xe1, 0x84, 0x3, 0xff, 0x98, 0x4f, 0xee, 0x40, + 0x91, 0x6a, 0x1, 0x0, + + /* U+0053 "S" */ + 0x0, 0xfc, 0x4b, 0x15, 0x9b, 0xdc, 0xff, 0x76, + 0xdd, 0x4b, 0xa1, 0x0, 0x7f, 0xf0, 0xd, 0xf3, + 0x69, 0xd0, 0x1d, 0xcd, 0xe, 0xc8, 0x2c, 0xf1, + 0x7b, 0x8e, 0x60, 0x1f, 0x96, 0x60, 0xc0, 0xe7, + 0x31, 0x53, 0xf, 0x10, 0x9a, 0xce, 0xda, 0x99, + 0x29, 0x80, 0x7c, 0x44, 0x60, 0x0, 0xaa, 0x88, + 0x3, 0xfe, 0x25, 0x65, 0x20, 0xf, 0xc4, 0x88, + 0x10, 0x17, 0x87, 0x31, 0x0, 0xff, 0xe5, 0x9c, + 0x6c, 0x20, 0x24, 0x67, 0x6d, 0xcb, 0xa1, 0x8, + 0x7, 0xff, 0x18, 0xde, 0xfb, 0x69, 0xd4, 0x55, + 0xa2, 0xf7, 0xb6, 0xdd, 0x4, 0x3, 0xff, 0x8a, + 0x4b, 0x15, 0x9d, 0xcc, 0xa7, 0x40, 0x48, 0xbe, + 0xd8, 0x40, 0xf, 0xfe, 0x40, 0x9a, 0xc5, 0xee, + 0xa4, 0xc0, 0x9e, 0x1c, 0x40, 0x3f, 0xf9, 0x84, + 0xf6, 0x60, 0x2, 0xe2, 0x0, 0xc2, 0x93, 0x97, + 0xa, 0x40, 0x1f, 0xfc, 0x2, 0x7b, 0x30, 0x2, + 0xf9, 0x80, 0x78, 0x41, 0x5e, 0xb7, 0xb2, 0xea, + 0x61, 0xdd, 0x13, 0x7b, 0xa9, 0x30, 0x38, 0x96, + 0x0, 0xe1, 0x48, 0xcf, 0xc9, 0x64, 0x6, 0x46, + 0x78, 0x83, 0x23, 0xb3, 0x22, 0xf7, 0x1c, 0x80, + 0x30, + + /* U+0054 "T" */ + 0x16, 0xcf, 0xff, 0xfe, 0x77, 0x41, 0x80, 0xa4, + 0x4c, 0xff, 0x42, 0x90, 0x4, 0x8f, 0x33, 0xfd, + 0x76, 0x20, 0x1, 0x23, 0x37, 0xfb, 0x44, 0x0, + 0x27, 0x6c, 0xdf, 0xca, 0x62, 0x1, 0xff, 0xff, + 0x0, 0xff, 0xff, 0x80, 0x7f, 0xff, 0xc0, 0x3f, + 0xff, 0xe0, 0x1f, 0xfd, 0x30, + + /* U+0055 "U" */ + 0x3, 0x9e, 0xff, 0x5b, 0x8, 0x7, 0xff, 0x11, + 0x6f, 0xfd, 0xd0, 0x60, 0x1f, 0xff, 0xf0, 0xf, + 0xff, 0xf8, 0x7, 0xff, 0x9c, 0x40, 0x27, 0x0, + 0xff, 0xe3, 0x18, 0x7, 0xe2, 0xf2, 0x0, 0xf, + 0x10, 0x7, 0xff, 0xc, 0xb9, 0x80, 0x5, 0xc4, + 0x0, 0x13, 0x60, 0x1, 0x1a, 0x88, 0x7, 0xff, + 0x9, 0xcc, 0x80, 0xa, 0x42, 0x1, 0x27, 0xa8, + 0x82, 0x5c, 0x20, 0x80, 0x7f, 0x8e, 0x20, 0x80, + 0x2b, 0xa8, 0x1, 0xcb, 0x76, 0x41, 0x26, 0xbf, + 0xca, 0x88, 0x3c, 0x42, 0xb3, 0xb1, 0xc8, 0x52, + 0xec, 0x80, 0x1f, 0xa, 0xdf, 0xe4, 0x32, 0x83, + 0xb3, 0xc3, 0xb3, 0x82, 0xb4, 0xe7, 0xda, 0x88, + 0x6, + + /* U+0056 "V" */ + 0x0, 0x13, 0xef, 0xfb, 0xa4, 0xc0, 0x3f, 0xf8, + 0xa4, 0xfb, 0xfe, 0xd8, 0x20, 0x8, 0x96, 0x88, + 0x5, 0xec, 0xc0, 0x3f, 0xf8, 0x64, 0xb6, 0x40, + 0x4b, 0x44, 0x1, 0x89, 0x54, 0x40, 0x2b, 0x66, + 0x1, 0xff, 0xc1, 0x14, 0xb3, 0x2, 0x5b, 0x20, + 0xf, 0x15, 0x29, 0x1, 0x2a, 0x10, 0x7, 0xfc, + 0x2f, 0xa6, 0x2, 0xb6, 0x60, 0x1f, 0x8a, 0xd4, + 0x80, 0xad, 0x48, 0x3, 0xfc, 0xfa, 0x80, 0x2f, + 0x66, 0x1, 0xfe, 0x3b, 0x52, 0x3, 0xb4, 0x10, + 0xf, 0xcb, 0x88, 0x2, 0xf4, 0x60, 0x1f, 0xfc, + 0x3, 0xb5, 0x20, 0x3d, 0x71, 0x0, 0xf2, 0x7a, + 0x80, 0xbd, 0x18, 0x7, 0xff, 0x8, 0xed, 0x44, + 0x13, 0x50, 0x3, 0x93, 0x50, 0x5, 0xf4, 0xc0, + 0x3f, 0xf8, 0x87, 0x6c, 0x20, 0x9e, 0xa0, 0x11, + 0xeb, 0x88, 0x9f, 0x50, 0x3, 0xff, 0x8c, 0x76, + 0xe2, 0xb, 0xe8, 0x7, 0x6e, 0x22, 0x7d, 0x40, + 0xf, 0xfe, 0x41, 0xeb, 0x88, 0x26, 0xbd, 0xa8, + 0x89, 0x35, 0x0, 0x3f, 0xf9, 0x49, 0xae, 0x22, + 0x68, 0x72, 0x4, 0xe4, 0x0, 0xff, 0xe6, 0x26, + 0xb8, 0x80, 0x65, 0xf4, 0x0, 0xff, 0xe0, 0x0, + + /* U+0057 "W" */ + 0x17, 0xcf, 0xf7, 0x4a, 0x0, 0x7f, 0xf0, 0x12, + 0x7b, 0xfd, 0xae, 0x40, 0x1f, 0xfc, 0x6, 0xbf, + 0xf7, 0x41, 0x80, 0xa2, 0x4, 0x5, 0x4c, 0x80, + 0x3f, 0xc7, 0x88, 0x20, 0x2, 0xb4, 0x10, 0xf, + 0xf1, 0xfa, 0x80, 0x13, 0x4c, 0x0, 0x7a, 0x80, + 0x3, 0xd7, 0x0, 0xfe, 0x24, 0x41, 0x10, 0xcc, + 0x7, 0x88, 0x1, 0xfc, 0x28, 0xa2, 0x7, 0xa8, + 0x1, 0x93, 0x4c, 0x0, 0xfa, 0x40, 0x1f, 0x93, + 0xc, 0x52, 0x6c, 0xc1, 0x31, 0x0, 0x3f, 0x2e, + 0x98, 0xa, 0xa0, 0x80, 0x61, 0x45, 0x10, 0x23, + 0x40, 0xf, 0x93, 0x10, 0x13, 0x15, 0x10, 0x22, + 0x4c, 0x30, 0xf, 0x11, 0xb8, 0x1, 0x70, 0xc0, + 0x3c, 0x78, 0x80, 0x5, 0xf4, 0x0, 0xe3, 0xd4, + 0x3, 0xd4, 0x3, 0xd4, 0x2, 0x44, 0x10, 0x7, + 0x3e, 0x10, 0x16, 0x38, 0x7, 0xe7, 0xd2, 0x1, + 0x53, 0x10, 0x8, 0x91, 0x2, 0x48, 0x81, 0x0, + 0x26, 0x20, 0x1e, 0x20, 0x80, 0x47, 0xaa, 0x0, + 0x43, 0x20, 0xf, 0xc4, 0x68, 0x20, 0x7a, 0x80, + 0x1, 0x4c, 0x21, 0x4c, 0x30, 0x8, 0x53, 0x8, + 0x13, 0x10, 0x0, 0x2a, 0x82, 0x9, 0xea, 0x1, + 0xfe, 0x4f, 0x50, 0x3, 0x91, 0x1, 0x71, 0x1, + 0x71, 0x0, 0x38, 0x91, 0x44, 0x1f, 0x4c, 0x17, + 0xc8, 0x8, 0xd4, 0x40, 0x3f, 0xe4, 0xc2, 0x2, + 0xd7, 0x3c, 0x70, 0x3c, 0x40, 0xf, 0x8f, 0x10, + 0x9, 0x14, 0xc9, 0x44, 0x1f, 0xc, 0x3, 0xff, + 0x80, 0x46, 0x80, 0x7, 0xca, 0x32, 0x22, 0x28, + 0x80, 0x7e, 0x5c, 0x40, 0x3c, 0xac, 0x30, 0x3c, + 0x50, 0xf, 0xfe, 0x12, 0xfa, 0x1, 0x33, 0x10, + 0x53, 0x8, 0x3, 0xf8, 0x53, 0xc, 0x15, 0x94, + 0x5, 0x14, 0x40, 0x3f, 0xf8, 0x42, 0x86, 0x40, + 0x19, 0x31, 0x0, 0x3f, 0xe2, 0x44, 0x8, 0x6, + 0x4d, 0x30, 0xf, 0xc0, + + /* U+0058 "X" */ + 0x0, 0xc4, 0xfb, 0xfe, 0xea, 0x50, 0xf, 0xfe, + 0xa, 0x4f, 0x7f, 0xb1, 0xc8, 0x3, 0xe2, 0x79, + 0x61, 0x12, 0xc4, 0xc, 0x3, 0xf8, 0x9e, 0x18, + 0x49, 0xbd, 0xc8, 0x3, 0xf9, 0x22, 0xd4, 0x49, + 0xe1, 0x84, 0x3, 0xcb, 0x12, 0x62, 0xb1, 0x3, + 0x0, 0xff, 0xe0, 0xa, 0xc4, 0xc, 0x12, 0x20, + 0x80, 0x11, 0x44, 0x14, 0x4e, 0x61, 0x44, 0x3, + 0xff, 0x86, 0x4d, 0xee, 0x42, 0xd3, 0x6, 0xb0, + 0xe4, 0x47, 0xf7, 0x20, 0xf, 0xfe, 0x39, 0xc4, + 0xb0, 0x93, 0xe5, 0x28, 0xac, 0xc1, 0x80, 0x7f, + 0xf2, 0xd3, 0x10, 0x3, 0x93, 0x90, 0x3, 0xff, + 0x98, 0x71, 0x5, 0x13, 0x31, 0x2, 0xc3, 0x90, + 0x7, 0xff, 0x24, 0x9f, 0xdc, 0x8e, 0x7b, 0x25, + 0x44, 0xe2, 0x58, 0x40, 0x3f, 0xf8, 0xa2, 0xb1, + 0x26, 0x2d, 0xe, 0x40, 0x97, 0x6, 0x9, 0x16, + 0x80, 0x1f, 0xfc, 0x34, 0x8b, 0x51, 0x48, 0x82, + 0x0, 0x61, 0x6f, 0x72, 0x15, 0x98, 0x30, 0xf, + 0xf8, 0xa2, 0x58, 0x49, 0xe1, 0x84, 0x3, 0xe3, + 0x98, 0x51, 0x27, 0xf7, 0x20, 0xf, 0x85, 0xa5, + 0xc8, 0x56, 0x24, 0xc0, 0x3f, 0xc2, 0xb1, 0x3, + 0x3, 0x89, 0x61, 0x0, 0x0, + + /* U+0059 "Y" */ + 0x0, 0xb, 0xe7, 0xfd, 0x4a, 0x1, 0xff, 0xc2, + 0x16, 0xbf, 0xf7, 0x52, 0x80, 0x42, 0xf0, 0xc2, + 0xb, 0x2e, 0x40, 0x1f, 0xf1, 0x4d, 0xa0, 0x14, + 0xc2, 0x80, 0x72, 0x44, 0x98, 0x1c, 0xd9, 0x80, + 0x7f, 0x2c, 0x31, 0xa, 0xc3, 0x90, 0x7, 0xc2, + 0xf0, 0xc2, 0x26, 0x85, 0x10, 0xe, 0x17, 0x95, + 0x12, 0x68, 0x50, 0xf, 0xf9, 0x2e, 0x4c, 0x12, + 0x24, 0x80, 0x23, 0x89, 0x30, 0x58, 0x92, 0x0, + 0xff, 0xe0, 0x93, 0xc3, 0x9, 0x35, 0xa0, 0xb4, + 0x30, 0x93, 0xc2, 0x88, 0x7, 0xff, 0x11, 0x2e, + 0x4c, 0x5a, 0x72, 0xd0, 0x16, 0x24, 0x80, 0x3f, + 0xf8, 0xe4, 0xf0, 0xc2, 0x45, 0x9e, 0x14, 0x40, + 0x3f, 0xf9, 0x49, 0xea, 0x0, 0x14, 0xc2, 0x0, + 0xff, 0xff, 0x80, 0x7f, 0xfe, 0x0, + + /* U+005A "Z" */ + 0x0, 0x89, 0xf3, 0xff, 0xff, 0x95, 0xd2, 0x60, + 0x1c, 0x49, 0x33, 0xff, 0xc4, 0x86, 0x30, 0x8, + 0x9e, 0x8c, 0x3, 0xc6, 0xac, 0xdf, 0xfc, 0x25, + 0xf4, 0x30, 0x26, 0xe9, 0x30, 0xf, 0xfe, 0x49, + 0xc7, 0x39, 0xb, 0x4c, 0x8c, 0x3, 0xff, 0x92, + 0x6f, 0xce, 0x42, 0xd5, 0x28, 0x1, 0xff, 0xc9, + 0x27, 0xf8, 0x21, 0x6a, 0x94, 0x0, 0xff, 0xe4, + 0x93, 0xf4, 0x18, 0xb5, 0x4a, 0x0, 0x7f, 0xf2, + 0x49, 0xfa, 0xc, 0x56, 0xa5, 0x0, 0x3f, 0xf9, + 0x24, 0xfd, 0x6, 0x2b, 0x56, 0x80, 0x1f, 0xfc, + 0x92, 0x7e, 0x83, 0x15, 0xbb, 0x20, 0x80, 0x7f, + 0xf2, 0x9, 0xba, 0xc, 0x56, 0xec, 0xa2, 0x1, + 0xff, 0xc8, 0x26, 0xe9, 0x30, 0x15, 0x23, 0x76, + 0x6f, 0xfe, 0x22, 0x10, 0x4, 0x29, 0x46, 0x1, + 0xa, 0x3c, 0xcf, 0xff, 0x1b, 0x98, 0x0, + + /* U+005B "[" */ + 0x1, 0x6c, 0xff, 0xbb, 0xba, 0xd8, 0x80, 0x38, + 0xe3, 0xfb, 0xb5, 0xb1, 0x0, 0x7f, 0xff, 0xc0, + 0x3f, 0xff, 0xe0, 0x1f, 0xff, 0x37, 0x3, 0x9f, + 0xee, 0xd6, 0xc4, + + /* U+005C "\\" */ + 0x0, 0x92, 0x7b, 0x92, 0x80, 0x1f, 0xfc, 0x94, + 0xd7, 0x7, 0xd3, 0x0, 0xff, 0xe4, 0xa6, 0xa0, + 0xbd, 0x98, 0x7, 0xff, 0x25, 0x3d, 0x45, 0x6c, + 0xc0, 0x3f, 0xf9, 0x2b, 0xea, 0x4b, 0x64, 0x1, + 0xff, 0xc9, 0x5f, 0x42, 0x55, 0x10, 0x7, 0xff, + 0x25, 0x35, 0xa, 0xd4, 0x80, 0x3f, 0xf9, 0x2, + 0xfa, 0x66, 0xb4, 0x10, 0xf, 0xfe, 0x40, 0xbd, + 0x99, 0xb5, 0xc4, 0x3, 0xff, 0x90, 0x2b, 0x66, + 0x9a, 0xe2, 0x1, 0xff, 0xc8, 0x25, 0x42, 0x4c, + 0x40, 0xf, 0xfe, 0x49, 0x5a, 0x92, 0xfa, 0x80, + 0x7f, 0xf2, 0x4e, 0xd4, 0x57, 0xd0, 0x3, 0xff, + 0x92, 0x76, 0xe2, 0x9a, 0x80, 0x1f, 0xfc, 0x93, + 0xd7, 0x7, 0xd3, 0x0, 0xff, 0xe4, 0xa6, 0xa0, + 0xbd, 0x98, 0x7, 0xff, 0x25, 0x3d, 0x45, 0x6c, + 0xc0, 0x3f, 0xf9, 0x2b, 0x35, 0x4e, 0x0, 0xc0, + + /* U+005D "]" */ + 0x5, 0xae, 0xee, 0xff, 0xb6, 0x8, 0x0, 0xb5, + 0xdd, 0xd4, 0x80, 0x1f, 0xff, 0xf0, 0xf, 0xff, + 0xf8, 0x7, 0xff, 0xd9, 0x6b, 0xbb, 0xad, 0x0, + 0x1e, 0x0, + + /* U+005E "^" */ + 0x0, 0xff, 0x92, 0x7b, 0xfd, 0xd2, 0x60, 0x1f, + 0xfc, 0x94, 0xe6, 0x11, 0xcf, 0x48, 0x1, 0xff, + 0xc7, 0x5f, 0x51, 0x6b, 0xb2, 0x83, 0x72, 0x80, + 0x7f, 0xf1, 0x5, 0xb9, 0x5, 0xf5, 0x55, 0xce, + 0x2b, 0xcc, 0x20, 0x1f, 0xfc, 0x12, 0x6a, 0x41, + 0x7a, 0x40, 0x2, 0x6b, 0x8a, 0x53, 0x8, 0x7, + 0xfc, 0x55, 0x43, 0x26, 0xa3, 0x0, 0xc9, 0x4e, + 0x27, 0x4c, 0x40, 0x1f, 0xc7, 0x4c, 0x44, 0x5a, + 0x30, 0xf, 0x1d, 0x31, 0x12, 0xa8, 0x60, 0x1f, + 0x25, 0x30, 0x95, 0x50, 0x80, 0x3f, 0x1d, 0x29, + 0x11, 0xa9, 0x0, 0x20, + + /* U+005F "_" */ + 0x0, 0xb, 0x5f, 0xff, 0xff, 0x3b, 0x1c, 0x80, + 0x30, 0xb5, 0x6e, 0xff, 0xf3, 0xd8, 0x80, 0x0, + + /* U+0060 "`" */ + 0x0, 0x89, 0x54, 0x60, 0x1f, 0xc4, 0xfd, 0x54, + 0xdb, 0x62, 0x0, 0xf1, 0x3f, 0x52, 0x9a, 0x4f, + 0xca, 0x8, 0x7, 0x12, 0xd6, 0x53, 0x3, 0x55, + 0xa8, 0x80, 0x78, 0x56, 0x73, 0x15, 0xa, 0x20, + + /* U+0061 "a" */ + 0x0, 0xf0, 0xa3, 0x45, 0x5e, 0x6f, 0x7f, 0xbb, + 0x72, 0x9c, 0xc4, 0x3, 0xfc, 0xb5, 0xf7, 0xa, + 0x24, 0x95, 0x13, 0xe, 0xc4, 0xb1, 0x94, 0xc2, + 0x1, 0xf9, 0x6f, 0x37, 0xf6, 0xe6, 0x1d, 0x98, + 0xf3, 0x7a, 0xe4, 0x9, 0x4c, 0x40, 0x1f, 0x84, + 0x88, 0x20, 0x1f, 0xc2, 0x2e, 0x60, 0x1, 0xeb, + 0x0, 0x7f, 0x84, 0xd5, 0xe6, 0xf3, 0x7b, 0xfd, + 0xd9, 0xa, 0x1, 0x84, 0x3, 0xe3, 0x7b, 0xfc, + 0xbb, 0x6, 0x4f, 0x67, 0x7f, 0xba, 0x9c, 0x40, + 0x3f, 0x85, 0xa2, 0x8, 0x6f, 0xb9, 0x2e, 0xa6, + 0x42, 0x1, 0xff, 0xc3, 0x2f, 0x50, 0x3, 0x71, + 0x80, 0x7f, 0x19, 0x94, 0x40, 0x3f, 0x8f, 0x10, + 0x41, 0x22, 0xe5, 0xd9, 0xa8, 0x9b, 0xed, 0xa1, + 0x10, 0x7, 0xf9, 0x6f, 0x61, 0x49, 0x5e, 0x21, + 0x74, 0x61, 0xba, 0xfd, 0xb5, 0x0, 0xf8, + + /* U+0062 "b" */ + 0x5, 0xaf, 0xfa, 0x50, 0x3, 0xff, 0xfe, 0x1, + 0xff, 0xde, 0x10, 0x0, 0x9b, 0xcd, 0xe7, 0x76, + 0xdb, 0xa7, 0x31, 0x0, 0xff, 0x85, 0xeb, 0xf6, + 0x88, 0x89, 0x32, 0x67, 0x15, 0x54, 0x66, 0x25, + 0x0, 0x3f, 0xc6, 0xf5, 0xfb, 0x73, 0xe, 0xe8, + 0x9c, 0xf9, 0x40, 0x26, 0x87, 0x10, 0xf, 0xc9, + 0xa8, 0x20, 0x1f, 0xc2, 0xdc, 0xa0, 0x3, 0xc4, + 0x0, 0xff, 0xe5, 0xb1, 0x10, 0x0, 0xc4, 0x40, + 0xf, 0xfe, 0x53, 0x89, 0x80, 0x4, 0x46, 0x1, + 0xff, 0xc9, 0x13, 0x51, 0x0, 0x29, 0x8, 0x7, + 0xc4, 0x41, 0x0, 0xfe, 0x14, 0x89, 0x30, 0x16, + 0xd4, 0x0, 0xfc, 0x91, 0xf9, 0x50, 0xec, 0xc7, + 0x8b, 0xcb, 0x61, 0x12, 0xd4, 0x20, 0x7, 0xe4, + 0xaf, 0xda, 0x33, 0x54, 0x4c, 0x99, 0xb4, 0x67, + 0xd2, 0x8, 0x6, + + /* U+0063 "c" */ + 0x0, 0xfc, 0x26, 0xd3, 0x79, 0xbd, 0xfe, 0xed, + 0xba, 0x74, 0x10, 0xf, 0x89, 0xaf, 0xf2, 0x59, + 0x8e, 0x93, 0x13, 0x24, 0x7, 0x89, 0x91, 0x80, + 0x62, 0x6e, 0x94, 0x13, 0x8d, 0xd5, 0xcb, 0xb9, + 0x9e, 0x6f, 0x7f, 0x60, 0xc0, 0x22, 0x5a, 0x30, + 0x16, 0xf7, 0x20, 0xf, 0xfe, 0x2b, 0xe9, 0x80, + 0x17, 0xc, 0x3, 0xff, 0xc4, 0xe4, 0x40, 0x2, + 0xe1, 0x80, 0x7f, 0xf1, 0xca, 0xa8, 0x60, 0x2d, + 0xc, 0x40, 0x1f, 0xe1, 0x18, 0x3, 0x89, 0xfd, + 0xcc, 0x12, 0x73, 0x15, 0xe, 0xcc, 0x78, 0xac, + 0xfe, 0xa6, 0x10, 0xe, 0x38, 0xcd, 0xa7, 0x40, + 0x76, 0x99, 0x45, 0x20, 0xb4, 0xdd, 0x30, 0x80, + + /* U+0064 "d" */ + 0x0, 0xff, 0xe5, 0x13, 0xef, 0xfb, 0x1c, 0x80, + 0x3f, 0xff, 0xe0, 0x1f, 0xfc, 0xb2, 0x58, 0xac, + 0xde, 0xfe, 0xdc, 0xb8, 0x56, 0x1, 0x0, 0xff, + 0x1b, 0xe6, 0xd3, 0xa0, 0x3b, 0x44, 0xd2, 0x11, + 0xdd, 0xa0, 0xc0, 0x3f, 0x13, 0xfc, 0x18, 0x1c, + 0x66, 0x2a, 0x1d, 0xe8, 0x9b, 0xeb, 0x61, 0x0, + 0xf8, 0x96, 0xcc, 0x5, 0xbd, 0xc8, 0x3, 0xfc, + 0xdc, 0x60, 0x1f, 0x36, 0x98, 0x1, 0x7c, 0xc0, + 0x3f, 0xfa, 0x6, 0x1, 0xff, 0xcb, 0x62, 0x20, + 0x1, 0xb4, 0x80, 0x3f, 0xf9, 0x45, 0x68, 0x20, + 0x4d, 0x8, 0x20, 0x1f, 0xc4, 0x98, 0x60, 0x1f, + 0x8e, 0x2d, 0x4, 0x4b, 0x79, 0x70, 0xec, 0xc7, + 0x9b, 0xdc, 0x85, 0x0, 0xff, 0xa, 0xdf, 0xdb, + 0xa8, 0xb3, 0x22, 0x17, 0x62, 0x25, 0xef, 0xeb, + 0x88, 0x6, + + /* U+0065 "e" */ + 0x0, 0xfc, 0x28, 0xf5, 0x9b, 0xdf, 0xee, 0xdc, + 0xb8, 0x52, 0x0, 0xff, 0x89, 0xf3, 0xee, 0x59, + 0x95, 0x15, 0x48, 0xa5, 0x76, 0xad, 0xb5, 0x10, + 0xf, 0x13, 0xf4, 0x19, 0x46, 0x62, 0x9d, 0x95, + 0x4c, 0xf3, 0x94, 0xc2, 0x97, 0x6, 0x1, 0x89, + 0x6c, 0xc1, 0x65, 0xc8, 0x3, 0xfc, 0x9a, 0xe0, + 0x2a, 0xa1, 0x0, 0x9f, 0x4c, 0x0, 0xb5, 0xff, + 0xff, 0xc1, 0xb6, 0x0, 0xf, 0x10, 0x7, 0xe4, + 0x9d, 0xdf, 0xfe, 0x2f, 0xc9, 0x80, 0x4f, 0xa4, + 0x0, 0x6e, 0x2, 0x2f, 0xfe, 0x28, 0x80, 0x62, + 0x5a, 0x30, 0x27, 0x96, 0x20, 0xf, 0xfe, 0x49, + 0x3f, 0x41, 0x82, 0x4e, 0x62, 0xa1, 0x98, 0xac, + 0xc7, 0x9b, 0xdd, 0x49, 0x80, 0x7e, 0x27, 0xce, + 0xb8, 0x47, 0x65, 0x89, 0xa8, 0xbb, 0x10, 0xd4, + 0x59, 0x0, 0x40, + + /* U+0066 "f" */ + 0x0, 0xff, 0xe8, 0x1b, 0x56, 0x77, 0xfe, 0xed, + 0x83, 0x0, 0xf1, 0x47, 0x4a, 0x99, 0x34, 0xd5, + 0x2e, 0x6c, 0xc0, 0x3c, 0xe6, 0x40, 0x5, 0x99, + 0x32, 0xac, 0x86, 0x1, 0xe1, 0x30, 0x8, 0x49, + 0x80, 0x3f, 0x85, 0xaf, 0xfa, 0x50, 0x0, 0x2f, + 0x9f, 0xfa, 0x90, 0x2, 0x17, 0x8b, 0xa6, 0x20, + 0x0, 0xac, 0x5d, 0xe8, 0x50, 0xc, 0x26, 0x88, + 0xf6, 0x0, 0x89, 0x13, 0x88, 0x40, 0x3f, 0xff, + 0xe0, 0x1f, 0xff, 0xf0, + + /* U+0067 "g" */ + 0x0, 0xf0, 0x9b, 0x4d, 0xef, 0x73, 0xff, 0xff, + 0x85, 0x6c, 0x1, 0xf1, 0xc6, 0x62, 0x5c, 0x16, + 0xeb, 0x2e, 0xd2, 0xc6, 0x1, 0x1c, 0x5d, 0xd0, + 0xe0, 0x1e, 0x4a, 0x62, 0x5, 0xbb, 0x42, 0xa1, + 0xa2, 0x1a, 0x7a, 0xc, 0xf, 0x9, 0x50, 0xc4, + 0x3, 0xfc, 0x26, 0x20, 0x1f, 0xc6, 0x2e, 0x1, + 0xff, 0xc2, 0x4a, 0x62, 0x16, 0x88, 0x21, 0x0, + 0x42, 0x4b, 0x76, 0x40, 0x3d, 0x41, 0x0, 0xff, + 0x1c, 0x4a, 0x89, 0xb5, 0x6f, 0xfd, 0xdb, 0x6e, + 0xe8, 0xbd, 0x62, 0x0, 0xff, 0x8e, 0x29, 0x55, + 0x3f, 0xdf, 0xee, 0xe7, 0xfb, 0xb6, 0x9d, 0x4, + 0x3, 0xff, 0x80, 0x48, 0x81, 0x1, 0x21, 0x0, + 0x84, 0x40, 0x1f, 0xfc, 0x82, 0x36, 0x0, 0x2c, + 0xd3, 0xb3, 0x15, 0x7e, 0x44, 0x19, 0x8, 0x7, + 0xfc, 0x92, 0xe4, 0x4, 0x93, 0x35, 0x57, 0xd7, + 0x6c, 0xde, 0xda, 0x51, 0x0, 0xe1, 0x5a, 0xd6, + 0x64, 0xf7, 0x5f, 0xff, 0xbb, 0x72, 0x54, 0x49, + 0x65, 0x84, 0x3, 0x27, 0xa8, 0x96, 0xb8, 0x80, + 0x7f, 0x84, 0x8d, 0x48, 0xc0, 0xc, 0x42, 0x1, + 0x9f, 0xc, 0xe, 0x36, 0x19, 0xc, 0x8b, 0x8d, + 0x1a, 0x73, 0x5c, 0xd2, 0x61, 0x40, 0x38, 0x9b, + 0x31, 0x2c, 0xc4, 0xba, 0xdd, 0xd9, 0x8e, 0x8d, + 0x34, 0xbc, 0xfb, 0x62, 0x0, 0xc0, + + /* U+0068 "h" */ + 0x5, 0xaf, 0xfa, 0x50, 0x3, 0xff, 0xfe, 0x1, + 0xff, 0xd6, 0x25, 0x8a, 0xbd, 0xef, 0xed, 0xca, + 0x73, 0x10, 0xf, 0xe5, 0xfc, 0xc5, 0xa0, 0x12, + 0xcb, 0xa0, 0x1a, 0xc6, 0xda, 0x0, 0x7e, 0x20, + 0xbd, 0xfc, 0xa9, 0x87, 0x8a, 0xc8, 0x30, 0x15, + 0xe5, 0x0, 0xf9, 0xfd, 0xcc, 0x40, 0x3e, 0x14, + 0x40, 0x80, 0x18, 0xc4, 0x3, 0xff, 0x8e, 0x20, + 0x60, 0x10, 0x98, 0x7, 0xff, 0x23, 0xc0, 0x3f, + 0xff, 0xe0, 0x1f, 0xfd, 0xb0, + + /* U+0069 "i" */ + 0x15, 0xae, 0xe6, 0xca, 0x89, 0x99, 0x84, 0x44, + 0x43, 0x2, 0x6c, 0xff, 0xad, 0x84, 0x3, 0xfc, + 0xb5, 0xff, 0x4a, 0x0, 0x7f, 0xff, 0xc0, 0x3e, + + /* U+006A "j" */ + 0x0, 0xfe, 0x15, 0xad, 0xed, 0xa5, 0x10, 0xf, + 0xf1, 0x89, 0x9, 0x9, 0x98, 0x3, 0xf8, 0x5a, + 0xff, 0xeb, 0x62, 0x0, 0xff, 0xe8, 0x2d, 0x7f, + 0xd4, 0x80, 0x1f, 0xff, 0xf0, 0xf, 0xff, 0xf8, + 0x7, 0xff, 0x70, 0x88, 0xc0, 0x1, 0x27, 0x0, + 0xc2, 0x6a, 0xcc, 0x78, 0xa3, 0x0, 0x26, 0x98, + 0x6, 0x5a, 0x88, 0x4c, 0x20, 0x23, 0xdd, 0x94, + 0x0, + + /* U+006B "k" */ + 0x5, 0xaf, 0xfa, 0x50, 0x3, 0xff, 0xfe, 0x1, + 0xff, 0xea, 0x39, 0xdf, 0xf6, 0xca, 0x8, 0x7, + 0xff, 0x18, 0x56, 0xb5, 0x88, 0xe7, 0xe5, 0x4, + 0x3, 0xff, 0x88, 0x6f, 0xb4, 0xa6, 0xd7, 0xac, + 0x40, 0x1f, 0xfc, 0x41, 0x49, 0xe8, 0x33, 0x47, + 0xca, 0x8, 0x7, 0xff, 0x10, 0x9a, 0xa8, 0xc4, + 0x2, 0xc4, 0x60, 0x1f, 0xfc, 0x66, 0x99, 0x21, + 0x33, 0xa0, 0xad, 0xd9, 0x0, 0x3f, 0xf8, 0xc2, + 0xb5, 0xb3, 0x13, 0x23, 0x15, 0x99, 0x20, 0x7, + 0xff, 0xd, 0x6e, 0x94, 0x40, 0x4, 0xde, 0xe4, + 0x46, 0x98, 0x30, 0xf, 0xfe, 0x9, 0x88, 0x7, + 0xc7, 0x12, 0xc2, 0x4f, 0xee, 0x40, 0x1f, 0xfc, + 0xa4, 0x8b, 0x51, 0x38, 0xe7, 0x20, 0x8, + + /* U+006C "l" */ + 0x5, 0xaf, 0xfa, 0x50, 0x3, 0xff, 0xfe, 0x1, + 0xff, 0xeb, 0x30, 0xf, 0x31, 0x10, 0x0, 0xfc, + 0xa4, 0x1, 0x1d, 0x51, 0x4, 0x96, 0xe8, 0xc0, + + /* U+006D "m" */ + 0x5, 0xaf, 0xf5, 0xa8, 0x0, 0xda, 0x2b, 0x37, + 0xfd, 0xdb, 0x70, 0x82, 0x1, 0x8d, 0xab, 0x37, + 0xfd, 0xdb, 0x94, 0xe6, 0x20, 0x1f, 0xcd, 0xd5, + 0x9b, 0x66, 0x64, 0xa7, 0x52, 0x22, 0x3d, 0x51, + 0xda, 0x77, 0x56, 0x2a, 0xa8, 0x74, 0x3, 0x58, + 0xdb, 0x50, 0xf, 0xc4, 0xa3, 0x7b, 0xab, 0x98, + 0x78, 0xac, 0xa4, 0x1, 0x48, 0x81, 0xde, 0x6d, + 0xcc, 0x3c, 0x56, 0x41, 0x80, 0xaf, 0xa8, 0x7, + 0xe7, 0xf7, 0x30, 0xf, 0xcf, 0x86, 0x0, 0x16, + 0x96, 0x20, 0xf, 0x85, 0x10, 0x20, 0x6, 0x31, + 0x0, 0xff, 0xe3, 0x98, 0x80, 0x7f, 0xf1, 0x4, + 0xc, 0x2, 0x13, 0x0, 0xff, 0xe4, 0xb8, 0x7, + 0xff, 0x13, 0xc0, 0x3f, 0xff, 0xe0, 0x1f, 0xff, + 0xf0, 0xf, 0xfe, 0xc8, + + /* U+006E "n" */ + 0x5, 0xaf, 0xf5, 0xa8, 0x0, 0x96, 0x2a, 0xf7, + 0xbf, 0xb7, 0x29, 0xcc, 0x40, 0x3f, 0x37, 0x56, + 0x62, 0xd0, 0x9, 0x65, 0xd0, 0xd, 0x63, 0x6d, + 0x0, 0x3e, 0x25, 0x1b, 0xdf, 0xca, 0x98, 0x78, + 0xac, 0x83, 0x1, 0x5e, 0x50, 0xf, 0x9f, 0xdc, + 0xc4, 0x3, 0xe1, 0x44, 0x8, 0x1, 0x8c, 0x40, + 0x3f, 0xf8, 0xe2, 0x6, 0x1, 0x9, 0x80, 0x7f, + 0xf2, 0x3c, 0x3, 0xff, 0xfe, 0x1, 0xff, 0xdb, + + /* U+006F "o" */ + 0x0, 0xfc, 0x28, 0xf5, 0x79, 0xbd, 0xfd, 0xb9, + 0x72, 0xc6, 0x20, 0x1f, 0xfc, 0x12, 0x7c, 0xfb, + 0x84, 0x75, 0x54, 0xcc, 0xac, 0xed, 0x39, 0xf4, + 0xa2, 0x1, 0xf8, 0x9f, 0xa0, 0xc5, 0x27, 0xf2, + 0x61, 0xd9, 0xe2, 0xb3, 0x60, 0xc5, 0x6e, 0xca, + 0x20, 0x1c, 0x4b, 0x46, 0x4, 0xf0, 0xc2, 0x1, + 0xfc, 0x4f, 0xa, 0x22, 0x5e, 0x70, 0xe, 0x7d, + 0x20, 0x3, 0x69, 0x80, 0x7f, 0xf0, 0x57, 0x48, + 0x0, 0xbe, 0x60, 0x1f, 0xfd, 0x97, 0xd2, 0x0, + 0x36, 0x98, 0x7, 0xff, 0x5, 0x74, 0x80, 0xb, + 0xe6, 0x1, 0x89, 0x68, 0xc0, 0x9e, 0x18, 0x40, + 0x3f, 0x89, 0xe1, 0x44, 0x13, 0x9c, 0x3, 0xc4, + 0xfd, 0x6, 0x9, 0x3f, 0x92, 0xec, 0xc7, 0x8a, + 0xcc, 0x41, 0x8a, 0x4d, 0x28, 0x80, 0x7e, 0x27, + 0xce, 0xb8, 0x40, 0x49, 0x9c, 0xac, 0xee, 0x8c, + 0xfb, 0x61, 0x0, 0xe0, + + /* U+0070 "p" */ + 0x5, 0xaf, 0xf5, 0xb0, 0x89, 0x1e, 0x6f, 0x37, + 0xba, 0xdc, 0xa7, 0x41, 0x0, 0xff, 0x96, 0xf3, + 0xea, 0x84, 0x44, 0xa9, 0x67, 0x12, 0x58, 0xbc, + 0x94, 0x0, 0xfe, 0x10, 0x4a, 0xfd, 0xb9, 0x87, + 0x74, 0x4e, 0x7c, 0xa0, 0x13, 0x43, 0x88, 0x7, + 0xe4, 0xd4, 0x10, 0xf, 0xe1, 0x6e, 0x50, 0x1, + 0xe2, 0x0, 0x7f, 0xf2, 0xd8, 0x88, 0x0, 0x62, + 0x20, 0x7, 0xff, 0x29, 0xc4, 0xc0, 0x2, 0x23, + 0x0, 0xff, 0xe4, 0x89, 0xa8, 0x80, 0x14, 0x84, + 0x3, 0xe2, 0x20, 0x80, 0x7f, 0xa, 0x44, 0x98, + 0xb, 0x6a, 0x0, 0x7e, 0x49, 0xfd, 0xa8, 0x76, + 0x63, 0xc5, 0xe5, 0xb0, 0x89, 0x6a, 0x10, 0x3, + 0xf9, 0xab, 0x6c, 0xcd, 0x51, 0x32, 0x66, 0xd1, + 0x9f, 0x48, 0x20, 0x1f, 0xf0, 0x9b, 0x4d, 0xef, + 0x7f, 0x73, 0x6e, 0x5c, 0xc4, 0x3, 0xff, 0xfe, + 0x1, 0xff, 0xca, + + /* U+0071 "q" */ + 0x0, 0xfc, 0x4b, 0x15, 0x9b, 0xdf, 0xdb, 0x97, + 0x2c, 0x49, 0x1d, 0xf8, 0xe4, 0x1, 0xc6, 0xf9, + 0xb4, 0xe8, 0xe, 0xd1, 0x34, 0x84, 0x48, 0xdb, + 0x71, 0x0, 0xf8, 0x9f, 0xe0, 0xc0, 0xe3, 0x31, + 0x50, 0xef, 0x44, 0xdf, 0x5b, 0x8, 0x7, 0xc4, + 0xb6, 0x60, 0x2d, 0xee, 0x40, 0x1f, 0xe6, 0xe3, + 0x0, 0xf9, 0xb4, 0xc0, 0xb, 0xe6, 0x1, 0xff, + 0xd0, 0x30, 0xf, 0xfe, 0x5b, 0x11, 0x0, 0xd, + 0xa4, 0x1, 0xff, 0xca, 0x2b, 0x41, 0x2, 0x68, + 0x41, 0x0, 0xfe, 0x24, 0xc3, 0x0, 0xfc, 0x71, + 0x68, 0x22, 0x5b, 0xcb, 0x87, 0x66, 0x3c, 0xde, + 0xe4, 0x28, 0x7, 0xf8, 0x56, 0xfe, 0xdd, 0x45, + 0x99, 0x11, 0x59, 0x12, 0xf7, 0x24, 0x80, 0x3f, + 0xf8, 0x2, 0x91, 0x59, 0xbd, 0xfd, 0xcc, 0xb9, + 0x63, 0x0, 0x8, 0x7, 0xff, 0xfc, 0x3, 0xff, + 0x90, + + /* U+0072 "r" */ + 0x5, 0xaf, 0xf5, 0xa8, 0x0, 0xda, 0xb3, 0xbf, + 0xdd, 0x28, 0x1, 0xf3, 0xeb, 0xd6, 0xc3, 0x34, + 0xed, 0x3a, 0xa0, 0x1f, 0x1b, 0xc8, 0x5f, 0xe5, + 0x44, 0x25, 0xd0, 0x40, 0x3f, 0x1c, 0x5a, 0x88, + 0x7, 0xff, 0x11, 0x48, 0x40, 0x3f, 0xff, 0xe0, + 0x1f, 0xfd, 0xe0, + + /* U+0073 "s" */ + 0x0, 0xe2, 0x58, 0xac, 0xde, 0xff, 0x76, 0xe5, + 0xcb, 0xa0, 0x80, 0x7e, 0x49, 0xca, 0x74, 0x74, + 0x99, 0x54, 0x52, 0xa, 0x4c, 0x31, 0x0, 0x78, + 0xf5, 0xc4, 0x12, 0x2a, 0x5d, 0x95, 0x9e, 0x2b, + 0x7b, 0x1c, 0x80, 0x3c, 0x5e, 0xa0, 0x5, 0xd6, + 0x41, 0x0, 0xff, 0xe2, 0x8b, 0x55, 0xba, 0xb4, + 0x5f, 0x73, 0x2a, 0x14, 0xc4, 0x3, 0xff, 0x80, + 0x29, 0x17, 0xbd, 0x92, 0xce, 0xf5, 0x67, 0x6d, + 0x28, 0x80, 0x7f, 0xf0, 0x44, 0xda, 0x2f, 0x7f, + 0x1c, 0xc9, 0x6e, 0x10, 0x3, 0xc4, 0x50, 0x7, + 0xf8, 0xf1, 0x44, 0x4, 0x88, 0x1, 0x89, 0xff, + 0x76, 0xb9, 0x76, 0x55, 0x9e, 0x2e, 0x58, 0x44, + 0xbc, 0xe0, 0x18, 0x9f, 0x31, 0x2a, 0x25, 0x77, + 0x55, 0x25, 0x5d, 0x9e, 0xb2, 0x94, 0x40, 0x20, + + /* U+0074 "t" */ + 0x0, 0xe1, 0x36, 0x77, 0x20, 0x80, 0x7f, 0xf0, + 0x8a, 0xed, 0x13, 0xa4, 0x1, 0xff, 0xc2, 0x71, + 0x20, 0xf, 0xfe, 0x9, 0x46, 0xff, 0xad, 0x80, + 0x2, 0xd9, 0xff, 0xdd, 0x6, 0x5, 0x53, 0x54, + 0x62, 0x0, 0xa, 0x45, 0x57, 0xc4, 0x0, 0x24, + 0x55, 0x7b, 0x0, 0x44, 0x8a, 0xbc, 0x84, 0x20, + 0x1f, 0xff, 0xf7, 0x0, 0xff, 0xe1, 0x18, 0x80, + 0x4, 0x88, 0x20, 0x1f, 0xfc, 0x14, 0xc4, 0x0, + 0x25, 0xd9, 0xd9, 0xa7, 0x52, 0x0, 0xf0, 0xb4, + 0xd3, 0x20, 0x24, 0x4c, 0x5d, 0xb1, 0xc4, + + /* U+0075 "u" */ + 0x27, 0xcf, 0xf6, 0xb9, 0x0, 0x7f, 0xcb, 0x5f, + 0xf4, 0xa0, 0x7, 0xff, 0xfc, 0x3, 0xff, 0xe2, + 0x62, 0x1, 0x1f, 0x88, 0x7, 0xff, 0x1c, 0x4d, + 0x80, 0x2, 0x6a, 0x20, 0x1f, 0xa, 0x4c, 0x28, + 0x7, 0xcb, 0xea, 0x0, 0x49, 0xda, 0x87, 0x74, + 0xd6, 0x7d, 0x12, 0x20, 0x40, 0x3e, 0x5b, 0xc8, + 0x53, 0x24, 0x79, 0xa2, 0xb, 0xac, 0xb8, 0xc2, + 0x0, 0xe0, + + /* U+0076 "v" */ + 0x0, 0x92, 0x7b, 0xfd, 0x8c, 0x20, 0x1f, 0xfc, + 0x14, 0xae, 0xff, 0x52, 0x0, 0x72, 0x53, 0x88, + 0x1e, 0xb8, 0x80, 0x7f, 0xc9, 0xc8, 0x22, 0x6e, + 0x40, 0xf, 0x1d, 0x30, 0x82, 0x6b, 0x88, 0x7, + 0xf2, 0x6a, 0x8, 0x9f, 0x50, 0x3, 0xf1, 0xdb, + 0x10, 0x26, 0xb8, 0x80, 0x7c, 0x9a, 0xe2, 0x27, + 0xd4, 0x0, 0xff, 0x1d, 0x29, 0x2, 0x6b, 0x88, + 0x7, 0x26, 0xb8, 0x89, 0xe9, 0x0, 0x3f, 0xf8, + 0x5, 0x54, 0x20, 0x4d, 0x71, 0x0, 0x93, 0x5c, + 0x44, 0xd4, 0x60, 0x1f, 0xfc, 0x22, 0x5a, 0x30, + 0x4d, 0x40, 0x2, 0x6b, 0x88, 0x9a, 0xcc, 0x3, + 0xff, 0x88, 0x4d, 0x66, 0x9, 0xea, 0x98, 0xe2, + 0x4d, 0x66, 0x1, 0xff, 0xc6, 0x16, 0xa3, 0x5, + 0x89, 0x61, 0x25, 0xb3, 0x0, 0xff, 0xe4, 0xb, + 0xd2, 0x1, 0x10, 0x49, 0x68, 0xc0, 0x3f, 0xc0, + + /* U+0077 "w" */ + 0x16, 0xbf, 0xfa, 0x50, 0x3, 0xfc, 0xb5, 0xff, + 0x6c, 0x18, 0x7, 0xf9, 0xaf, 0xfd, 0xae, 0x40, + 0x1, 0x7d, 0x30, 0x2, 0x61, 0x80, 0x7e, 0x4c, + 0x40, 0x8, 0x91, 0x4, 0x1, 0xf9, 0x31, 0x0, + 0x55, 0x8, 0x2, 0x14, 0x41, 0x1, 0x22, 0x4, + 0x3, 0xc7, 0x88, 0x2a, 0xec, 0x27, 0x88, 0x20, + 0x1e, 0x3c, 0x40, 0x3, 0xe1, 0x80, 0x71, 0x5a, + 0x8, 0x1e, 0x20, 0x7, 0xa, 0x20, 0x8f, 0x27, + 0x10, 0x13, 0x10, 0x3, 0x89, 0x10, 0x20, 0x98, + 0x80, 0x1f, 0x1e, 0xb8, 0x1, 0x3d, 0x0, 0x33, + 0xe1, 0x92, 0x28, 0xa6, 0x18, 0x26, 0x20, 0x6, + 0x4c, 0x30, 0x3c, 0x40, 0xf, 0xe4, 0xc4, 0x0, + 0x26, 0x18, 0x1, 0x31, 0x1, 0x30, 0xc0, 0x51, + 0x4, 0x29, 0x86, 0x0, 0x4c, 0x40, 0x24, 0x51, + 0x0, 0xff, 0x26, 0xa0, 0xa, 0x20, 0x4f, 0x10, + 0x13, 0x10, 0x2, 0x2c, 0x41, 0x24, 0x40, 0x9e, + 0x38, 0xa, 0x59, 0x0, 0x7f, 0xc2, 0x98, 0x60, + 0x7a, 0xe8, 0x81, 0x3d, 0x40, 0xe, 0x4c, 0x40, + 0x3d, 0x74, 0x32, 0x4, 0xd3, 0x0, 0xff, 0xe0, + 0x92, 0x20, 0x41, 0x2e, 0x8c, 0x91, 0x2, 0x1, + 0xe4, 0xc4, 0x4, 0x89, 0x40, 0x4c, 0x40, 0xf, + 0xfe, 0x19, 0xe3, 0x88, 0x88, 0x82, 0x98, 0x40, + 0x1f, 0xb, 0xe1, 0x88, 0xc0, 0x78, 0x80, 0x1f, + 0xc0, + + /* U+0078 "x" */ + 0x0, 0xc7, 0x1b, 0xfe, 0xd9, 0x40, 0xf, 0xe3, + 0x8d, 0xff, 0x63, 0x90, 0x7, 0xe3, 0x8e, 0x72, + 0x23, 0x4c, 0x10, 0x7, 0xb, 0x7b, 0x91, 0x1f, + 0xdc, 0x80, 0x3f, 0xc7, 0x12, 0xc2, 0x4f, 0xce, + 0x40, 0x4, 0xb8, 0x31, 0x69, 0x83, 0x0, 0xff, + 0xe1, 0x24, 0x5a, 0x89, 0xc4, 0xc4, 0xc9, 0x41, + 0x6e, 0x10, 0x3, 0xff, 0x8a, 0x2b, 0x70, 0x80, + 0x8e, 0xc4, 0x91, 0x6a, 0x20, 0x1f, 0xfc, 0x85, + 0xc5, 0x0, 0xe7, 0x13, 0x0, 0xff, 0xe4, 0x24, + 0xc9, 0x41, 0x6a, 0xdc, 0x8e, 0x39, 0xc8, 0x3, + 0xff, 0x88, 0x71, 0x2c, 0x49, 0x16, 0xa9, 0x12, + 0xa2, 0x71, 0xcc, 0x40, 0x1f, 0xfc, 0x2, 0x7f, + 0x72, 0x23, 0xcb, 0x8, 0x4, 0x97, 0x64, 0x3, + 0x99, 0x30, 0x80, 0x7e, 0x26, 0xe8, 0x31, 0x69, + 0x82, 0x0, 0xf0, 0xac, 0xc9, 0x1, 0x26, 0x94, + 0x40, 0x20, + + /* U+0079 "y" */ + 0x0, 0x8e, 0x7b, 0xfd, 0x8e, 0x40, 0x1f, 0xfc, + 0x14, 0x9e, 0xfe, 0xa4, 0x0, 0xe3, 0xb9, 0x20, + 0x3a, 0x52, 0x0, 0xff, 0x93, 0x5c, 0x44, 0xfc, + 0x80, 0x1e, 0x26, 0xa3, 0x2, 0xaa, 0x10, 0x7, + 0xf2, 0x6b, 0x88, 0x9f, 0x50, 0x3, 0xf0, 0xb4, + 0xa0, 0x13, 0x51, 0x80, 0x7c, 0x9a, 0xe2, 0x27, + 0xa4, 0x0, 0xff, 0xa, 0xfa, 0x88, 0x9a, 0x90, + 0x3, 0x8f, 0x5c, 0x44, 0xf4, 0x60, 0x1f, 0xfc, + 0x14, 0x97, 0x11, 0x3f, 0x20, 0x4, 0x76, 0xe2, + 0x26, 0xa3, 0x0, 0xff, 0xe1, 0x9d, 0xc9, 0xa, + 0xf2, 0x1, 0xda, 0x89, 0x35, 0x98, 0x7, 0xff, + 0x14, 0x9a, 0x8c, 0x17, 0x9e, 0xd4, 0x88, 0xb6, + 0x60, 0x1f, 0xfc, 0x71, 0x69, 0x40, 0x58, 0x72, + 0x22, 0xd1, 0x80, 0x7f, 0xf2, 0x45, 0x7d, 0x40, + 0x22, 0x5a, 0x20, 0xf, 0xfe, 0x58, 0x90, 0x80, + 0xe, 0xa8, 0x40, 0x1f, 0xfc, 0xb4, 0x88, 0x20, + 0x25, 0x31, 0x0, 0x7f, 0xf1, 0x4d, 0x59, 0x8f, + 0x37, 0x4c, 0x27, 0x12, 0xc2, 0x1, 0xff, 0xc5, + 0x34, 0x99, 0xc8, 0xe9, 0x19, 0xae, 0x40, 0x1f, + 0xfc, 0x30, + + /* U+007A "z" */ + 0x0, 0x13, 0xe7, 0xff, 0xff, 0x17, 0x60, 0x80, + 0x31, 0x2c, 0x55, 0x7f, 0xa5, 0x88, 0x2, 0x3b, + 0xa2, 0x0, 0xe2, 0x45, 0x5f, 0xc8, 0x18, 0xe4, + 0x7, 0x1c, 0xc4, 0x1, 0xff, 0xc2, 0x15, 0xbb, + 0x28, 0x9c, 0x73, 0x90, 0x7, 0xff, 0x8, 0x56, + 0xec, 0xa2, 0x71, 0xce, 0x40, 0x1f, 0xfc, 0x21, + 0x4b, 0xb2, 0x89, 0xc7, 0x39, 0x0, 0x7f, 0xf0, + 0x85, 0x2e, 0x94, 0x4e, 0x39, 0xc8, 0x3, 0xff, + 0x84, 0x29, 0x74, 0xa2, 0x71, 0xce, 0x40, 0x1f, + 0xfc, 0x21, 0x4b, 0xa5, 0x11, 0x25, 0x93, 0xaa, + 0xff, 0xc6, 0x20, 0x12, 0x7a, 0x88, 0x0, 0x52, + 0x2a, 0xbf, 0xf8, 0x30, 0x80, 0x0, + + /* U+007B "{" */ + 0x0, 0xf8, 0x96, 0xb3, 0xbf, 0xdd, 0x6c, 0x40, + 0x1e, 0x4b, 0xb2, 0x8b, 0x67, 0xf5, 0xb1, 0x0, + 0x70, 0x91, 0x4, 0x49, 0x86, 0x1, 0xfe, 0x10, + 0xf, 0xfe, 0x31, 0x88, 0x9, 0x80, 0x7f, 0xf1, + 0x84, 0x3, 0xff, 0x80, 0x20, 0x1f, 0xfc, 0x31, + 0x5e, 0x40, 0x3d, 0x70, 0xf, 0x92, 0x7f, 0xa9, + 0x4a, 0x39, 0xc8, 0x3, 0xe4, 0x8c, 0xb7, 0x33, + 0x44, 0xb0, 0x80, 0x7e, 0x13, 0x48, 0x95, 0x4, + 0xc5, 0x0, 0xff, 0xe0, 0x8, 0x6, 0x10, 0xf, + 0xfe, 0x0, 0x80, 0x61, 0x0, 0xff, 0xe0, 0x18, + 0x80, 0x98, 0x7, 0xff, 0x0, 0x40, 0x3f, 0xf8, + 0xa2, 0x44, 0x11, 0x26, 0x18, 0x7, 0xfc, 0x97, + 0x66, 0x15, 0xde, 0xe5, 0xb1, 0x0, + + /* U+007C "|" */ + 0x2, 0x7c, 0xfa, 0x50, 0xf, 0xff, 0xf8, 0x7, + 0xff, 0xfc, 0x3, 0xff, 0x96, + + /* U+007D "}" */ + 0x5, 0xae, 0xff, 0x76, 0xdb, 0x18, 0x7, 0xe5, + 0xae, 0xfe, 0x91, 0x49, 0x85, 0x0, 0xff, 0x85, + 0x10, 0x40, 0xda, 0x40, 0x1f, 0xfc, 0x4f, 0x0, + 0xff, 0xe1, 0x18, 0x8, 0x18, 0x7, 0xff, 0x0, + 0x40, 0xe, 0x22, 0x0, 0xff, 0xe0, 0x8, 0x7, + 0xff, 0x10, 0xb9, 0x41, 0x35, 0x88, 0x3, 0xfc, + 0x2d, 0x52, 0x8b, 0x3b, 0xf6, 0xc2, 0x1, 0xf2, + 0xdc, 0xa1, 0xb5, 0x65, 0x30, 0x80, 0x78, 0xf5, + 0xc0, 0xee, 0x14, 0xc4, 0x3, 0xf8, 0x4c, 0x1c, + 0x4, 0x3, 0xff, 0x80, 0x20, 0x7, 0x11, 0x0, + 0x7f, 0xf0, 0x4c, 0x4, 0xc, 0x3, 0xff, 0x89, + 0xe0, 0x1f, 0xf1, 0x22, 0x8, 0x1b, 0x48, 0x3, + 0xcb, 0x5d, 0xcc, 0xa0, 0x59, 0x92, 0x80, 0x78, + + /* U+007E "~" */ + 0x0, 0xff, 0xeb, 0x13, 0x56, 0x77, 0xf6, 0xdc, + 0x20, 0x80, 0x7c, 0x26, 0x86, 0x20, 0x19, 0x27, + 0x25, 0x96, 0xee, 0xa1, 0x5b, 0xfb, 0x84, 0x22, + 0x1b, 0x56, 0xd4, 0xa0, 0x80, 0x4d, 0xf3, 0x5d, + 0x2a, 0x8a, 0xf5, 0x98, 0x90, 0x6b, 0xdd, 0x64, + 0xbb, 0x55, 0xa8, 0x80, 0x44, 0xce, 0xa4, 0x1, + 0xe1, 0x37, 0xbe, 0xfe, 0xde, 0xfc, 0x84, 0x10, + 0x8, + + /* U+4E00 "一" */ + 0x2, 0x7c, 0xff, 0xff, 0xf1, 0x63, 0x90, 0x0, + 0xd2, 0xa2, 0x3f, 0xfc, 0x54, 0x86, 0x0, + + /* U+4E09 "三" */ + 0x0, 0xe1, 0x24, 0x4f, 0xfe, 0xd9, 0x88, 0x7, + 0xe2, 0xaa, 0x5d, 0xff, 0xf6, 0x6a, 0x8a, 0x1, + 0xf8, 0xe3, 0xbf, 0xff, 0xfb, 0x3d, 0x28, 0x1, + 0xff, 0xff, 0x0, 0xff, 0xff, 0x80, 0x7f, 0xf0, + 0xc9, 0x19, 0xbf, 0xfa, 0x48, 0x40, 0x1f, 0xfc, + 0x41, 0x4f, 0x99, 0xff, 0xe9, 0x42, 0x8, 0x7, + 0xff, 0xc, 0x5a, 0xff, 0xff, 0xfa, 0x58, 0xc2, + 0x1, 0xff, 0xff, 0x0, 0xff, 0xff, 0x80, 0x7f, + 0xf0, 0x4, 0x91, 0x3f, 0xfc, 0x24, 0x20, 0x2, + 0xba, 0xbb, 0xff, 0xef, 0xd5, 0x8, 0x0, 0x73, + 0xfd, 0xdf, 0xfd, 0xff, 0x83, + + /* U+4E8C "二" */ + 0x0, 0xf8, 0xd5, 0xdf, 0xff, 0xb0, 0xa6, 0x1, + 0xff, 0xc1, 0x15, 0xe8, 0x8f, 0xfe, 0xc7, 0x28, + 0x80, 0x7f, 0xf0, 0x5, 0xaf, 0xff, 0xff, 0xb1, + 0x6c, 0x20, 0x1f, 0xff, 0xf0, 0xf, 0xff, 0xf8, + 0x7, 0xff, 0xfc, 0x3, 0xff, 0xfe, 0x1, 0xff, + 0xff, 0x0, 0xff, 0xfa, 0x9c, 0xf7, 0xff, 0xff, + 0x83, 0xa5, 0x0, 0x30, 0xec, 0xbb, 0xff, 0xf8, + 0x27, 0x18, 0x0, + + /* U+4E94 "五" */ + 0x0, 0xf1, 0x1a, 0x27, 0xff, 0x68, 0x84, 0x3, + 0xfe, 0x25, 0xfb, 0xbf, 0xfe, 0xcd, 0x5a, 0x80, + 0x7f, 0xc4, 0xf9, 0xff, 0xff, 0xc0, 0xd7, 0x20, + 0x2, 0xd7, 0xff, 0xff, 0x1b, 0xa5, 0x0, 0x3f, + 0xf9, 0xce, 0x44, 0x3, 0xd7, 0x0, 0xff, 0xf1, + 0x16, 0xb8, 0x1, 0x4c, 0x80, 0x3f, 0xfc, 0x22, + 0x86, 0x40, 0x7c, 0xc0, 0x1f, 0xfd, 0x71, 0x7c, + 0xff, 0xfd, 0xd2, 0x80, 0x3, 0x8d, 0xff, 0xff, + 0xe1, 0x74, 0x18, 0x7, 0xff, 0x18, 0x5b, 0xf3, + 0x3e, 0xa6, 0x20, 0x1, 0xbd, 0xe6, 0x7f, 0xd4, + 0xc4, 0x1, 0xff, 0xcb, 0x13, 0x3f, 0xc2, 0x4, + 0x5, 0x74, 0x86, 0x7f, 0xf2, 0x70, 0x80, 0x7f, + 0xf4, 0xc8, 0xd0, 0x0, 0x86, 0x40, 0x1f, 0xfe, + 0x11, 0x4c, 0x20, 0x4f, 0x50, 0xf, 0xff, 0x12, + 0xfa, 0x1, 0x1a, 0x8, 0x7, 0xff, 0x84, 0xf1, + 0x0, 0xf, 0x84, 0x1, 0xff, 0xd6, 0x49, 0xef, + 0xff, 0xec, 0x72, 0x0, 0x2d, 0xff, 0xff, 0xf0, + 0xfa, 0xc, 0x5, 0xf3, 0xff, 0xdd, 0x28, 0x1, + 0x96, 0xae, 0xab, 0xff, 0xc1, 0x74, 0xa0, 0x0, + + /* U+503C "值" */ + 0x0, 0xff, 0xfb, 0x1c, 0x6e, 0xa5, 0x40, 0x3f, + 0xf8, 0x2, 0xd7, 0xfe, 0xa4, 0x0, 0xff, 0xe8, + 0x2c, 0xb9, 0x37, 0x31, 0x19, 0xff, 0xcf, 0x8a, + 0x4, 0x62, 0x67, 0xff, 0xc0, 0x10, 0xf, 0xfe, + 0x9, 0x3c, 0xa8, 0x2f, 0x22, 0x3b, 0x33, 0xfe, + 0x95, 0x10, 0x26, 0xac, 0xcf, 0xfb, 0xa4, 0xc0, + 0x3f, 0xe3, 0xb9, 0x31, 0x6e, 0x53, 0x7c, 0xff, + 0xff, 0x63, 0x90, 0x24, 0xff, 0xff, 0xf0, 0x76, + 0xc, 0x3, 0xf8, 0x9f, 0xd8, 0x44, 0xf4, 0x80, + 0x1c, 0x24, 0x5f, 0x1a, 0x20, 0x84, 0x8b, 0xff, + 0x82, 0x20, 0x1f, 0xf1, 0x3f, 0x41, 0x80, 0xf, + 0x84, 0x3, 0x8e, 0x73, 0x75, 0x99, 0xb6, 0x48, + 0x41, 0xeb, 0x33, 0xed, 0xdb, 0x98, 0x80, 0x3e, + 0x14, 0x9f, 0x83, 0x11, 0x80, 0x3f, 0xf8, 0x2b, + 0x7d, 0xdf, 0xfc, 0x4f, 0x93, 0x0, 0xff, 0xe0, + 0x12, 0x9a, 0x4e, 0xc2, 0x80, 0x7f, 0xf0, 0x56, + 0xbb, 0xbf, 0xf8, 0xb2, 0x60, 0x1f, 0xf0, 0xb6, + 0xfd, 0xb1, 0x0, 0x7f, 0xf0, 0xd6, 0xbb, 0xbf, + 0xf8, 0x9b, 0x6, 0x1, 0xff, 0xc1, 0x11, 0x0, + 0x7f, 0xf1, 0x84, 0xc4, 0x7f, 0xf8, 0x80, 0x1f, + 0xfd, 0x84, 0x8f, 0xff, 0xfe, 0x26, 0x41, 0x80, + 0x7f, 0xf5, 0x56, 0xfb, 0xbf, 0xf8, 0x9f, 0x26, + 0x1, 0xff, 0xd5, 0x5a, 0xee, 0xff, 0xe2, 0xc9, + 0x80, 0x7f, 0xf5, 0x56, 0xbb, 0xbf, 0xf8, 0x9b, + 0x6, 0x1, 0xff, 0xcd, 0x12, 0x29, 0x84, 0x0, + 0x26, 0x45, 0xff, 0xc4, 0x1f, 0x0, 0xf, 0x31, + 0x10, 0x44, 0x1, 0xff, 0xc4, 0x38, 0xcd, 0xd5, + 0x30, 0x82, 0x4e, 0xef, 0xff, 0x13, 0x1c, 0xc0, + 0x9a, 0xf7, 0x54, 0xe2, 0x0, + + /* U+516D "六" */ + 0x0, 0xff, 0xe5, 0x94, 0x6f, 0xf4, 0x98, 0x7, + 0xff, 0xfc, 0x3, 0xff, 0xfe, 0x1, 0xff, 0xda, + 0x39, 0xef, 0xff, 0xfe, 0x36, 0xb9, 0x0, 0xb6, + 0x7f, 0xff, 0xf1, 0xe9, 0x40, 0x38, 0xb6, 0x26, + 0x7f, 0xfc, 0x1c, 0xe0, 0x1c, 0x28, 0xcd, 0xff, + 0xe1, 0x42, 0x0, 0xff, 0xfd, 0xb, 0x5f, 0xfb, + 0x1c, 0x80, 0x3f, 0xe1, 0x59, 0xde, 0xb6, 0x20, + 0xf, 0xfe, 0x71, 0xcd, 0xa0, 0x1d, 0xa9, 0x0, + 0x7f, 0xc2, 0xba, 0x80, 0x93, 0x26, 0x20, 0xf, + 0xfe, 0x50, 0xac, 0x39, 0xa, 0xcb, 0x90, 0x7, + 0xff, 0x9, 0x22, 0xd4, 0x52, 0x79, 0x88, 0x3, + 0xff, 0x8e, 0x73, 0x8, 0x5, 0x30, 0xa0, 0x1f, + 0xfc, 0x51, 0x5b, 0xb2, 0x89, 0xcc, 0x98, 0x80, + 0x3f, 0xf8, 0x64, 0xfe, 0xe4, 0x2b, 0xc, 0x40, + 0x1f, 0xfc, 0x81, 0x5b, 0x84, 0x4, 0x98, 0x51, + 0x0, 0xff, 0x8e, 0x3a, 0xc, 0x12, 0xec, 0xa2, + 0x1, 0xff, 0xcb, 0x16, 0x98, 0x20, 0x5b, 0x83, + 0x0, 0xf8, 0x56, 0xb5, 0xcc, 0x52, 0xa8, 0xa2, + 0x1, 0xff, 0xcf, 0x27, 0x95, 0x11, 0x34, 0x30, + 0x80, 0x61, 0x2d, 0x60, 0x26, 0xab, 0x51, 0x0, + 0xff, 0xe9, 0xa4, 0x31, 0x90, 0x81, 0x0, 0x61, + 0x38, 0xce, 0xd9, 0x40, 0xf, 0xfe, 0xb9, 0x46, + 0x6d, 0x31, 0x80, 0x40, + + /* U+51FA "出" */ + 0x0, 0xff, 0xe4, 0x1c, 0xf7, 0xe3, 0x8, 0x7, + 0xff, 0x34, 0x48, 0xcc, 0x42, 0x1, 0xff, 0xd0, + 0x13, 0x38, 0x80, 0x3f, 0x96, 0xf7, 0x25, 0xc4, + 0x3, 0xff, 0x9c, 0x4d, 0xd9, 0xb4, 0x60, 0x1f, + 0xff, 0xf0, 0xf, 0xff, 0xf8, 0x7, 0x9b, 0xdd, + 0x57, 0xfa, 0xc8, 0x40, 0x71, 0xd5, 0x7f, 0xed, + 0x30, 0xf, 0xfe, 0x21, 0x34, 0xd5, 0x7f, 0x3a, + 0x0, 0x9, 0x66, 0xab, 0xfd, 0xa, 0x20, 0x60, + 0x1f, 0x85, 0xb, 0xaf, 0x7f, 0xff, 0xf8, 0x18, + 0xc2, 0x7, 0x3d, 0xff, 0xff, 0xc1, 0xd8, 0xf4, + 0x41, 0x0, 0x65, 0xd8, 0x87, 0x20, 0x80, 0x7f, + 0xf4, 0xdf, 0xa2, 0x1c, 0xc0, 0x1f, 0xff, 0xf0, + 0xf, 0xff, 0xf8, 0x7, 0xff, 0x11, 0xc0, 0x30, + 0x98, 0x7, 0xff, 0x0, 0x4c, 0x3, 0xff, 0x82, + 0x93, 0xdf, 0xff, 0xf5, 0xb0, 0x81, 0xc6, 0xff, + 0xff, 0xf0, 0x3a, 0x50, 0x3, 0xff, 0x80, 0x6d, + 0x57, 0x7f, 0xfd, 0x37, 0x41, 0x11, 0x80, 0x40, + + /* U+5382 "厂" */ + 0x0, 0xf0, 0xb5, 0xff, 0xff, 0xf7, 0x31, 0xc4, + 0x3, 0xff, 0x82, 0x6f, 0x33, 0xff, 0xd9, 0x41, + 0x0, 0xff, 0xe0, 0xa, 0xdb, 0x37, 0xff, 0x61, + 0x4c, 0x3, 0xff, 0xfe, 0x1, 0xff, 0xff, 0x0, + 0xff, 0xe5, 0xb8, 0x7, 0xff, 0xa0, 0x40, 0x21, + 0x0, 0xff, 0xf2, 0x17, 0x88, 0x1f, 0x88, 0x7, + 0xff, 0x8d, 0xc4, 0xc1, 0x84, 0xc0, 0x3f, 0xfc, + 0x42, 0x6a, 0x20, 0x24, 0x20, 0x1f, 0xfe, 0x24, + 0xd3, 0x4, 0xc5, 0x0, 0xff, 0xf1, 0x27, 0xa0, + 0x11, 0xa8, 0x80, 0x7f, 0xf8, 0x9, 0xe1, 0x44, + 0xea, 0x86, 0x1, 0xff, 0xe1, 0x6f, 0x2, 0x59, + 0x72, 0x0, 0xff, 0xf1, 0x24, 0x66, 0xd2, 0x80, + 0x7f, 0xf8, 0x80, + + /* U+56DB "四" */ + 0x1, 0x35, 0x5f, 0xfe, 0xf2, 0x10, 0x1, 0x26, + 0xab, 0xff, 0xbd, 0xe8, 0x20, 0x1c, 0x95, 0xff, + 0xf7, 0x41, 0x81, 0xc6, 0xff, 0xf5, 0xa8, 0x1, + 0x6b, 0xff, 0xfa, 0xd4, 0x3, 0xff, 0x8e, 0x7e, + 0x20, 0x1, 0x30, 0xf, 0xfe, 0xeb, 0x9, 0x83, + 0x18, 0x80, 0x7f, 0xf7, 0x8, 0xd4, 0x4b, 0x5c, + 0x3, 0xff, 0x8c, 0x22, 0x0, 0xff, 0xe4, 0x12, + 0xd9, 0x8a, 0x20, 0x80, 0x3f, 0xf8, 0xa7, 0x1f, + 0x7c, 0x20, 0x1f, 0xfc, 0x31, 0x58, 0x93, 0x34, + 0xd9, 0x80, 0x7e, 0x30, 0x3, 0x11, 0x91, 0x46, + 0x8a, 0x20, 0x1, 0x0, 0xff, 0x8c, 0x96, 0x72, + 0x94, 0xdf, 0xdc, 0x80, 0x3f, 0x2e, 0xb1, 0x94, + 0x66, 0xed, 0x92, 0xd, 0xf8, 0x1, 0xff, 0xc0, + 0x14, 0xe5, 0x68, 0xcd, 0x83, 0x0, 0xff, 0xa, + 0x4e, 0x77, 0xff, 0xbb, 0x25, 0x8, 0x3, 0xff, + 0x80, 0x4d, 0x79, 0x6e, 0x60, 0x1f, 0xff, 0xf0, + 0xf, 0xfe, 0xa, 0x57, 0x77, 0xff, 0x5a, 0x94, + 0x3, 0xfc, 0x4d, 0x17, 0x7f, 0xfd, 0x57, 0x30, + 0xf, 0xf3, 0x63, 0x2a, 0xff, 0xf5, 0x75, 0x48, + 0x82, 0x60, + + /* U+5927 "大" */ + 0x0, 0xff, 0xe6, 0x2d, 0xff, 0xad, 0x84, 0x3, + 0xff, 0xc6, 0x60, 0x1c, 0x20, 0x1f, 0xfe, 0x21, + 0x0, 0xe3, 0x0, 0xff, 0xf1, 0x98, 0xb0, 0x0, + 0x84, 0x3, 0xff, 0xc6, 0x3c, 0x60, 0x42, 0xe0, + 0x1f, 0xfc, 0xe1, 0x7c, 0xff, 0xff, 0xe3, 0x63, + 0x8, 0x13, 0xe7, 0xff, 0xff, 0x1f, 0xa4, 0xc0, + 0x30, 0xa4, 0xcf, 0xff, 0x19, 0x8c, 0x3, 0xc6, + 0xf3, 0x3f, 0xfc, 0x58, 0xd2, 0x0, 0xe3, 0x56, + 0x6f, 0xfe, 0x22, 0x70, 0x80, 0x8, 0x82, 0x4, + 0xa, 0xcd, 0xff, 0xc5, 0x41, 0x0, 0xff, 0xe5, + 0xa, 0xd9, 0x2, 0xc7, 0x31, 0xb, 0x4a, 0x0, + 0x7f, 0xf6, 0xce, 0x68, 0xc1, 0x7d, 0x4e, 0x6c, + 0xc5, 0x61, 0xc8, 0x3, 0xff, 0xae, 0x4f, 0xee, + 0x44, 0x79, 0x50, 0x0, 0xb4, 0x30, 0x9c, 0x4b, + 0x8, 0x7, 0xff, 0x4c, 0x9a, 0x64, 0x62, 0xd3, + 0x6, 0x1, 0xc9, 0x14, 0xa2, 0x93, 0x4c, 0x20, + 0x1f, 0xfc, 0xe1, 0x5a, 0xc9, 0x40, 0x5b, 0x84, + 0x0, 0xfc, 0x29, 0x76, 0x51, 0x49, 0xca, 0x51, + 0x0, 0xff, 0xe4, 0x13, 0x56, 0x52, 0x82, 0x4e, + 0x52, 0x88, 0x7, 0xfc, 0x2b, 0x5b, 0x8, 0x6b, + 0x59, 0x4a, 0x40, 0x1f, 0xf0, 0x92, 0xce, 0x76, + 0xca, 0x82, 0xce, 0x5b, 0x10, 0x7, 0xff, 0x14, + 0xde, 0xf6, 0xc, 0xcb, 0x5b, 0xd7, 0xa, 0x40, + 0x1c, 0x73, 0xf4, 0xc2, 0xb1, 0x7b, 0xaa, 0x62, + 0x0, 0xff, 0xe5, 0x9b, 0xe7, 0xe4, 0x29, 0xa3, + 0xc5, 0x18, 0x6, 0x38, 0xce, 0xe6, 0xdb, 0xa1, + 0x0, 0x7f, 0xf4, 0x84, 0xde, 0xb7, 0xb9, 0x90, + 0x60, 0x0, + + /* U+5C0F "小" */ + 0x0, 0xff, 0xe6, 0x13, 0xef, 0xf4, 0x98, 0x7, + 0xff, 0xfc, 0x3, 0xff, 0xfe, 0x1, 0xff, 0xe1, + 0x48, 0xcc, 0x4a, 0x88, 0x7, 0xff, 0x25, 0x27, + 0x7a, 0x94, 0x40, 0x3f, 0xf8, 0xc9, 0xac, 0x64, + 0x2, 0x20, 0xf, 0xfe, 0x4a, 0xe3, 0x82, 0xc4, + 0x98, 0x7, 0xff, 0x10, 0xf1, 0x4, 0x13, 0x50, + 0x3, 0xff, 0x94, 0x2b, 0x12, 0x44, 0x78, 0x61, + 0x0, 0xff, 0xe0, 0x92, 0x29, 0x2, 0xfa, 0x0, + 0x7f, 0xf3, 0x49, 0xe1, 0x45, 0x22, 0xd0, 0x3, + 0xfe, 0x3a, 0xa1, 0x2, 0xfa, 0x80, 0x7f, 0xf4, + 0x16, 0x24, 0x85, 0x61, 0x84, 0x3, 0xf2, 0x4b, + 0x10, 0xb4, 0xa8, 0x7, 0xff, 0x48, 0x9a, 0xd0, + 0xe, 0xe4, 0x80, 0x39, 0x26, 0x4a, 0x27, 0x10, + 0x30, 0xf, 0xfe, 0xa0, 0xbf, 0x20, 0x12, 0xd1, + 0x0, 0x5, 0x79, 0xc8, 0xe7, 0x98, 0x40, 0x3f, + 0xfa, 0xc2, 0x9a, 0x80, 0x46, 0x82, 0x2, 0xb5, + 0xfd, 0xac, 0x40, 0x1f, 0xfd, 0x91, 0x79, 0xde, + 0xb6, 0x10, 0xc, 0x23, 0x0, 0x7f, 0xf7, 0x4, + 0x88, 0x20, 0x1f, 0xfc, 0x51, 0x35, 0x66, 0xfa, + 0xec, 0x40, 0x62, 0x20, 0xf, 0xfe, 0xc8, 0xbe, + 0x44, 0xcf, 0x9c, 0x4d, 0xa2, 0x88, 0x3, 0xff, + 0xb4, 0x93, 0xdf, 0xfe, 0xed, 0xc9, 0x52, 0x0, + 0xff, 0xe6, 0x0, + + /* U+5E74 "年" */ + 0x0, 0xff, 0xe1, 0x88, 0x80, 0x3f, 0xfc, 0xc9, + 0x5f, 0xda, 0xe4, 0x1, 0xff, 0xe1, 0x27, 0x85, + 0x13, 0xa5, 0x20, 0xf, 0xff, 0x2, 0x44, 0x98, + 0x0, 0xe3, 0x7f, 0xff, 0xfa, 0x1d, 0x28, 0x1, + 0xff, 0xc0, 0x38, 0x95, 0x13, 0x7a, 0xaf, 0xfa, + 0x54, 0x80, 0x8, 0xf5, 0x5f, 0xfc, 0x2b, 0xa5, + 0x0, 0xfe, 0x14, 0x9e, 0x72, 0x49, 0xe8, 0x55, + 0xff, 0x9f, 0x4, 0x4, 0xb1, 0x57, 0xff, 0x86, + 0x62, 0x1, 0xf1, 0xc6, 0xdb, 0x1a, 0xd5, 0x18, + 0x80, 0x3f, 0xfc, 0x1c, 0xad, 0x39, 0x48, 0xf9, + 0xff, 0xff, 0xc1, 0xe9, 0x30, 0x16, 0xbf, 0xff, + 0xfe, 0xe, 0xc1, 0x0, 0x7e, 0x36, 0x99, 0x31, + 0x0, 0x4, 0x0, 0x2b, 0x17, 0x7f, 0xd2, 0xc4, + 0x0, 0x48, 0xbb, 0xff, 0xe0, 0xcd, 0x10, 0x7, + 0xff, 0x1c, 0xc9, 0x13, 0xfc, 0xfe, 0x20, 0x24, + 0x68, 0x9f, 0xfc, 0x22, 0x0, 0xff, 0xfd, 0x18, + 0x4, 0x60, 0x1f, 0xfc, 0x1, 0x0, 0xff, 0xe7, + 0x8b, 0x5f, 0xff, 0xb6, 0xc, 0x5, 0xf3, 0xff, + 0xfb, 0xa0, 0xc0, 0x5a, 0xff, 0xff, 0xf8, 0xb8, + 0xc2, 0x0, 0x17, 0x8b, 0xbf, 0xfe, 0x55, 0x31, + 0x0, 0x12, 0x2e, 0xff, 0xf8, 0xbe, 0xe2, 0x1, + 0x9, 0xa2, 0x7f, 0xf2, 0xfc, 0x40, 0x48, 0xd1, + 0x3f, 0xf8, 0xa6, 0x20, 0x1f, 0xff, 0xf0, 0xf, + 0xfe, 0xb8, + + /* U+62A4 "护" */ + 0x0, 0xfe, 0x38, 0xef, 0xb6, 0x0, 0xff, 0xe2, + 0x13, 0x5e, 0x53, 0x8, 0x7, 0xff, 0x80, 0x93, + 0x1, 0x67, 0x58, 0x80, 0x3f, 0xfb, 0xe4, 0xfd, + 0x4, 0x74, 0xa4, 0x1, 0xff, 0xc0, 0x13, 0x55, + 0xe4, 0x30, 0x3, 0x7a, 0xae, 0x42, 0x0, 0x2c, + 0xee, 0xff, 0x7d, 0x18, 0x8a, 0xbf, 0x77, 0xe9, + 0x50, 0x9, 0x6a, 0xea, 0xb4, 0x20, 0x81, 0x35, + 0x56, 0x85, 0x10, 0x32, 0x28, 0x12, 0xe2, 0x3d, + 0x76, 0x88, 0xf2, 0xb1, 0x14, 0x60, 0x12, 0x4f, + 0x7f, 0xec, 0x71, 0x4, 0x9f, 0xfd, 0x8e, 0x20, + 0x1c, 0xd8, 0xca, 0xbf, 0xfc, 0x2b, 0x21, 0x0, + 0xff, 0xfe, 0x88, 0xc0, 0x20, 0x19, 0xf1, 0x51, + 0x3f, 0xf8, 0x64, 0x20, 0x1f, 0xfc, 0x1, 0x62, + 0x0, 0x2d, 0xe6, 0xff, 0x63, 0x10, 0x1, 0xc0, + 0x6, 0xd5, 0x77, 0xff, 0xc2, 0x84, 0x0, 0xf0, + 0xac, 0xde, 0xf7, 0xf5, 0x28, 0x80, 0x19, 0x2e, + 0xb3, 0xe, 0x40, 0x1c, 0xb5, 0xff, 0xff, 0xc3, + 0xc6, 0x10, 0xe, 0x16, 0xf2, 0x58, 0xac, 0xa6, + 0x10, 0x5d, 0x86, 0x53, 0x10, 0x1, 0x70, 0x80, + 0xc, 0x40, 0x3f, 0xf8, 0x67, 0x3d, 0xf6, 0xc0, + 0x11, 0xb4, 0xc3, 0x29, 0xb0, 0x80, 0x7f, 0xcc, + 0x44, 0x3, 0xf5, 0x0, 0xff, 0xef, 0xa7, 0xa0, + 0xa, 0xa8, 0x40, 0x3f, 0xfb, 0xa2, 0xbc, 0xa2, + 0x4d, 0x46, 0x1, 0xff, 0xce, 0x12, 0x44, 0xe3, + 0x10, 0xe, 0x15, 0xbb, 0x28, 0x25, 0xc9, 0x80, + 0x7f, 0xf4, 0x12, 0x2e, 0xe8, 0x52, 0x5e, 0x40, + 0x1, 0x93, 0x1a, 0x55, 0x18, 0x40, 0x3f, 0xfa, + 0x2, 0xd9, 0xff, 0xbb, 0x69, 0x48, 0x0, 0x4f, + 0x9b, 0x6a, 0x20, 0x1f, 0xfc, 0xf0, + + /* U+65E5 "日" */ + 0x0, 0x1c, 0xf7, 0xff, 0xff, 0x53, 0xa4, 0xc0, + 0x3f, 0x12, 0xcd, 0x57, 0xff, 0x32, 0x14, 0x40, + 0x3f, 0xf8, 0x3, 0x8e, 0xab, 0xff, 0xcd, 0xd2, + 0x0, 0xff, 0xff, 0x80, 0x7f, 0xfc, 0xc7, 0x19, + 0xbf, 0xf9, 0xb5, 0x84, 0x1, 0xff, 0xc0, 0x24, + 0x9b, 0xbf, 0xfe, 0x63, 0x28, 0x80, 0x7f, 0xf0, + 0xe, 0x3f, 0x77, 0xff, 0x99, 0x92, 0x60, 0x1f, + 0xff, 0xf0, 0xf, 0xff, 0x98, 0xfb, 0xa2, 0x7f, + 0xf3, 0x74, 0x40, 0x3f, 0xf8, 0x4, 0xd3, 0x77, + 0xff, 0xcc, 0x95, 0x20, 0xf, 0xfe, 0x1, 0xcf, + 0x7f, 0xff, 0xf3, 0x36, 0x10, 0x4c, 0x40, 0x20, + + /* U+661F "星" */ + 0x0, 0xfc, 0x4f, 0xbf, 0xff, 0xfd, 0x5b, 0x61, + 0x0, 0xff, 0xe3, 0x93, 0xe7, 0x77, 0xff, 0x36, + 0x94, 0x3, 0xff, 0x98, 0x4f, 0xbf, 0xff, 0xfc, + 0xdb, 0x50, 0xf, 0xfe, 0x61, 0x3d, 0x7f, 0xff, + 0xf3, 0x6d, 0x40, 0x3f, 0xf9, 0xce, 0x23, 0xff, + 0xce, 0x30, 0xf, 0xfe, 0x61, 0x3e, 0x7f, 0xff, + 0xf3, 0x6d, 0x80, 0x3f, 0xf9, 0x4, 0xf9, 0x6c, + 0x44, 0x6a, 0xdf, 0xff, 0x6d, 0xc3, 0xcd, 0xf7, + 0xff, 0xff, 0x6, 0xd8, 0x40, 0x3f, 0xf8, 0x87, + 0x32, 0x62, 0x11, 0x30, 0x11, 0x79, 0xf6, 0x5e, + 0xf1, 0x48, 0xbf, 0xf8, 0x62, 0x20, 0xf, 0xfe, + 0x0, 0x9c, 0x73, 0x90, 0x0, 0xdf, 0x37, 0x7e, + 0xa6, 0x10, 0x27, 0xbd, 0xdf, 0xfe, 0x23, 0x8, + 0x7, 0xf1, 0xc6, 0xe3, 0x83, 0x5f, 0x7f, 0xff, + 0xd8, 0xc2, 0x5, 0x1b, 0xff, 0xff, 0xc3, 0xc7, + 0x10, 0xf, 0x85, 0x29, 0x49, 0x27, 0xe1, 0x40, + 0x47, 0xfe, 0x60, 0xd, 0xe2, 0x3f, 0xfc, 0x30, + 0xf, 0xf8, 0x52, 0x77, 0xad, 0x86, 0x73, 0xbb, + 0xff, 0x81, 0x4c, 0x20, 0x4f, 0x9d, 0xdf, 0xfc, + 0x1b, 0x50, 0xf, 0xfe, 0x29, 0xc6, 0xff, 0xff, + 0xf0, 0x31, 0xc4, 0xe, 0x37, 0xff, 0xff, 0x83, + 0x4a, 0x1, 0xff, 0x9, 0x17, 0xff, 0x21, 0x48, + 0x0, 0x3c, 0xc4, 0x5f, 0xfc, 0x71, 0x0, 0xf2, + 0x46, 0xef, 0xff, 0x1e, 0x54, 0x40, 0x9a, 0xf7, + 0x7f, 0xf8, 0xd9, 0x6, 0x0, + + /* U+6700 "最" */ + 0x0, 0xfc, 0x2f, 0x9f, 0xff, 0xfd, 0x4c, 0x71, + 0x0, 0xff, 0xe4, 0x13, 0xe7, 0x77, 0xff, 0x32, + 0xdc, 0x80, 0x3f, 0xf9, 0x84, 0xdd, 0x99, 0xff, + 0xcc, 0x96, 0x20, 0xf, 0xfe, 0x61, 0x4f, 0xee, + 0xff, 0xf3, 0x3d, 0x88, 0x3, 0xff, 0x92, 0x2e, + 0x5, 0x1b, 0xff, 0xff, 0xcc, 0xd7, 0x20, 0xf, + 0xfe, 0x18, 0x91, 0x63, 0x49, 0xdd, 0xff, 0xea, + 0x72, 0x99, 0x16, 0x10, 0xe, 0x38, 0xcd, 0xdf, + 0xff, 0x7, 0x31, 0x0, 0x63, 0x9e, 0xff, 0x4a, + 0x1, 0x3e, 0xff, 0xfd, 0x8c, 0x20, 0x95, 0xff, + 0xff, 0xcb, 0xc7, 0x20, 0xf, 0xfe, 0x1, 0x3e, + 0xff, 0xfd, 0x8c, 0x20, 0x12, 0xd7, 0xff, 0xff, + 0x1e, 0xd4, 0x40, 0x3f, 0xf8, 0x44, 0xf9, 0xff, + 0xf5, 0xb0, 0x80, 0x4b, 0x5d, 0x4a, 0x24, 0xd7, + 0xdf, 0xfd, 0xd2, 0x82, 0x25, 0xe5, 0x10, 0xf, + 0xfe, 0x11, 0x37, 0x66, 0x7d, 0x2e, 0x20, 0x1c, + 0x2b, 0x2c, 0xd, 0x50, 0x80, 0x1, 0x5b, 0x84, + 0x29, 0x85, 0x0, 0xff, 0xe2, 0x13, 0xc7, 0x77, + 0xd6, 0x82, 0x1, 0xf1, 0xc7, 0x41, 0x35, 0x66, + 0x54, 0x88, 0xad, 0x72, 0x0, 0xff, 0x9, 0x1a, + 0x73, 0x81, 0x96, 0xad, 0x52, 0xed, 0x13, 0x48, + 0x20, 0x1f, 0xc2, 0x4a, 0x42, 0x66, 0x22, 0x27, + 0xb8, 0x80, 0x7f, 0xcb, 0x7b, 0x94, 0xa2, 0x64, + 0x5, 0xc2, 0x1d, 0xcc, 0xeb, 0x50, 0x8, 0x91, + 0xa2, 0xb3, 0xb6, 0x91, 0xe2, 0xed, 0xe, 0xea, + 0xdd, 0x5c, 0x32, 0x18, 0x80, 0x72, 0xd7, 0xfb, + 0xb7, 0x59, 0x8b, 0xa9, 0x94, 0x3b, 0x99, 0x50, + 0x84, 0x1f, 0x75, 0x48, 0x9, 0x19, 0xdb, 0x4e, + 0x88, 0x7a, 0xdd, 0x5d, 0x11, 0xdd, 0xba, 0x10, + 0x40, 0x3f, 0xf9, 0x27, 0x3d, 0xf9, 0x53, 0x98, + 0xa8, 0x63, 0x10, 0xf, 0xc4, 0x8f, 0x37, 0xbf, + 0xb2, 0x82, 0x0, + + /* U+6708 "月" */ + 0x0, 0xff, 0x1c, 0x77, 0xff, 0xff, 0x4b, 0xa4, + 0xc0, 0x3f, 0xf8, 0x84, 0xd5, 0x77, 0xff, 0xca, + 0x96, 0x20, 0xf, 0xfe, 0x43, 0x7a, 0x27, 0xff, + 0x2d, 0xf8, 0x40, 0x3f, 0xff, 0x9, 0x3d, 0xff, + 0xff, 0xca, 0xe8, 0x30, 0xf, 0xfe, 0x28, 0x80, + 0x9, 0xaa, 0xbf, 0xf9, 0x72, 0xa4, 0x1, 0xff, + 0xc4, 0x70, 0x10, 0x6c, 0x55, 0xff, 0xe5, 0xbe, + 0x88, 0x7, 0xff, 0x10, 0x4c, 0x0, 0x22, 0x0, + 0xff, 0xee, 0x91, 0x1c, 0x0, 0xd8, 0xab, 0xff, + 0xcb, 0x6d, 0x10, 0xf, 0xfe, 0x1b, 0xe9, 0x0, + 0xd, 0xea, 0xbf, 0xf9, 0x70, 0xa4, 0x1, 0xff, + 0xc2, 0x5f, 0x50, 0x28, 0xdf, 0xff, 0xfe, 0x67, + 0x41, 0x80, 0x7f, 0xf0, 0x5, 0xa5, 0x40, 0xed, + 0x88, 0x3, 0xff, 0xb2, 0x2b, 0x70, 0x60, 0x94, + 0xe2, 0x1, 0xff, 0xd8, 0x38, 0xda, 0x51, 0x39, + 0x93, 0x8, 0x7, 0xff, 0xc, 0x91, 0x57, 0xf9, + 0xb0, 0x80, 0xc4, 0x40, 0x10, 0xb1, 0x9, 0xbd, + 0xeb, 0x10, 0x7, 0xff, 0x14, 0xca, 0x6a, 0xbe, + 0xba, 0x65, 0x68, 0xa2, 0x0, 0x85, 0x6b, 0x72, + 0x10, 0x40, 0x3f, 0xf8, 0xe2, 0xd9, 0xff, 0xf7, + 0x6e, 0xae, 0x54, 0x80, 0x20, + + /* U+671F "期" */ + 0x0, 0xf1, 0x3e, 0xfd, 0xb0, 0x7, 0xe5, 0xaf, + 0xe8, 0x30, 0xf, 0xff, 0x72, 0x4f, 0x7f, 0xff, + 0xf1, 0x36, 0xc, 0x3, 0x24, 0xf7, 0x32, 0x8, + 0x12, 0x7b, 0xbf, 0x52, 0x80, 0xbe, 0xf6, 0x39, + 0x80, 0x63, 0x7b, 0xcc, 0xfd, 0x6e, 0x60, 0x1f, + 0x96, 0xaa, 0x85, 0x10, 0x36, 0xba, 0xaf, 0x9c, + 0xc0, 0x52, 0x6a, 0x14, 0x80, 0x33, 0xf2, 0x99, + 0xfe, 0x5e, 0x70, 0xf, 0xc2, 0x68, 0x96, 0x98, + 0x3f, 0xaa, 0x27, 0xda, 0xc0, 0x3, 0x44, 0x88, + 0x40, 0x33, 0x89, 0x8, 0xfe, 0x21, 0x70, 0xf, + 0xfe, 0x22, 0x4f, 0xff, 0xea, 0x50, 0xf, 0xfe, + 0x1, 0xc6, 0x77, 0x7e, 0xc8, 0x30, 0xf, 0xfe, + 0x21, 0xc6, 0xef, 0xe9, 0x40, 0xf, 0xfe, 0x1, + 0xc6, 0xf7, 0x7e, 0xd8, 0x30, 0xf, 0xfe, 0x23, + 0x89, 0x91, 0x78, 0xc0, 0x3f, 0xf8, 0x2, 0xe, + 0x26, 0x23, 0xf8, 0xc5, 0xc0, 0x3f, 0xf8, 0x89, + 0x3d, 0xff, 0xee, 0x94, 0x0, 0xfc, 0x26, 0x1, + 0xff, 0xd4, 0x49, 0xef, 0xff, 0xa9, 0x0, 0x3f, + 0x18, 0x80, 0x12, 0x3f, 0x77, 0xf7, 0xc2, 0x0, + 0x7f, 0x9, 0x11, 0xf8, 0x0, 0xe2, 0x45, 0xfc, + 0x1, 0x13, 0x11, 0x4, 0x81, 0xc0, 0x9, 0x37, + 0x11, 0xfc, 0xe4, 0x1, 0xf9, 0x6f, 0x75, 0x4c, + 0x40, 0x71, 0x9b, 0xbf, 0x42, 0x0, 0xad, 0x6f, + 0xca, 0x70, 0x81, 0xeb, 0x2a, 0xff, 0x3f, 0xb0, + 0x7, 0xe5, 0xaf, 0xfb, 0xb2, 0x19, 0xeb, 0x3b, + 0xfd, 0xb7, 0x10, 0xbe, 0xff, 0xdb, 0x20, 0x64, + 0x2a, 0x42, 0x1, 0xff, 0xcc, 0x39, 0xe8, 0x72, + 0x2, 0x10, 0x1, 0x96, 0x4d, 0xec, 0x18, 0x4, + 0x98, 0x80, 0xb8, 0xa0, 0x1f, 0xfc, 0xa2, 0x6a, + 0xd7, 0x35, 0xbb, 0x28, 0x80, 0x42, 0xd7, 0x4c, + 0x4f, 0xee, 0x8f, 0x2a, 0x2d, 0xea, 0x20, 0x10, + 0x92, 0x27, 0x3e, 0x28, 0x4, 0x20, 0x18, 0xea, + 0x8e, 0xb3, 0x94, 0xa2, 0x1, 0xf9, 0x27, 0x31, + 0xcc, 0x1c, 0x27, 0x36, 0x80, 0x1e, 0x4f, 0xbb, + 0xd2, 0x86, 0xb7, 0x62, 0x0, 0xc7, 0x19, 0xb6, + 0xc4, 0x1, 0xff, 0xc1, 0x23, 0x21, 0x49, 0xdc, + 0x72, 0x0, 0xf0, 0xb5, 0xff, 0xf7, 0x6d, 0x31, + 0x80, 0x40, + + /* U+673A "机" */ + 0x0, 0xff, 0x96, 0xff, 0xa0, 0xc0, 0x3f, 0xfe, + 0xa4, 0xfb, 0xff, 0xff, 0xc3, 0xe9, 0x40, 0xf, + 0xfe, 0xea, 0x46, 0x67, 0xd6, 0xe6, 0x1, 0xff, + 0xc5, 0x12, 0x33, 0xf2, 0x6b, 0x80, 0x9, 0x4c, + 0xfc, 0x40, 0x1e, 0x23, 0x3f, 0xc9, 0xae, 0x1, + 0xff, 0xc5, 0x48, 0xcc, 0xf5, 0xb9, 0x80, 0xac, + 0xe6, 0x76, 0xd9, 0x80, 0x7f, 0xf5, 0x96, 0xbf, + 0xfb, 0x60, 0xc0, 0x2, 0xd7, 0xff, 0xdd, 0x26, + 0x1, 0xff, 0xdc, 0x15, 0xb3, 0x0, 0x8c, 0x3, + 0xff, 0xc8, 0x4d, 0x46, 0x1, 0xa, 0xd5, 0xb1, + 0x0, 0x7b, 0xc0, 0x2, 0xe, 0x1, 0xff, 0xd3, + 0x3a, 0xa1, 0xa2, 0xc, 0x5, 0x10, 0xf3, 0x94, + 0xa2, 0x0, 0x10, 0x8, 0xc4, 0x3, 0xff, 0xa4, + 0x2b, 0xe, 0x6d, 0xfa, 0xe0, 0x3, 0x9d, 0xa4, + 0x45, 0x6b, 0xb, 0x89, 0x0, 0xf1, 0x0, 0x7f, + 0xf4, 0x12, 0x2d, 0xe, 0x69, 0xc, 0x3, 0x85, + 0x6e, 0xa9, 0xe, 0x4, 0x40, 0x15, 0x50, 0x80, + 0x7f, 0xf3, 0x8e, 0x69, 0x8d, 0xfd, 0xc8, 0x3, + 0xf8, 0x51, 0x50, 0x57, 0xd4, 0x17, 0xc8, 0x3, + 0xff, 0x8c, 0x46, 0x61, 0x0, 0xe3, 0xd9, 0x8e, + 0x83, 0x0, 0xff, 0xe1, 0xa7, 0x38, 0xa7, 0x38, + 0x80, 0x7f, 0xf1, 0x9e, 0x73, 0x58, 0x40, 0x32, + 0x3b, 0x8c, 0x3, 0xff, 0x86, 0x2d, 0xea, 0x2b, + 0xca, 0x20, 0x1f, 0xfc, 0x11, 0x0, 0xf0, 0x80, + 0x7f, 0xf3, 0x49, 0xb6, 0x51, 0x13, 0xa, 0x1, + 0xff, 0xc1, 0x10, 0x2, 0xe2, 0x21, 0xbd, 0x41, + 0x8c, 0x40, 0x3f, 0xf9, 0x4, 0x9a, 0x29, 0x34, + 0xc4, 0x1, 0xff, 0xc1, 0x4f, 0x63, 0x27, 0xbb, + 0x4a, 0x13, 0x7a, 0x0, 0x7f, 0xf0, 0x96, 0xff, + 0xa0, 0xc0, 0x9a, 0xf6, 0xd8, 0x40, 0x3f, 0xf8, + 0x62, 0xb3, 0x9d, 0xff, 0xbb, 0x25, 0x44, 0x2, + + /* U+7535 "电" */ + 0x0, 0xff, 0xe3, 0x13, 0xe7, 0xf4, 0x98, 0x7, + 0xff, 0xf0, 0x91, 0x57, 0xff, 0x89, 0xa4, 0x2, + 0x56, 0xab, 0xff, 0xc4, 0x31, 0x0, 0xe1, 0x48, + 0xaa, 0xff, 0xe1, 0xc2, 0x88, 0x1, 0x1e, 0xab, + 0xff, 0x87, 0x74, 0x40, 0x1f, 0xc2, 0xd9, 0xff, + 0xff, 0x6c, 0x18, 0xb, 0x67, 0xff, 0xfd, 0xd2, + 0x80, 0x1f, 0xff, 0x11, 0x2b, 0x55, 0xff, 0xe0, + 0x69, 0x0, 0x95, 0xaa, 0xff, 0xcf, 0x8c, 0x1, + 0xff, 0xc2, 0x46, 0x88, 0xff, 0xa5, 0x4, 0x0, + 0x8d, 0x11, 0xff, 0xc0, 0x42, 0x0, 0xff, 0xe0, + 0x8b, 0x6e, 0xff, 0xf0, 0x32, 0x4c, 0x5, 0xb7, + 0x7f, 0xf8, 0x1f, 0x8, 0x1, 0xff, 0xf1, 0x16, + 0xcf, 0xff, 0xfb, 0x60, 0xc0, 0x5b, 0x3f, 0xff, + 0xee, 0x94, 0x0, 0xff, 0xe1, 0x23, 0xd5, 0x7f, + 0xd0, 0xa2, 0x0, 0x47, 0xaa, 0xff, 0xe1, 0xdd, + 0x8, 0xc0, 0x18, 0xd5, 0x11, 0x94, 0xab, 0xff, + 0xc0, 0xd2, 0x1, 0x2b, 0x55, 0xff, 0xe2, 0x12, + 0x57, 0xe3, 0x98, 0xac, 0xdd, 0x9c, 0x80, 0x3f, + 0xf8, 0xae, 0x1, 0xff, 0xc4, 0x3e, 0x61, 0x17, + 0x80, 0x7f, 0xf1, 0xc8, 0x8c, 0x2, 0xfc, 0xea, + 0xbf, 0xfc, 0x27, 0x85, 0x21, 0x4c, 0x30, 0xf, + 0xfe, 0x3a, 0xcc, 0x21, 0xa4, 0x55, 0x7f, 0xf0, + 0xa5, 0x5, 0xae, 0xc8, 0x0, + + /* U+7EF4 "维" */ + 0x0, 0xff, 0xf9, 0x8b, 0x67, 0x63, 0x90, 0x7, + 0xfc, 0x95, 0xdb, 0x8, 0x9, 0x3d, 0xb0, 0x60, + 0x1f, 0xfc, 0xa2, 0x6b, 0x33, 0x22, 0x8, 0x3, + 0xf8, 0x57, 0xd4, 0x5f, 0x10, 0x13, 0x5c, 0xdf, + 0xd8, 0x40, 0x3f, 0xf8, 0xe7, 0x52, 0x47, 0x72, + 0x60, 0x1f, 0xc2, 0xf2, 0x82, 0xd2, 0x80, 0x12, + 0x54, 0xa3, 0x1, 0x0, 0x7f, 0xf1, 0x96, 0x58, + 0x16, 0x18, 0x40, 0x4, 0x66, 0x10, 0x8, 0xe6, + 0xcc, 0x5, 0xb3, 0xff, 0xb2, 0x11, 0x67, 0x3f, + 0xfe, 0xa5, 0x0, 0xf8, 0x9e, 0x15, 0x51, 0x68, + 0x0, 0x27, 0xec, 0xe9, 0x32, 0x6f, 0x72, 0x3, + 0x6a, 0xbb, 0xe8, 0x40, 0x2, 0x3d, 0xdf, 0xe8, + 0x40, 0xe, 0x27, 0xe8, 0x7, 0x87, 0x32, 0x36, + 0x99, 0x12, 0xcd, 0xac, 0xc8, 0xc0, 0x27, 0xf4, + 0x4f, 0x88, 0x40, 0x75, 0x13, 0xf1, 0x8, 0x6, + 0x58, 0x81, 0x81, 0x3e, 0x76, 0xeb, 0x25, 0x52, + 0xec, 0xf5, 0x8, 0x86, 0x52, 0x7, 0xf4, 0x4f, + 0x88, 0x40, 0x75, 0x13, 0xc6, 0x42, 0x1, 0xc9, + 0x37, 0x57, 0x9b, 0xab, 0x62, 0x15, 0xbb, 0x28, + 0x9d, 0xee, 0x55, 0x90, 0x0, 0xda, 0xae, 0xfa, + 0x10, 0x0, 0x8f, 0x77, 0xed, 0xb5, 0x0, 0xe1, + 0x34, 0x54, 0x26, 0x8a, 0x44, 0x55, 0x14, 0x40, + 0x22, 0x33, 0x8, 0x6, 0x49, 0xef, 0xfe, 0xc6, + 0x10, 0x5a, 0xff, 0xf7, 0x4a, 0x0, 0x7e, 0x37, + 0xdb, 0x44, 0x5e, 0x8b, 0x3c, 0x4c, 0x9c, 0xc0, + 0x3f, 0xfa, 0xe4, 0xd9, 0x88, 0x30, 0x15, 0x89, + 0x96, 0xf0, 0x77, 0xa1, 0x0, 0x7c, 0x93, 0xdf, + 0xfd, 0x8c, 0x20, 0xb5, 0xff, 0xee, 0x94, 0x0, + 0xe2, 0x59, 0x95, 0x66, 0xf7, 0xf6, 0xe5, 0xcc, + 0x3b, 0x18, 0x80, 0x7c, 0x6d, 0x57, 0x7d, 0x8, + 0x0, 0x47, 0xbb, 0xf6, 0xda, 0x80, 0x78, 0xd5, + 0x94, 0xc8, 0x40, 0x3c, 0x24, 0x68, 0x64, 0x1, + 0xe7, 0xf4, 0x4f, 0x88, 0x40, 0x75, 0x13, 0xc6, + 0x42, 0x1, 0xe1, 0x23, 0x45, 0x68, 0x9a, 0xbd, + 0xef, 0xed, 0xca, 0x97, 0x10, 0xe, 0x71, 0x22, + 0xf3, 0x18, 0x0, 0x4c, 0x8b, 0xf8, 0x40, 0x32, + 0x46, 0x62, 0xee, 0x42, 0x33, 0x5d, 0xdb, 0xdf, + 0xd4, 0xa2, 0x1, 0xc7, 0x19, 0xbb, 0xd4, 0xa2, + 0x9, 0x3b, 0xbf, 0xb2, 0x10, 0x2, 0x48, 0xce, + 0xfe, 0xdc, 0xb9, 0x86, 0x54, 0x21, 0x0, 0xff, + 0x1c, 0x6f, 0x77, 0xff, 0x1f, 0xe5, 0x0, 0x0, + + /* U+8BDD "话" */ + 0x0, 0xf1, 0x98, 0x80, 0x3f, 0xf9, 0xc2, 0x46, + 0x8a, 0xcf, 0x35, 0x72, 0xa4, 0x1, 0xfe, 0x26, + 0xfc, 0xdc, 0x94, 0x10, 0xe, 0x13, 0x56, 0x63, + 0xc4, 0xca, 0xae, 0xd9, 0xbd, 0xfe, 0xed, 0xcb, + 0xbc, 0x40, 0x5c, 0x2, 0x20, 0xf, 0xe2, 0x6d, + 0xc7, 0x6, 0xbc, 0x94, 0x10, 0x9, 0xb2, 0xb7, + 0x8, 0x0, 0x59, 0x8a, 0xb7, 0x20, 0x16, 0xbf, + 0xed, 0xcb, 0xa9, 0x75, 0x31, 0x0, 0xff, 0x84, + 0xe3, 0x6d, 0x98, 0x62, 0x1, 0xa, 0xce, 0x5d, + 0xaa, 0x65, 0xe, 0xe6, 0x7f, 0x60, 0x9, 0xc0, + 0x3f, 0xf9, 0xa2, 0x93, 0x74, 0xa2, 0x1, 0xff, + 0xdb, 0x13, 0x55, 0xfe, 0x31, 0x0, 0xc4, 0x8c, + 0xef, 0xfe, 0x6c, 0x60, 0x15, 0xa7, 0x7f, 0xfe, + 0x2, 0x10, 0x4, 0x93, 0x55, 0xfd, 0x8, 0x1, + 0x87, 0x2a, 0xbf, 0xf8, 0x8, 0x40, 0x2, 0x4a, + 0xaf, 0xfa, 0xf0, 0x40, 0x25, 0xaf, 0xfe, 0xc7, + 0x10, 0xf, 0x8e, 0x33, 0x77, 0xfd, 0x90, 0x80, + 0x2f, 0xdb, 0xbf, 0xf6, 0x41, 0x80, 0x7f, 0xff, + 0xc0, 0x2, 0x68, 0x9f, 0xde, 0xc0, 0x24, 0x89, + 0xfe, 0x21, 0x0, 0xff, 0xe7, 0x24, 0x5d, 0xfe, + 0xa6, 0x20, 0x2, 0x45, 0xdf, 0xea, 0xb5, 0x0, + 0xff, 0xe5, 0x8, 0xc0, 0x1c, 0xd7, 0xff, 0xff, + 0xc3, 0xe9, 0x30, 0xf, 0xfe, 0x51, 0xa3, 0xdf, + 0xfa, 0x10, 0xc0, 0x3f, 0xfb, 0x8e, 0x42, 0x9, + 0x37, 0x2e, 0xd5, 0x8, 0x60, 0x1f, 0xfd, 0xa1, + 0x6f, 0x40, 0x1, 0xb5, 0x7e, 0x42, 0x8, 0x7, + 0x2e, 0x2a, 0xff, 0xf0, 0xdf, 0x4, 0x3, 0xff, + 0x86, 0x62, 0x27, 0xad, 0xc9, 0x51, 0x0, 0xfe, + 0x36, 0x88, 0xff, 0xe2, 0x21, 0x89, 0x8b, 0x80, + 0x70, + + /* U+8D2D "购" */ + 0x0, 0xff, 0xff, 0x80, 0x7f, 0x1c, 0x6f, 0xdb, + 0x8, 0x7, 0xff, 0x25, 0x27, 0xff, 0xff, 0x89, + 0xb0, 0x40, 0x18, 0xed, 0x48, 0x98, 0x82, 0x1, + 0xff, 0xcc, 0x26, 0xbc, 0xcf, 0xe9, 0x50, 0xf, + 0x8e, 0xd8, 0x85, 0xc4, 0x46, 0x7f, 0xfc, 0x22, + 0x10, 0xf, 0xe1, 0xe5, 0x32, 0x6, 0x60, 0x11, + 0x99, 0x4c, 0x40, 0x39, 0x29, 0x84, 0x5, 0x67, + 0x33, 0xff, 0x85, 0xd4, 0x60, 0x1f, 0xfc, 0x15, + 0x9a, 0xbb, 0x10, 0x7, 0xc2, 0x71, 0x2c, 0xb, + 0x7f, 0xff, 0xfc, 0x1e, 0x94, 0x1, 0xe3, 0x0, + 0xff, 0xe6, 0x94, 0xfb, 0x92, 0x45, 0xaa, 0x33, + 0xa1, 0x0, 0x7f, 0xf7, 0xf, 0x29, 0xe6, 0x4c, + 0x29, 0xd3, 0x2d, 0x60, 0xf, 0xfe, 0xe0, 0xa3, + 0x43, 0x10, 0x26, 0x20, 0xa6, 0xa0, 0x0, 0x40, + 0x3e, 0x70, 0xf, 0xfe, 0xb9, 0xe2, 0xa, 0x7a, + 0xb, 0xe7, 0xca, 0x0, 0x46, 0x20, 0x1f, 0xfc, + 0x61, 0x0, 0x1f, 0x88, 0x7, 0xfc, 0x76, 0xc6, + 0xdc, 0xa0, 0x2d, 0x44, 0xfc, 0xa0, 0x18, 0x41, + 0xc0, 0x3f, 0xf8, 0x42, 0x4c, 0xc, 0x44, 0x0, + 0xff, 0x2c, 0xb0, 0x3e, 0x3a, 0x2b, 0x33, 0xc0, + 0xb, 0xca, 0x22, 0xf0, 0xc, 0x20, 0x1e, 0x7e, + 0x36, 0x20, 0x5d, 0x33, 0x63, 0x80, 0x6e, 0x57, + 0xe0, 0x27, 0x95, 0x11, 0x35, 0x6c, 0xcb, 0x38, + 0x51, 0x4, 0x9e, 0x8e, 0x26, 0x0, 0x30, 0xf, + 0x8d, 0xf2, 0x91, 0x1e, 0xa5, 0x68, 0xcf, 0x30, + 0xed, 0x74, 0xc4, 0x46, 0xfb, 0xce, 0xff, 0x76, + 0xe5, 0x4c, 0x42, 0xfa, 0xe5, 0x4, 0xc4, 0x4, + 0x3, 0xfe, 0x38, 0x82, 0xaa, 0x5c, 0xd4, 0xc1, + 0x6f, 0x25, 0x4, 0x0, 0x26, 0x86, 0x20, 0x1f, + 0xc2, 0x68, 0x66, 0xd7, 0x1, 0x36, 0x0, 0xf0, + 0xa3, 0xe6, 0xa2, 0x2a, 0xd0, 0x0, 0x29, 0x3f, + 0x2c, 0xf7, 0xae, 0x40, 0x1f, 0xc2, 0x6a, 0xa4, + 0x49, 0x5e, 0x58, 0x81, 0x70, 0x80, 0x38, 0x53, + 0xb1, 0x2b, 0x25, 0x4, 0x3, 0xc4, 0xd7, 0xb3, + 0x46, 0x60, 0xf, 0xf2, 0x4d, 0x5d, 0xd5, 0xa, + 0x69, 0x10, 0x51, 0x0, 0xe1, 0x5a, 0xb8, 0x41, + 0x0, 0xff, 0xe0, 0x1b, 0x31, 0x4, 0x3, 0xf8, + 0x5f, 0x3f, 0xfd, 0xdb, 0x6e, 0x60, 0x1c, + + /* U+FF1A ":" */ + 0x0, 0x89, 0x19, 0xd9, 0x4, 0x2, 0x16, 0xeb, + 0x98, 0x9b, 0xa5, 0x10, 0x15, 0x42, 0x0, 0x8b, + 0x18, 0x40, 0x7, 0x1b, 0xff, 0x6b, 0x98, 0x7, + 0xff, 0xcc, 0x4d, 0xa2, 0x61, 0x8c, 0x2, 0x16, + 0xf9, 0x76, 0x79, 0x86, 0x10, 0x14, 0xb4, 0x11, + 0x93, 0x50, 0x40, 0x6, 0xf7, 0xdd, 0x5b, 0x10, + 0x0 +}; + + +/*--------------------- + * GLYPH DESCRIPTION + *--------------------*/ + +static const lv_font_fmt_txt_glyph_dsc_t glyph_dsc[] = { + {.bitmap_index = 0, .adv_w = 0, .box_w = 0, .box_h = 0, .ofs_x = 0, .ofs_y = 0} /* id = 0 reserved */, + {.bitmap_index = 0, .adv_w = 65, .box_w = 6, .box_h = 0, .ofs_x = -1, .ofs_y = 0}, + {.bitmap_index = 0, .adv_w = 93, .box_w = 12, .box_h = 13, .ofs_x = 1, .ofs_y = 0}, + {.bitmap_index = 60, .adv_w = 137, .box_w = 21, .box_h = 6, .ofs_x = 1, .ofs_y = 8}, + {.bitmap_index = 116, .adv_w = 160, .box_w = 30, .box_h = 13, .ofs_x = 0, .ofs_y = 0}, + {.bitmap_index = 272, .adv_w = 160, .box_w = 30, .box_h = 18, .ofs_x = 0, .ofs_y = -2}, + {.bitmap_index = 451, .adv_w = 265, .box_w = 51, .box_h = 13, .ofs_x = 0, .ofs_y = 0}, + {.bitmap_index = 701, .adv_w = 196, .box_w = 39, .box_h = 13, .ofs_x = 0, .ofs_y = 0}, + {.bitmap_index = 893, .adv_w = 80, .box_w = 9, .box_h = 6, .ofs_x = 1, .ofs_y = 8}, + {.bitmap_index = 919, .adv_w = 97, .box_w = 15, .box_h = 19, .ofs_x = 1, .ofs_y = -4}, + {.bitmap_index = 1027, .adv_w = 97, .box_w = 15, .box_h = 19, .ofs_x = 0, .ofs_y = -4}, + {.bitmap_index = 1132, .adv_w = 134, .box_w = 24, .box_h = 6, .ofs_x = 0, .ofs_y = 8}, + {.bitmap_index = 1191, .adv_w = 160, .box_w = 30, .box_h = 10, .ofs_x = 0, .ofs_y = 2}, + {.bitmap_index = 1237, .adv_w = 80, .box_w = 15, .box_h = 7, .ofs_x = 0, .ofs_y = -4}, + {.bitmap_index = 1281, .adv_w = 100, .box_w = 18, .box_h = 3, .ofs_x = 0, .ofs_y = 4}, + {.bitmap_index = 1296, .adv_w = 80, .box_w = 15, .box_h = 3, .ofs_x = 0, .ofs_y = 0}, + {.bitmap_index = 1315, .adv_w = 113, .box_w = 27, .box_h = 18, .ofs_x = -1, .ofs_y = -4}, + {.bitmap_index = 1439, .adv_w = 160, .box_w = 30, .box_h = 13, .ofs_x = 0, .ofs_y = 0}, + {.bitmap_index = 1599, .adv_w = 160, .box_w = 27, .box_h = 13, .ofs_x = 1, .ofs_y = 0}, + {.bitmap_index = 1656, .adv_w = 160, .box_w = 30, .box_h = 13, .ofs_x = 0, .ofs_y = 0}, + {.bitmap_index = 1787, .adv_w = 160, .box_w = 30, .box_h = 13, .ofs_x = 0, .ofs_y = 0}, + {.bitmap_index = 1933, .adv_w = 160, .box_w = 30, .box_h = 13, .ofs_x = 0, .ofs_y = 0}, + {.bitmap_index = 2039, .adv_w = 160, .box_w = 30, .box_h = 13, .ofs_x = 0, .ofs_y = 0}, + {.bitmap_index = 2173, .adv_w = 160, .box_w = 30, .box_h = 13, .ofs_x = 0, .ofs_y = 0}, + {.bitmap_index = 2333, .adv_w = 160, .box_w = 30, .box_h = 13, .ofs_x = 0, .ofs_y = 0}, + {.bitmap_index = 2437, .adv_w = 160, .box_w = 30, .box_h = 13, .ofs_x = 0, .ofs_y = 0}, + {.bitmap_index = 2605, .adv_w = 160, .box_w = 30, .box_h = 13, .ofs_x = 0, .ofs_y = 0}, + {.bitmap_index = 2769, .adv_w = 80, .box_w = 15, .box_h = 10, .ofs_x = 0, .ofs_y = 0}, + {.bitmap_index = 2813, .adv_w = 80, .box_w = 15, .box_h = 14, .ofs_x = 0, .ofs_y = -4}, + {.bitmap_index = 2881, .adv_w = 160, .box_w = 30, .box_h = 9, .ofs_x = 0, .ofs_y = 2}, + {.bitmap_index = 2984, .adv_w = 160, .box_w = 30, .box_h = 6, .ofs_x = 0, .ofs_y = 4}, + {.bitmap_index = 3018, .adv_w = 160, .box_w = 30, .box_h = 9, .ofs_x = 0, .ofs_y = 2}, + {.bitmap_index = 3121, .adv_w = 137, .box_w = 24, .box_h = 13, .ofs_x = 0, .ofs_y = 0}, + {.bitmap_index = 3235, .adv_w = 272, .box_w = 51, .box_h = 17, .ofs_x = 0, .ofs_y = -4}, + {.bitmap_index = 3558, .adv_w = 175, .box_w = 39, .box_h = 13, .ofs_x = -1, .ofs_y = 0}, + {.bitmap_index = 3717, .adv_w = 189, .box_w = 33, .box_h = 13, .ofs_x = 1, .ofs_y = 0}, + {.bitmap_index = 3855, .adv_w = 184, .box_w = 36, .box_h = 13, .ofs_x = 0, .ofs_y = 0}, + {.bitmap_index = 4000, .adv_w = 198, .box_w = 33, .box_h = 13, .ofs_x = 1, .ofs_y = 0}, + {.bitmap_index = 4128, .adv_w = 169, .box_w = 27, .box_h = 13, .ofs_x = 1, .ofs_y = 0}, + {.bitmap_index = 4201, .adv_w = 159, .box_w = 27, .box_h = 13, .ofs_x = 1, .ofs_y = 0}, + {.bitmap_index = 4260, .adv_w = 198, .box_w = 36, .box_h = 13, .ofs_x = 0, .ofs_y = 0}, + {.bitmap_index = 4423, .adv_w = 210, .box_w = 33, .box_h = 13, .ofs_x = 1, .ofs_y = 0}, + {.bitmap_index = 4483, .adv_w = 84, .box_w = 9, .box_h = 13, .ofs_x = 1, .ofs_y = 0}, + {.bitmap_index = 4494, .adv_w = 154, .box_w = 27, .box_h = 13, .ofs_x = 0, .ofs_y = 0}, + {.bitmap_index = 4555, .adv_w = 186, .box_w = 33, .box_h = 13, .ofs_x = 1, .ofs_y = 0}, + {.bitmap_index = 4687, .adv_w = 156, .box_w = 27, .box_h = 13, .ofs_x = 1, .ofs_y = 0}, + {.bitmap_index = 4719, .adv_w = 234, .box_w = 39, .box_h = 13, .ofs_x = 1, .ofs_y = 0}, + {.bitmap_index = 4872, .adv_w = 208, .box_w = 33, .box_h = 13, .ofs_x = 1, .ofs_y = 0}, + {.bitmap_index = 4984, .adv_w = 214, .box_w = 39, .box_h = 13, .ofs_x = 0, .ofs_y = 0}, + {.bitmap_index = 5172, .adv_w = 182, .box_w = 30, .box_h = 13, .ofs_x = 1, .ofs_y = 0}, + {.bitmap_index = 5273, .adv_w = 214, .box_w = 39, .box_h = 17, .ofs_x = 0, .ofs_y = -4}, + {.bitmap_index = 5513, .adv_w = 183, .box_w = 33, .box_h = 13, .ofs_x = 1, .ofs_y = 0}, + {.bitmap_index = 5645, .adv_w = 172, .box_w = 33, .box_h = 13, .ofs_x = 0, .ofs_y = 0}, + {.bitmap_index = 5806, .adv_w = 173, .box_w = 33, .box_h = 13, .ofs_x = 0, .ofs_y = 0}, + {.bitmap_index = 5851, .adv_w = 208, .box_w = 33, .box_h = 13, .ofs_x = 1, .ofs_y = 0}, + {.bitmap_index = 5948, .adv_w = 166, .box_w = 36, .box_h = 13, .ofs_x = -1, .ofs_y = 0}, + {.bitmap_index = 6108, .adv_w = 253, .box_w = 48, .box_h = 13, .ofs_x = 0, .ofs_y = 0}, + {.bitmap_index = 6360, .adv_w = 165, .box_w = 36, .box_h = 13, .ofs_x = -1, .ofs_y = 0}, + {.bitmap_index = 6525, .adv_w = 153, .box_w = 33, .box_h = 13, .ofs_x = -1, .ofs_y = 0}, + {.bitmap_index = 6635, .adv_w = 174, .box_w = 33, .box_h = 13, .ofs_x = 0, .ofs_y = 0}, + {.bitmap_index = 6754, .adv_w = 97, .box_w = 15, .box_h = 17, .ofs_x = 1, .ofs_y = -3}, + {.bitmap_index = 6781, .adv_w = 113, .box_w = 27, .box_h = 18, .ofs_x = -1, .ofs_y = -4}, + {.bitmap_index = 6901, .adv_w = 97, .box_w = 15, .box_h = 17, .ofs_x = 0, .ofs_y = -3}, + {.bitmap_index = 6927, .adv_w = 160, .box_w = 30, .box_h = 8, .ofs_x = 0, .ofs_y = 6}, + {.bitmap_index = 7011, .adv_w = 161, .box_w = 36, .box_h = 2, .ofs_x = -1, .ofs_y = -3}, + {.bitmap_index = 7027, .adv_w = 175, .box_w = 15, .box_h = 5, .ofs_x = 2, .ofs_y = 11}, + {.bitmap_index = 7059, .adv_w = 162, .box_w = 30, .box_h = 10, .ofs_x = 0, .ofs_y = 0}, + {.bitmap_index = 7178, .adv_w = 178, .box_w = 30, .box_h = 14, .ofs_x = 1, .ofs_y = 0}, + {.bitmap_index = 7293, .adv_w = 147, .box_w = 27, .box_h = 10, .ofs_x = 0, .ofs_y = 0}, + {.bitmap_index = 7389, .adv_w = 179, .box_w = 30, .box_h = 14, .ofs_x = 0, .ofs_y = 0}, + {.bitmap_index = 7503, .adv_w = 160, .box_w = 30, .box_h = 10, .ofs_x = 0, .ofs_y = 0}, + {.bitmap_index = 7618, .adv_w = 94, .box_w = 21, .box_h = 15, .ofs_x = 0, .ofs_y = 0}, + {.bitmap_index = 7686, .adv_w = 162, .box_w = 33, .box_h = 14, .ofs_x = 0, .ofs_y = -4}, + {.bitmap_index = 7868, .adv_w = 175, .box_w = 27, .box_h = 14, .ofs_x = 1, .ofs_y = 0}, + {.bitmap_index = 7937, .adv_w = 79, .box_w = 9, .box_h = 14, .ofs_x = 1, .ofs_y = 0}, + {.bitmap_index = 7961, .adv_w = 79, .box_w = 18, .box_h = 18, .ofs_x = -2, .ofs_y = -4}, + {.bitmap_index = 8018, .adv_w = 159, .box_w = 30, .box_h = 14, .ofs_x = 1, .ofs_y = 0}, + {.bitmap_index = 8121, .adv_w = 82, .box_w = 12, .box_h = 14, .ofs_x = 1, .ofs_y = 0}, + {.bitmap_index = 8145, .adv_w = 267, .box_w = 45, .box_h = 10, .ofs_x = 1, .ofs_y = 0}, + {.bitmap_index = 8253, .adv_w = 176, .box_w = 27, .box_h = 10, .ofs_x = 1, .ofs_y = 0}, + {.bitmap_index = 8317, .adv_w = 175, .box_w = 33, .box_h = 10, .ofs_x = 0, .ofs_y = 0}, + {.bitmap_index = 8441, .adv_w = 179, .box_w = 30, .box_h = 14, .ofs_x = 1, .ofs_y = -4}, + {.bitmap_index = 8564, .adv_w = 179, .box_w = 30, .box_h = 14, .ofs_x = 0, .ofs_y = -4}, + {.bitmap_index = 8685, .adv_w = 112, .box_w = 21, .box_h = 10, .ofs_x = 1, .ofs_y = 0}, + {.bitmap_index = 8728, .adv_w = 135, .box_w = 27, .box_h = 10, .ofs_x = 0, .ofs_y = 0}, + {.bitmap_index = 8840, .adv_w = 109, .box_w = 21, .box_h = 13, .ofs_x = 0, .ofs_y = 0}, + {.bitmap_index = 8919, .adv_w = 175, .box_w = 27, .box_h = 10, .ofs_x = 1, .ofs_y = 0}, + {.bitmap_index = 8977, .adv_w = 150, .box_w = 33, .box_h = 10, .ofs_x = -1, .ofs_y = 0}, + {.bitmap_index = 9097, .adv_w = 231, .box_w = 45, .box_h = 10, .ofs_x = 0, .ofs_y = 0}, + {.bitmap_index = 9282, .adv_w = 143, .box_w = 33, .box_h = 10, .ofs_x = -1, .ofs_y = 0}, + {.bitmap_index = 9404, .adv_w = 150, .box_w = 33, .box_h = 14, .ofs_x = -1, .ofs_y = -4}, + {.bitmap_index = 9558, .adv_w = 137, .box_w = 27, .box_h = 10, .ofs_x = 0, .ofs_y = 0}, + {.bitmap_index = 9652, .adv_w = 97, .box_w = 18, .box_h = 17, .ofs_x = 0, .ofs_y = -3}, + {.bitmap_index = 9754, .adv_w = 77, .box_w = 9, .box_h = 20, .ofs_x = 1, .ofs_y = -5}, + {.bitmap_index = 9767, .adv_w = 97, .box_w = 18, .box_h = 17, .ofs_x = 0, .ofs_y = -3}, + {.bitmap_index = 9871, .adv_w = 160, .box_w = 30, .box_h = 5, .ofs_x = 0, .ofs_y = 4}, + {.bitmap_index = 9928, .adv_w = 288, .box_w = 54, .box_h = 2, .ofs_x = 0, .ofs_y = 6}, + {.bitmap_index = 9943, .adv_w = 288, .box_w = 51, .box_h = 15, .ofs_x = 0, .ofs_y = -1}, + {.bitmap_index = 10028, .adv_w = 288, .box_w = 54, .box_h = 13, .ofs_x = 0, .ofs_y = 0}, + {.bitmap_index = 10087, .adv_w = 288, .box_w = 54, .box_h = 15, .ofs_x = 0, .ofs_y = -1}, + {.bitmap_index = 10239, .adv_w = 288, .box_w = 54, .box_h = 17, .ofs_x = 0, .ofs_y = -1}, + {.bitmap_index = 10468, .adv_w = 288, .box_w = 54, .box_h = 17, .ofs_x = 0, .ofs_y = -2}, + {.bitmap_index = 10648, .adv_w = 288, .box_w = 48, .box_h = 16, .ofs_x = 1, .ofs_y = -1}, + {.bitmap_index = 10784, .adv_w = 288, .box_w = 54, .box_h = 16, .ofs_x = 0, .ofs_y = -2}, + {.bitmap_index = 10883, .adv_w = 288, .box_w = 48, .box_h = 15, .ofs_x = 1, .ofs_y = -1}, + {.bitmap_index = 11037, .adv_w = 288, .box_w = 54, .box_h = 17, .ofs_x = 0, .ofs_y = -2}, + {.bitmap_index = 11255, .adv_w = 288, .box_w = 54, .box_h = 17, .ofs_x = 0, .ofs_y = -2}, + {.bitmap_index = 11434, .adv_w = 288, .box_w = 54, .box_h = 17, .ofs_x = 0, .ofs_y = -1}, + {.bitmap_index = 11620, .adv_w = 288, .box_w = 51, .box_h = 17, .ofs_x = 0, .ofs_y = -2}, + {.bitmap_index = 11850, .adv_w = 288, .box_w = 42, .box_h = 15, .ofs_x = 2, .ofs_y = -1}, + {.bitmap_index = 11938, .adv_w = 288, .box_w = 54, .box_h = 15, .ofs_x = 0, .ofs_y = -1}, + {.bitmap_index = 12135, .adv_w = 288, .box_w = 54, .box_h = 16, .ofs_x = 0, .ofs_y = -2}, + {.bitmap_index = 12386, .adv_w = 288, .box_w = 48, .box_h = 16, .ofs_x = 0, .ofs_y = -2}, + {.bitmap_index = 12551, .adv_w = 288, .box_w = 54, .box_h = 17, .ofs_x = 0, .ofs_y = -2}, + {.bitmap_index = 12849, .adv_w = 288, .box_w = 57, .box_h = 17, .ofs_x = 0, .ofs_y = -2}, + {.bitmap_index = 13097, .adv_w = 288, .box_w = 48, .box_h = 16, .ofs_x = 2, .ofs_y = -1}, + {.bitmap_index = 13278, .adv_w = 288, .box_w = 54, .box_h = 17, .ofs_x = 0, .ofs_y = -1}, + {.bitmap_index = 13606, .adv_w = 288, .box_w = 54, .box_h = 16, .ofs_x = 0, .ofs_y = -1}, + {.bitmap_index = 13839, .adv_w = 288, .box_w = 54, .box_h = 18, .ofs_x = 0, .ofs_y = -2}, + {.bitmap_index = 14142, .adv_w = 288, .box_w = 12, .box_h = 13, .ofs_x = 7, .ofs_y = 0} +}; + +/*--------------------- + * CHARACTER MAPPING + *--------------------*/ + +static const uint16_t unicode_list_1[] = { + 0x0, 0x9, 0x8c, 0x94, 0x23c, 0x36d, 0x3fa, 0x582, + 0x8db, 0xb27, 0xe0f, 0x1074, 0x14a4, 0x17e5, 0x181f, 0x1900, + 0x1908, 0x191f, 0x193a, 0x2735, 0x30f4, 0x3ddd, 0x3f2d, 0xb11a +}; + +/*Collect the unicode lists and glyph_id offsets*/ +static const lv_font_fmt_txt_cmap_t cmaps[] = +{ + { + .range_start = 32, .range_length = 95, .glyph_id_start = 1, + .unicode_list = NULL, .glyph_id_ofs_list = NULL, .list_length = 0, .type = LV_FONT_FMT_TXT_CMAP_FORMAT0_TINY + }, + { + .range_start = 19968, .range_length = 45339, .glyph_id_start = 96, + .unicode_list = unicode_list_1, .glyph_id_ofs_list = NULL, .list_length = 24, .type = LV_FONT_FMT_TXT_CMAP_SPARSE_TINY + } +}; + +/*----------------- + * KERNING + *----------------*/ + + +/*Map glyph_ids to kern left classes*/ +static const uint8_t kern_left_class_mapping[] = +{ + 0, 0, 0, 1, 0, 0, 0, 0, + 1, 2, 0, 0, 0, 3, 4, 3, + 5, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 6, 6, 0, 0, 0, + 0, 0, 7, 8, 9, 10, 11, 12, + 13, 0, 0, 14, 15, 16, 0, 0, + 10, 17, 10, 18, 19, 20, 21, 22, + 23, 24, 25, 26, 2, 27, 0, 0, + 0, 0, 28, 29, 30, 0, 31, 32, + 33, 34, 0, 0, 35, 36, 34, 34, + 29, 29, 37, 38, 39, 40, 37, 41, + 42, 43, 44, 45, 2, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0 +}; + +/*Map glyph_ids to kern right classes*/ +static const uint8_t kern_right_class_mapping[] = +{ + 0, 0, 1, 2, 0, 0, 0, 0, + 2, 0, 3, 4, 0, 5, 6, 7, + 8, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 9, 10, 0, 0, 0, + 11, 0, 12, 0, 13, 0, 0, 0, + 13, 0, 0, 14, 0, 0, 0, 0, + 13, 0, 13, 0, 15, 16, 17, 18, + 19, 20, 21, 22, 0, 23, 3, 0, + 0, 0, 24, 0, 25, 25, 25, 26, + 27, 0, 28, 29, 0, 0, 30, 30, + 25, 30, 25, 30, 31, 32, 33, 34, + 35, 36, 37, 38, 0, 0, 3, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0 +}; + +/*Kern values between classes*/ +static const int8_t kern_class_values[] = +{ + 0, 0, 0, 0, -37, 0, -37, 0, + 0, 0, 0, -18, 0, -31, -3, 0, + 0, 0, 0, -3, 0, 0, 0, 0, + -10, 0, 0, 0, 0, 0, -6, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, -6, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 26, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, -31, 0, -44, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, -32, -6, -21, -11, 0, + -30, 0, 0, 0, -4, 0, 0, 0, + 8, 0, 0, -15, 0, -11, -7, 0, + -6, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, -6, + -5, -15, 0, -6, -3, -9, -21, -6, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, -8, 0, -2, 0, -4, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, -13, -3, -26, 0, 0, + 0, 0, 0, 0, 0, 0, 0, -8, + -10, 0, -3, 8, 8, 0, 0, 3, + -6, 0, 0, 0, 0, 0, 0, 0, + 0, -16, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, -8, 0, 0, 0, 0, 0, + 0, 0, 1, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, -18, 0, -30, + 0, 0, 0, 0, 0, 0, -8, -2, + -3, 0, 0, -18, -5, -4, 0, 1, + -4, -2, -13, 7, 0, -3, 0, 0, + 0, 0, 7, -4, -2, -2, -1, -1, + -2, 0, 0, 0, 0, -10, 0, 0, + 0, 0, 0, 0, 0, 0, 0, -5, + -4, -8, 0, -2, -1, -1, -4, -1, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, -3, 0, -4, -3, -3, -4, 0, + 0, 0, 0, 0, 0, -8, 0, 0, + 0, 0, 0, 0, -9, -3, -8, -6, + -4, -1, -1, -1, -2, -3, 0, 0, + 0, 0, -6, 0, 0, 0, 0, -9, + -3, -4, -3, 0, -4, 0, 0, 0, + 0, -11, 0, 0, 0, -6, 0, 0, + 0, -3, 0, -13, 0, -8, 0, -3, + -2, -5, -6, -6, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, -4, 0, -2, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, -3, 0, 0, 0, + 0, 0, 0, -8, 0, -3, 0, -10, + -3, 0, 0, 0, 0, 0, -23, 0, + -23, -22, 0, 0, 0, -12, -3, -45, + -6, 0, 0, 1, 1, -8, 0, -10, + 0, -11, -4, 0, -8, 0, 0, -6, + -6, -3, -5, -6, -5, -8, -5, -10, + 0, 0, 0, -9, 0, 0, 0, 0, + 0, 0, 0, -1, 0, 0, 0, -6, + 0, -4, -1, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, -8, 0, -8, 0, 0, 0, + 0, 0, 0, -13, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, -7, 0, -13, + 0, -10, 0, 0, 0, 0, -2, -3, + -6, 0, -3, -5, -4, -4, -3, 0, + -5, 0, 0, 0, -2, 0, 0, 0, + -3, 0, 0, -11, -5, -6, -5, -5, + -6, -4, 0, -29, 0, -49, 0, -17, + 0, 0, 0, 0, -10, 1, -8, 0, + -7, -39, -9, -24, -18, 0, -24, 0, + -26, 0, -4, -4, -1, 0, 0, 0, + 0, -6, -3, -12, -11, 0, -12, 0, + 0, 0, 0, 0, -36, -11, -36, -24, + 0, 0, 0, -16, 0, -47, -3, -8, + 0, 0, 0, -8, -3, -25, 0, -14, + -8, 0, -10, 0, 0, 0, -3, 0, + 0, 0, 0, -4, 0, -6, 0, 0, + 0, -3, 0, -10, 0, 0, 0, 0, + 0, -1, 0, -6, -4, -4, 0, 2, + 2, -1, 0, -3, 0, -1, -3, 0, + -1, 0, 0, 0, 0, 0, 0, 0, + 0, -2, 0, -2, 0, 0, 0, -5, + 0, 4, 0, 0, 0, 0, 0, 0, + 0, -4, -4, -6, 0, 0, 0, 0, + -4, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, -8, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, -34, -23, + -34, -29, -6, -6, 0, -13, -8, -41, + -13, 0, 0, 0, 0, -6, -4, -17, + 0, -23, -21, -6, -23, 0, 0, -15, + -19, -6, -15, -11, -11, -13, -11, -24, + 0, 0, 0, 0, -5, 0, -5, -10, + 0, 0, 0, -5, 0, -15, -3, 0, + 0, -1, 0, -3, -4, 0, 0, -1, + 0, 0, -3, 0, 0, 0, -1, 0, + 0, 0, 0, -2, 0, 0, 0, 0, + 0, 0, -21, -6, -21, -15, 0, 0, + 0, -4, -3, -23, -3, 0, -3, 3, + 0, 0, 0, -6, 0, -7, -5, 0, + -7, 0, 0, -6, -4, 0, -10, -3, + -3, -5, -3, -8, 0, 0, 0, 0, + -11, -3, -11, -10, 0, 0, 0, 0, + -2, -21, -2, 0, 0, 0, 0, 0, + 0, -2, 0, -5, 0, 0, -4, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, -3, 0, -3, 0, -3, 0, -9, + 0, 0, 0, 0, 0, 1, -5, 0, + -4, -6, -3, 0, 0, 0, 0, 0, + 0, -3, -2, -5, 0, 0, 0, 0, + 0, -5, -3, -5, -4, -3, -5, -4, + 0, 0, 0, 0, -29, -21, -29, -22, + -8, -8, -2, -4, -4, -32, -5, -4, + -3, 0, 0, 0, 0, -8, 0, -22, + -13, 0, -19, 0, 0, -13, -13, -9, + -11, -4, -8, -11, -4, -15, 0, 0, + 0, 0, 0, -11, 0, 0, 0, 0, + 0, -2, -6, -11, -10, 0, -3, -2, + -2, 0, -4, -5, 0, -5, -7, -6, + -5, 0, 0, 0, 0, -4, -7, -5, + -5, -8, -5, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, -28, -10, -17, -10, 0, + -23, 0, 0, 0, 0, 0, 11, 0, + 23, 0, 0, 0, 0, -6, -3, 0, + 4, 0, 0, 0, 0, -17, 0, 0, + 0, 0, 0, 0, -4, 0, 0, 0, + 0, -8, 0, -5, -1, 0, -8, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, -4, 0, 0, 0, 0, 0, 0, + 0, -10, 0, -8, -3, 2, -3, 0, + 0, 0, -4, 0, 0, 0, 0, -18, + 0, -6, 0, -1, -15, 0, -8, -5, + 0, 0, 0, 0, 0, 0, 0, -5, + 0, -1, -1, -5, -1, -2, 0, 0, + 0, 0, 0, -6, 0, 0, 0, 0, + 0, 0, 0, 0, 0, -6, 0, -4, + 0, 0, -8, 0, 0, -3, -7, 0, + -3, 0, 0, 0, 0, -3, 0, 2, + 2, 3, 2, 0, 0, 0, 0, -11, + 0, 3, 0, 0, 0, 0, -2, 0, + 0, -6, -6, -8, 0, -5, -3, 0, + -8, 0, -6, -5, 0, 0, -3, 0, + 0, 0, 0, -3, 0, 1, 1, -2, + 1, 0, 5, 13, 16, 0, -16, -4, + -16, -5, 0, 0, 8, 0, 0, 0, + 0, 15, 0, 21, 15, 11, 19, 0, + 20, -6, -3, 0, -5, 0, -3, 0, + -1, 0, 0, 4, 0, -1, 0, -4, + 0, 0, 5, -11, 0, 0, 0, 15, + 0, 0, -12, 0, 0, 0, 0, -8, + 0, 0, 0, 0, -4, 0, 0, -5, + -4, 0, 0, 0, 12, 0, 0, 0, + 0, -1, -1, 0, 5, -4, 0, 0, + 0, -11, 0, 0, 0, 0, 0, 0, + -2, 0, 0, 0, 0, -8, 0, -3, + 0, 0, -5, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, -7, + 4, -14, 4, 0, 4, 4, -4, 0, + 0, 0, 0, -11, 0, 0, 0, 0, + -4, 0, 0, -3, -6, 0, -3, 0, + -3, 0, 0, -7, -4, 0, 0, -2, + 0, -2, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 3, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, -8, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, -6, + 0, -4, 0, 0, -10, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, -18, -8, -18, -11, 8, 8, + 0, -4, 0, -18, 0, 0, 0, 0, + 0, 0, 0, -3, 4, -8, -3, 0, + -3, 0, 0, 0, -1, 0, 0, 8, + 6, 0, 8, -1, 0, 0, 0, -16, + 0, 3, 0, 0, 0, 0, -3, 0, + 0, 0, 0, -8, 0, -3, 0, 0, + -6, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, -6, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 2, -8, + 2, 3, 5, 5, -8, 0, 0, 0, + 0, -4, 0, 0, 0, 0, -1, 0, + 0, -7, -4, 0, -3, 0, 0, 0, + -3, -6, 0, 0, 0, -5, 0, 0, + 0, 0, 0, -4, -11, -2, -11, -6, + 0, 0, 0, -4, 0, -13, 0, -6, + 0, -3, 0, 0, -4, -3, 0, -6, + -1, 0, 0, 0, -3, 0, 0, 0, + 0, 0, 0, 0, 0, -8, 0, 0, + 0, -4, -13, 0, -13, -2, 0, 0, + 0, -1, 0, -10, 0, -8, 0, -3, + 0, -4, -8, 0, 0, -3, -1, 0, + 0, 0, -3, 0, 0, 0, 0, 0, + 0, 0, 0, -5, -4, 0, 0, -7, + 2, -4, -2, 0, 0, 2, 0, 0, + -3, 0, -1, -11, 0, -5, 0, -3, + -11, 0, 0, -3, -5, 0, 0, 0, + 0, 0, 0, -8, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, -11, 0, + -11, -5, 0, 0, 0, 0, 0, -13, + 0, -6, 0, -1, 0, -1, -2, 0, + 0, -6, -1, 0, 0, 0, -3, 0, + 0, 0, 0, 0, 0, -4, 0, -8, + 0, 0, 0, 0, 0, -5, 0, 0, + 0, 0, 0, 0, 0, 0, 0, -8, + 0, 0, 0, 0, -10, 0, 0, -7, + -3, 0, -2, 0, 0, 0, 0, 0, + -3, -1, 0, 0, -1, 0 +}; + + +/*Collect the kern class' data in one place*/ +static const lv_font_fmt_txt_kern_classes_t kern_classes = +{ + .class_pair_values = kern_class_values, + .left_class_mapping = kern_left_class_mapping, + .right_class_mapping = kern_right_class_mapping, + .left_class_cnt = 45, + .right_class_cnt = 38, +}; + +/*-------------------- + * ALL CUSTOM DATA + *--------------------*/ + +#if LV_VERSION_CHECK(8, 0, 0) +/*Store all the custom data of the font*/ +static lv_font_fmt_txt_glyph_cache_t cache; +static const lv_font_fmt_txt_dsc_t font_dsc = { +#else +static lv_font_fmt_txt_dsc_t font_dsc = { +#endif + .glyph_bitmap = glyph_bitmap, + .glyph_dsc = glyph_dsc, + .cmaps = cmaps, + .kern_dsc = &kern_classes, + .kern_scale = 16, + .cmap_num = 2, + .bpp = 4, + .kern_classes = 1, + .bitmap_format = 1, +#if LV_VERSION_CHECK(8, 0, 0) + .cache = &cache +#endif +}; + + +/*----------------- + * PUBLIC FONT + *----------------*/ + +/*Initialize a public general font descriptor*/ +#if LV_VERSION_CHECK(8, 0, 0) +const lv_font_t sans_r_18 = { +#else +lv_font_t sans_r_18 = { +#endif + .get_glyph_dsc = lv_font_get_glyph_dsc_fmt_txt, /*Function pointer to get glyph's data*/ + .get_glyph_bitmap = lv_font_get_bitmap_fmt_txt, /*Function pointer to get glyph's bitmap*/ + .line_height = 21, /*The maximum line height required by the font*/ + .base_line = 5, /*Baseline measured from the bottom of the line*/ +#if !(LVGL_VERSION_MAJOR == 6 && LVGL_VERSION_MINOR == 0) + .subpx = LV_FONT_SUBPX_HOR, +#endif +#if LV_VERSION_CHECK(7, 4, 0) || LVGL_VERSION_MAJOR >= 8 + .underline_position = -2, + .underline_thickness = 1, +#endif + .dsc = &font_dsc /*The custom font data. Will be accessed by `get_glyph_bitmap/dsc` */ +}; + + + +#endif /*#if SANS_R_18*/ + diff --git a/fonts/sans_r_30.c b/fonts/sans_r_30.c new file mode 100644 index 0000000..9bd6643 --- /dev/null +++ b/fonts/sans_r_30.c @@ -0,0 +1,11638 @@ +/******************************************************************************* + * Size: 30 px + * Bpp: 4 + * Opts: --bpp 4 --size 30 --lcd --stride 1 --align 1 --font NotoSansCJK-Regular.otf --range 32-127,21333,21160,27169,24335,22238,21407,28857,35774,32622,21551,21160,36816,34892,24613,20572,20351,29992,25945,31243,26080,32447,27169,24335,32852,21160,27169,24335,19978,19968,39029,19979,19968,39029,25171,21360,28165,38500,25968,25454,21442,25968,26085,26399,35774,32622,31995,32479,22810,27573,34917,20607,25353,38062,34987,30005,26426,24322,24120,65292,35831,22312,25490,38500,25925,38556,21518,20851,26426,65292,28982,21518,37325,26032,21551,21160,31995,32479,27491,25628,32034,25991,20214,31245,20505,27809,26377,25214,21040,26816,26597,30424,21345,26159,21542,25554,20837,20197,21450,37324,38754,26377,27491,30830,30340,28857,20987,30340,25552,31034,26694,36864,20986,12290,20889,20837,25104,21151,25110,26684,24335,19981,23610,23544,36229,36807,23631,24149,26174,31034,33539,22260,29983,20135,36141,21644,32500,25252,35805,26102,38388,23494,30721,20998,24320,21387,26009,25163,21387,26009,20027,20999,21106,21462,28040,33258,21488,26448,26009,22443,27169,20869,22806,29255,36890,35759,24207,28903,24405,24037,21378,27979,35797 --format lvgl -o sans_r_30.c + ******************************************************************************/ + +#ifdef __has_include + #if __has_include("lvgl.h") + #ifndef LV_LVGL_H_INCLUDE_SIMPLE + #define LV_LVGL_H_INCLUDE_SIMPLE + #endif + #endif +#endif + +#ifdef LV_LVGL_H_INCLUDE_SIMPLE + #include "lvgl.h" +#else + #include "lvgl/lvgl.h" +#endif + + + +#ifndef SANS_R_30 +#define SANS_R_30 1 +#endif + +#if SANS_R_30 + +/*----------------- + * BITMAPS + *----------------*/ + +/*Store the image of the glyphs*/ +static LV_ATTRIBUTE_LARGE_CONST const uint8_t glyph_bitmap[] = { + /* U+0020 " " */ + + /* U+0021 "!" */ + 0x0, 0x8e, 0x37, 0xff, 0xba, 0xc, 0x3, 0xe1, + 0x0, 0xf8, 0xc0, 0x3f, 0xde, 0x20, 0x1e, 0xf1, + 0x0, 0xf8, 0xc0, 0x3f, 0xf8, 0xc2, 0xe0, 0x1c, + 0x20, 0x60, 0x1f, 0xfc, 0x41, 0x0, 0xfc, 0x26, + 0x1, 0xe7, 0x1, 0x0, 0xfe, 0x10, 0xf, 0x18, + 0x7, 0xf0, 0x80, 0x78, 0x40, 0x3f, 0xe3, 0x0, + 0xf0, 0x80, 0x7f, 0xc2, 0x1, 0x8c, 0x3, 0xfc, + 0xe2, 0x1, 0x84, 0x3, 0xff, 0x82, 0x60, 0x1c, + 0xe0, 0x1f, 0xc3, 0xe0, 0x18, 0xc4, 0x3, 0xff, + 0x8c, 0x20, 0x1f, 0xc6, 0x2, 0x1, 0xf, 0x80, + 0x7f, 0x85, 0xf7, 0xba, 0xd7, 0x20, 0xf, 0xfe, + 0x1, 0x10, 0xc0, 0x3f, 0xc2, 0xb3, 0xbd, 0x98, + 0xde, 0xe4, 0xa0, 0x80, 0x61, 0x79, 0x62, 0x0, + 0xe1, 0x6f, 0x71, 0x0, 0x84, 0xdc, 0x3, 0xfc, + 0x62, 0x1, 0x96, 0x64, 0xa4, 0x20, 0x24, 0xb3, + 0x25, 0x0, 0x80, + + /* U+0022 "\"" */ + 0x4, 0x9f, 0xff, 0x74, 0x98, 0x7, 0x85, 0xaf, + 0xff, 0xd8, 0xe4, 0x1, 0xfc, 0x62, 0x1, 0xf0, + 0x80, 0x7f, 0xf0, 0x1c, 0x4, 0x3, 0xff, 0x86, + 0x62, 0x1, 0xf8, 0xc0, 0x2, 0x60, 0x1c, 0x3e, + 0x20, 0x1f, 0x9, 0x80, 0x79, 0xc4, 0x0, 0x5c, + 0x20, 0x1c, 0xe2, 0x40, 0x1f, 0x38, 0x90, 0x7, + 0x11, 0x4, 0x4, 0xd8, 0x3, 0x88, 0x80, 0x1f, + 0x8b, 0x84, 0x3, 0x10, 0xb8, 0x4, 0xc6, 0x20, + 0x11, 0xb, 0x80, 0x7e, 0x13, 0x60, 0xc, 0x3c, + 0x40, 0x10, 0xf1, 0x80, 0x43, 0xc4, 0x1, 0xfc, + 0xc6, 0x20, 0x13, 0x18, 0x80, 0x44, 0x44, 0x33, + 0x90, 0x84, 0x3, 0xf8, 0x7d, 0xc, 0xc9, 0xae, + 0x0, + + /* U+0023 "#" */ + 0x0, 0xff, 0xe2, 0x2d, 0xff, 0xd6, 0xc2, 0x1, + 0xfe, 0x16, 0xcf, 0xfa, 0x90, 0x3, 0xff, 0x92, + 0x44, 0x60, 0x8, 0x88, 0x20, 0x1f, 0xe2, 0xe2, + 0x0, 0x11, 0x18, 0x3, 0xff, 0x92, 0xdc, 0x40, + 0x2, 0xe6, 0x0, 0xff, 0x98, 0xc4, 0x0, 0xdc, + 0x60, 0x1f, 0xfc, 0x81, 0x22, 0x0, 0x4c, 0x44, + 0x0, 0xff, 0x11, 0x18, 0x2, 0x22, 0x8, 0x7, + 0xff, 0x20, 0xb9, 0x40, 0x2, 0x4c, 0x1, 0xff, + 0x36, 0x90, 0x0, 0xb9, 0x80, 0x3f, 0xf9, 0x2c, + 0x42, 0x0, 0x2e, 0x20, 0xf, 0xf0, 0x9b, 0x0, + 0x4c, 0x44, 0x0, 0xff, 0x89, 0xaf, 0xbb, 0xea, + 0x50, 0x8, 0xe3, 0xfb, 0xbf, 0xdf, 0x6, 0x1, + 0x25, 0x77, 0x7a, 0x50, 0x3, 0x85, 0xc4, 0x7e, + 0x0, 0xf8, 0x47, 0xff, 0x80, 0x1, 0xf0, 0x8f, + 0x80, 0x3c, 0x4f, 0x9f, 0xfe, 0xa4, 0x0, 0x92, + 0x7b, 0xff, 0xfd, 0xd0, 0x60, 0x12, 0xd7, 0xff, + 0xd2, 0x80, 0x1f, 0xfc, 0x2, 0x23, 0x80, 0x42, + 0x42, 0x1, 0xfe, 0x2e, 0x20, 0x0, 0x93, 0x0, + 0x7f, 0xf2, 0x5b, 0x88, 0x0, 0x44, 0x60, 0xf, + 0xf9, 0x88, 0x40, 0x5, 0xc4, 0x1, 0xff, 0xc9, + 0x22, 0x8, 0x1, 0xb8, 0x80, 0x3f, 0xc4, 0x46, + 0x0, 0x98, 0xc4, 0x3, 0xff, 0x90, 0x5c, 0xc0, + 0x11, 0x10, 0x3, 0xfe, 0x6e, 0x20, 0x1, 0x11, + 0x80, 0x3f, 0xf8, 0x2, 0xf9, 0xff, 0xed, 0x72, + 0x0, 0x9a, 0xff, 0xff, 0xeb, 0x60, 0x8, 0x9f, + 0x3f, 0xfb, 0xa5, 0x0, 0x3f, 0xfc, 0x22, 0x60, + 0x1c, 0x2f, 0x9f, 0xfd, 0x8e, 0x20, 0x1, 0x6c, + 0xff, 0xff, 0xad, 0x40, 0x22, 0x8d, 0xff, 0xfa, + 0x90, 0x3, 0xff, 0x80, 0xc4, 0x20, 0x2, 0xe1, + 0x0, 0xff, 0x9, 0x30, 0x4, 0xc4, 0x40, 0xf, + 0xfe, 0x40, 0x93, 0x0, 0x4c, 0x44, 0x0, 0xff, + 0x17, 0x10, 0x0, 0x48, 0x40, 0x3f, 0xf9, 0x25, + 0xc4, 0x0, 0x12, 0x60, 0xf, 0xf9, 0x88, 0x40, + 0x5, 0xcc, 0x1, 0xff, 0xc9, 0x63, 0x10, 0x1, + 0x71, 0x0, 0x7f, 0x84, 0x98, 0x2, 0x62, 0x20, + 0x7, 0xff, 0x20, 0x49, 0x80, 0x26, 0x21, 0x0, + 0xff, 0x17, 0x90, 0x0, 0x49, 0x80, 0x3f, 0xf9, + 0x25, 0xc4, 0x0, 0x22, 0x30, 0x7, 0xfc, 0xc4, + 0x20, 0x2, 0xf2, 0x0, 0xff, 0xe0, 0x80, + + /* U+0024 "$" */ + 0x0, 0xff, 0xe3, 0x1c, 0x6f, 0xfd, 0x8e, 0x20, + 0x1f, 0xff, 0xf0, 0xf, 0xfe, 0xd9, 0x1a, 0xda, + 0x18, 0x4, 0x57, 0xe, 0xc8, 0x42, 0x1, 0xff, + 0xc8, 0x36, 0xad, 0xfd, 0xca, 0x73, 0x10, 0x8, + 0x4d, 0xa2, 0x6f, 0x7b, 0x69, 0xcc, 0x3, 0xff, + 0x82, 0x71, 0xb9, 0x2a, 0x40, 0x1c, 0x24, 0x68, + 0x83, 0x10, 0xf, 0x12, 0xc6, 0x6d, 0x29, 0x0, + 0x7c, 0x4f, 0xee, 0x40, 0x18, 0x96, 0x77, 0xfb, + 0x72, 0xed, 0x9d, 0xfe, 0xec, 0x95, 0x20, 0x8, + 0xc0, 0x6, 0x1, 0xe2, 0x5a, 0x30, 0xc, 0x2d, + 0x34, 0xc4, 0x1, 0xfe, 0x13, 0x6a, 0xdc, 0xaa, + 0x65, 0x28, 0x80, 0x79, 0xf4, 0x80, 0x39, 0x31, + 0x0, 0x3f, 0xf8, 0xc6, 0xaa, 0x20, 0xf, 0xfe, + 0x28, 0x98, 0x80, 0x7f, 0xf4, 0xdf, 0x48, 0x3, + 0x93, 0x5c, 0x40, 0x3f, 0xfa, 0x44, 0xb4, 0x60, + 0x1c, 0x93, 0x92, 0x82, 0x1, 0xff, 0xd0, 0x27, + 0xe9, 0x40, 0xe, 0x26, 0xbe, 0xda, 0x74, 0x10, + 0xf, 0xfe, 0x69, 0x35, 0xed, 0x31, 0x0, 0x71, + 0x2c, 0x5f, 0x73, 0x25, 0x8c, 0x40, 0x3f, 0xf9, + 0x44, 0xb3, 0xbd, 0x92, 0xc6, 0x20, 0x18, 0x4d, + 0xa7, 0x3b, 0x69, 0x8c, 0x3, 0xff, 0x94, 0x26, + 0xd3, 0x9d, 0xb4, 0xea, 0x40, 0x1c, 0x4b, 0x39, + 0xb2, 0x82, 0x1, 0xff, 0xcc, 0x25, 0x8a, 0xdd, + 0x53, 0x18, 0x80, 0x62, 0x6a, 0xa2, 0x88, 0x7, + 0xff, 0x3c, 0x96, 0x76, 0x98, 0x80, 0x30, 0xa5, + 0xc9, 0x80, 0x7f, 0xf4, 0x45, 0x26, 0x14, 0x3, + 0x85, 0x14, 0x40, 0x3f, 0xfa, 0x69, 0xa6, 0x1, + 0xc5, 0xea, 0x1, 0xff, 0xd3, 0x30, 0x10, 0xe, + 0x31, 0x60, 0xc, 0x6f, 0x50, 0xa4, 0x1, 0xff, + 0xc8, 0x24, 0xb2, 0x0, 0xe7, 0xd2, 0x0, 0x24, + 0xf4, 0x2b, 0xd6, 0xea, 0x9d, 0x8, 0x40, 0x3f, + 0xe2, 0x48, 0xe9, 0x30, 0xc, 0x2d, 0x2a, 0x1, + 0x2e, 0xaa, 0x8, 0x4, 0x4b, 0x17, 0xbd, 0xcd, + 0xcb, 0xbd, 0x9b, 0xae, 0xdb, 0x73, 0x0, 0xc2, + 0xd5, 0x6, 0x1, 0x85, 0x22, 0xfb, 0x25, 0x8c, + 0x40, 0x30, 0x91, 0xa2, 0x63, 0x22, 0x8, 0x6, + 0x24, 0x8c, 0xf9, 0x41, 0x0, 0xff, 0x1b, 0x4e, + 0x77, 0x36, 0xea, 0x61, 0x4c, 0x3, 0xa, 0x45, + 0x66, 0xfe, 0xdb, 0x98, 0x80, 0x7f, 0xf1, 0x84, + 0x91, 0x59, 0xe5, 0x8, 0x2, 0x2c, 0x65, 0x32, + 0x0, 0xff, 0xff, 0x80, 0x7f, 0xf2, 0x40, + + /* U+0025 "%" */ + 0x0, 0xff, 0x12, 0xc5, 0x5e, 0x6f, 0x7f, 0x6e, + 0x5d, 0x42, 0x90, 0x7, 0xff, 0x3c, 0x56, 0xbb, + 0xfd, 0xb0, 0x60, 0x1f, 0xfc, 0xc1, 0x48, 0xcd, + 0xa7, 0x54, 0x33, 0x11, 0x91, 0x99, 0x15, 0xeb, + 0x31, 0x8, 0x20, 0x1f, 0xfc, 0xa3, 0x88, 0x28, + 0x89, 0x66, 0xc, 0x3, 0xff, 0x96, 0x73, 0x27, + 0x30, 0x14, 0x8c, 0xfe, 0xcc, 0xbb, 0xf2, 0xc, + 0x44, 0x6f, 0x32, 0x30, 0xf, 0xfe, 0x39, 0x3f, + 0xb1, 0x2, 0x45, 0xa0, 0x7, 0xff, 0x2c, 0x56, + 0x5c, 0x80, 0x7, 0x32, 0x73, 0x0, 0xf8, 0xdf, + 0xa4, 0xc0, 0x4, 0xf2, 0xa0, 0x1f, 0xfc, 0x41, + 0x58, 0x93, 0x2, 0x78, 0x61, 0x0, 0xff, 0xe6, + 0x16, 0x20, 0x4, 0x76, 0xa4, 0x1, 0xff, 0x12, + 0xd9, 0x80, 0x49, 0x86, 0x1, 0xff, 0xc2, 0x39, + 0x85, 0x11, 0x2c, 0xc1, 0x80, 0x7f, 0xf3, 0x94, + 0x84, 0x2, 0x62, 0x20, 0x7, 0xff, 0x4, 0x88, + 0xc0, 0x10, 0x93, 0x0, 0x7f, 0xf0, 0x5, 0xbd, + 0xc8, 0xe, 0x2d, 0x0, 0x3f, 0xf9, 0xe2, 0x27, + 0x0, 0x84, 0xc4, 0x3, 0xff, 0x86, 0x26, 0x20, + 0x13, 0x90, 0x80, 0x7f, 0x96, 0xe0, 0xc0, 0x9f, + 0xd8, 0x40, 0x3f, 0xfa, 0x2, 0x4e, 0x1, 0x9, + 0x88, 0x7, 0xff, 0xc, 0x48, 0x40, 0x27, 0x21, + 0x0, 0xfc, 0x71, 0x5, 0x11, 0x2c, 0x40, 0xc0, + 0x3f, 0xfa, 0x6c, 0x42, 0x1, 0x31, 0x10, 0x3, + 0xff, 0x82, 0x44, 0x60, 0x8, 0x49, 0x80, 0x3e, + 0x16, 0x87, 0x20, 0x38, 0x82, 0x80, 0x70, 0xa3, + 0xcd, 0xe6, 0xf7, 0xf6, 0xe5, 0xcb, 0xa0, 0x80, + 0x7f, 0xc7, 0x88, 0x1, 0x1d, 0x29, 0x0, 0x7f, + 0xc5, 0x54, 0x20, 0x9, 0x30, 0xc0, 0x3c, 0x97, + 0x8, 0x4, 0xfe, 0xc4, 0x1, 0x1b, 0xdf, 0xdc, + 0x32, 0x19, 0x88, 0xc8, 0xcc, 0x8d, 0x17, 0xf4, + 0xc4, 0x1, 0xfc, 0xb0, 0xe4, 0x0, 0x28, 0xe8, + 0x30, 0xf, 0x9, 0xc7, 0x39, 0x0, 0x9, 0xe1, + 0x40, 0x38, 0xa2, 0x54, 0x44, 0xb1, 0x26, 0x1, + 0x13, 0xfc, 0x20, 0x81, 0xbe, 0x7f, 0x66, 0x5d, + 0xcb, 0x62, 0x1, 0x59, 0x93, 0x8, 0x7, 0xe2, + 0x9e, 0x73, 0x10, 0x37, 0xcf, 0xed, 0xcd, 0xee, + 0x63, 0x98, 0x9, 0xbf, 0x41, 0x0, 0x61, 0x69, + 0x72, 0x3, 0x98, 0x51, 0x0, 0x92, 0xe4, 0xc0, + 0x4, 0xfd, 0x6, 0x1, 0xe1, 0x49, 0xe6, 0x10, + 0x2, 0x5c, 0x98, 0x7, 0xe1, 0x38, 0xcc, 0x53, + 0xaa, 0x19, 0xfc, 0x8a, 0xf5, 0x98, 0x83, 0x0, + 0xe4, 0xb8, 0x40, 0x27, 0xf7, 0x20, 0xc, 0x78, + 0xe2, 0x0, 0x25, 0xa2, 0x0, 0xff, 0x8e, 0x9c, + 0x40, 0x4, 0xa8, 0x40, 0x1f, 0xf1, 0x2c, 0x55, + 0xe6, 0xf7, 0xf6, 0xe5, 0xd4, 0x29, 0x0, 0x78, + 0xa2, 0x54, 0x44, 0xb1, 0x26, 0x1, 0xe6, 0x21, + 0x0, 0x9f, 0x48, 0x3, 0xff, 0x82, 0x5e, 0xa0, + 0x11, 0x73, 0x0, 0x7f, 0xf5, 0x5, 0xa5, 0xc8, + 0xe, 0x61, 0x44, 0x3, 0xc4, 0x46, 0x0, 0x84, + 0xc4, 0x3, 0xff, 0x84, 0x26, 0x20, 0x18, 0x88, + 0x20, 0x1f, 0xfd, 0x24, 0x88, 0x20, 0x13, 0xfb, + 0x90, 0x7, 0xff, 0x70, 0x40, 0x3f, 0xfa, 0x4, + 0xf2, 0xc2, 0x25, 0x89, 0x30, 0xf, 0xf1, 0x11, + 0x80, 0x21, 0x31, 0x0, 0xff, 0xe1, 0x9, 0xb0, + 0x6, 0x22, 0x0, 0x7f, 0xf3, 0xc5, 0xa6, 0x8, + 0xe, 0x61, 0x44, 0x3, 0xff, 0x80, 0xc4, 0x20, + 0x13, 0xe9, 0x0, 0x7f, 0xf0, 0x4b, 0xc8, 0x2, + 0x2e, 0x60, 0xf, 0xfe, 0x72, 0x44, 0x10, 0x9, + 0xbd, 0xc8, 0x3, 0xff, 0x84, 0x78, 0xe2, 0x0, + 0x25, 0xa3, 0x0, 0xff, 0x92, 0x9c, 0x40, 0x4, + 0xaa, 0x20, 0xf, 0xfe, 0x61, 0x3c, 0x30, 0x82, + 0x44, 0xc, 0x3, 0xff, 0x8a, 0x97, 0x26, 0x0, + 0x27, 0xf8, 0x30, 0xf, 0xa, 0x4c, 0x98, 0x40, + 0x9, 0x72, 0x40, 0x1f, 0xfc, 0xb1, 0x59, 0x83, + 0x3, 0x89, 0x51, 0x0, 0xff, 0xe3, 0x93, 0xf4, + 0xa0, 0x81, 0xbe, 0x7f, 0x66, 0x5d, 0xcb, 0x62, + 0x1, 0x59, 0x93, 0x8, 0x7, 0xff, 0x2c, 0xe2, + 0xd0, 0x5, 0xbd, 0xc8, 0x3, 0xff, 0x96, 0x4d, + 0x7f, 0x70, 0xc8, 0x66, 0x23, 0x23, 0x32, 0x34, + 0x5f, 0xd3, 0x10, 0x7, 0x0, + + /* U+0026 "&" */ + 0x0, 0xff, 0xe3, 0x12, 0x3d, 0x5e, 0x6f, 0x7f, + 0xbb, 0x72, 0xe9, 0xd0, 0x40, 0x3f, 0xfb, 0xa2, + 0x93, 0xba, 0xb8, 0x54, 0x32, 0x10, 0x0, 0x91, + 0xa2, 0xc5, 0xf5, 0xb1, 0x0, 0x7f, 0xf6, 0x5, + 0x6e, 0x98, 0x80, 0x2, 0x6f, 0x59, 0xbd, 0xd6, + 0x4a, 0x90, 0x4, 0x93, 0xa, 0x1, 0xff, 0xd6, + 0x17, 0x95, 0x10, 0x9, 0x23, 0x61, 0x4c, 0x84, + 0x63, 0x6a, 0x84, 0x0, 0xc9, 0xa6, 0x1, 0xff, + 0xd5, 0x5f, 0x30, 0xc, 0x9a, 0xe2, 0x1, 0xfe, + 0x12, 0x10, 0x8, 0x44, 0xe0, 0x1f, 0xfd, 0x63, + 0x0, 0xff, 0xe3, 0x16, 0x20, 0x80, 0x49, 0x88, + 0x1, 0xff, 0xd5, 0x6d, 0x20, 0xc, 0xbc, 0x40, + 0x1f, 0x89, 0xf9, 0xc8, 0x0, 0x2b, 0xe8, 0x1, + 0xff, 0xd6, 0x23, 0x41, 0x0, 0x85, 0x6c, 0xc0, + 0x21, 0x48, 0xcc, 0x41, 0x80, 0x9, 0xaa, 0x88, + 0x20, 0x1f, 0xfd, 0x74, 0xa6, 0x10, 0x8, 0x9a, + 0x62, 0x19, 0xf6, 0xe6, 0x20, 0x4d, 0x79, 0x28, + 0x1, 0xff, 0xdb, 0x3a, 0x93, 0x0, 0x85, 0x5d, + 0xc6, 0x20, 0x4b, 0x19, 0x89, 0x41, 0x0, 0xff, + 0xee, 0x12, 0xdd, 0x8c, 0x3, 0xe1, 0x5a, 0xca, + 0x73, 0x10, 0xf, 0xfe, 0x32, 0x4e, 0x67, 0x52, + 0x88, 0x7, 0xff, 0x0, 0xe3, 0x36, 0x98, 0xc0, + 0x3f, 0xa, 0xc4, 0x98, 0x7, 0xff, 0x1c, 0x5b, + 0xd8, 0xcf, 0x6, 0x20, 0x80, 0x7f, 0x1b, 0xe6, + 0x1c, 0xc0, 0x21, 0x38, 0xcd, 0xb6, 0x20, 0x8, + 0x9f, 0x69, 0x44, 0x3, 0xff, 0x86, 0x4d, 0x48, + 0x1, 0x92, 0x9c, 0x40, 0x3f, 0x13, 0xfc, 0x18, + 0x4, 0x29, 0x19, 0x87, 0x32, 0x49, 0xf8, 0x30, + 0x8, 0x56, 0xb6, 0xc, 0x3, 0xff, 0x80, 0x75, + 0x43, 0x0, 0xcb, 0xec, 0x20, 0x1f, 0x92, 0xe4, + 0xc0, 0x31, 0xcc, 0x9c, 0x80, 0x3c, 0x4f, 0xb4, + 0xa2, 0x1, 0x1b, 0xe6, 0x21, 0x4, 0x3, 0xc4, + 0xfe, 0xe4, 0x1, 0x14, 0x41, 0x0, 0x3f, 0x88, + 0xd4, 0x40, 0x31, 0x5a, 0x90, 0x7, 0xf8, 0x56, + 0xb6, 0x10, 0x40, 0x23, 0x7b, 0xca, 0x52, 0x2, + 0x7e, 0x83, 0x0, 0x89, 0xf9, 0xc8, 0x3, 0xfe, + 0xf1, 0x0, 0xf7, 0x88, 0x7, 0xff, 0x8, 0xde, + 0xf2, 0x54, 0x40, 0x22, 0x5a, 0xcd, 0xf8, 0x30, + 0x8, 0x9f, 0xa0, 0xc0, 0x3f, 0xf8, 0x5, 0xae, + 0x1, 0xc4, 0x88, 0x20, 0xf, 0xfe, 0x21, 0x35, + 0x65, 0x29, 0x0, 0x42, 0x44, 0x0, 0xcb, 0x12, + 0x60, 0x1f, 0xfc, 0x34, 0xf4, 0x0, 0xe3, 0x8e, + 0x83, 0x10, 0xf, 0xfe, 0x18, 0x88, 0xc0, 0x3f, + 0xf8, 0xb, 0x59, 0x4e, 0x82, 0x1, 0xff, 0xc0, + 0x15, 0xaa, 0x20, 0x80, 0x63, 0x7c, 0xfc, 0xa8, + 0x65, 0x44, 0xca, 0xf1, 0x35, 0x9f, 0x92, 0xa4, + 0x1, 0xa, 0x2a, 0x10, 0x6, 0x25, 0x8b, 0xee, + 0x65, 0x42, 0x90, 0x7, 0xe1, 0x5a, 0xd8, 0x52, + 0x0, 0xc2, 0x6a, 0xf3, 0x57, 0x7a, 0xa1, 0xd9, + 0x4c, 0x40, 0x22, 0x58, 0xcf, 0xba, 0xbd, 0xd5, + 0xba, 0x10, 0x6, 0x13, 0x57, 0xf6, 0x0, 0xff, + 0x9, 0xbd, 0x6f, 0x5c, 0xba, 0xa2, 0xc, 0x84, + 0x2, 0x11, 0x11, 0xd, 0x5e, 0x2b, 0x3b, 0x69, + 0xcc, 0x40, 0x31, 0x24, 0x5e, 0xf6, 0x54, 0x32, + 0x13, 0x72, 0x0, 0x40, + + /* U+0027 "'" */ + 0x4, 0x9f, 0xff, 0x74, 0x98, 0x7, 0xf1, 0x88, + 0x1, 0xc0, 0x40, 0x3f, 0xc2, 0x60, 0x1c, 0x3e, + 0x20, 0x5c, 0x20, 0x1c, 0xe2, 0x40, 0x26, 0xc0, + 0x1c, 0x44, 0x0, 0x98, 0xc4, 0x2, 0x21, 0x70, + 0x8, 0x78, 0xc0, 0x21, 0xe2, 0x0, 0x88, 0x88, + 0x67, 0x21, 0x8, 0x0, + + /* U+0028 "(" */ + 0x0, 0xff, 0xe0, 0x8b, 0x56, 0x54, 0x29, 0x0, + 0x7f, 0xf0, 0xd2, 0x20, 0xa6, 0xaa, 0xd1, 0x0, + 0xff, 0xe0, 0x93, 0xc3, 0x8, 0x1, 0x22, 0x4c, + 0x3, 0xff, 0x80, 0xb1, 0x26, 0x0, 0x27, 0x85, + 0x10, 0xf, 0xf8, 0x5b, 0x94, 0x40, 0x7, 0x72, + 0x60, 0x1f, 0xfc, 0x1, 0x7a, 0x40, 0x8, 0xe9, + 0xc4, 0x3, 0xff, 0x80, 0x4d, 0x46, 0x1, 0x1d, + 0x38, 0x80, 0x7f, 0xf0, 0x9, 0x6c, 0xc0, 0x23, + 0xa7, 0x10, 0xf, 0xfe, 0xb, 0xe9, 0x80, 0x44, + 0x88, 0x10, 0xf, 0xfe, 0x9, 0xe2, 0x0, 0x67, + 0xd2, 0x0, 0xff, 0xe0, 0x8a, 0x28, 0x80, 0x45, + 0xae, 0x1, 0xff, 0xc2, 0x5d, 0x30, 0xc, 0xe6, + 0x40, 0x1f, 0xfc, 0x21, 0x10, 0x6, 0x12, 0x70, + 0xf, 0xfe, 0x10, 0x9b, 0x80, 0x63, 0xf1, 0x0, + 0xff, 0xe1, 0x18, 0x88, 0x3, 0x8, 0x8c, 0x3, + 0xff, 0x84, 0x3e, 0x60, 0x19, 0xc0, 0x40, 0x3f, + 0xf8, 0x43, 0xe6, 0x1, 0x9c, 0x4, 0x3, 0xff, + 0x84, 0x62, 0x20, 0xc, 0x22, 0x30, 0xf, 0xfe, + 0x10, 0x9b, 0x80, 0x63, 0xf1, 0x0, 0xff, 0xe1, + 0x88, 0x80, 0x30, 0x93, 0x80, 0x7f, 0xf0, 0xd7, + 0x4c, 0x3, 0x31, 0x90, 0x7, 0xff, 0x8, 0x51, + 0x44, 0x2, 0x3d, 0x70, 0xf, 0xfe, 0x19, 0xe2, + 0x0, 0x67, 0xd2, 0x0, 0xff, 0xe1, 0xbe, 0x98, + 0x4, 0x48, 0x81, 0x0, 0xff, 0xe1, 0x12, 0xd9, + 0x80, 0x47, 0xae, 0x20, 0x1f, 0xfc, 0x22, 0x6a, + 0x30, 0x9, 0x35, 0xc4, 0x3, 0xff, 0x84, 0x2f, + 0x48, 0x1, 0x25, 0x38, 0x80, 0x7f, 0xf0, 0x85, + 0xb9, 0x40, 0x23, 0xb9, 0x30, 0xf, 0xfe, 0x1a, + 0xc4, 0x8, 0x0, 0x4f, 0xa, 0x20, 0x1f, 0xfc, + 0x22, 0x79, 0x51, 0x0, 0x24, 0x49, 0x80, 0x7f, + 0xf0, 0xd2, 0x20, 0x84, 0x8b, 0xa2, 0x1, 0xff, + 0xc4, 0x26, 0xbd, 0xb8, 0x52, 0x0, 0x80, + + /* U+0029 ")" */ + 0x0, 0x84, 0xda, 0x6f, 0x20, 0xc0, 0x3f, 0xf8, + 0xad, 0xac, 0x86, 0xfe, 0xc2, 0x1, 0xff, 0xc2, + 0x15, 0x87, 0x20, 0x1, 0xc4, 0x10, 0x3, 0xff, + 0x86, 0x73, 0x68, 0x0, 0x16, 0x87, 0x20, 0xf, + 0xfe, 0x10, 0xb7, 0xb0, 0x80, 0xe, 0xa8, 0x60, + 0x1f, 0xfc, 0x34, 0xd7, 0x10, 0x1, 0x35, 0x20, + 0x7, 0xff, 0xd, 0x35, 0xc4, 0x0, 0x2f, 0xc8, + 0x1, 0xff, 0xc3, 0x4d, 0x71, 0x0, 0xa, 0xea, + 0x0, 0x7f, 0xf0, 0xd3, 0x14, 0x3, 0x26, 0x10, + 0x7, 0xff, 0xd, 0xcc, 0x80, 0x22, 0x34, 0x10, + 0xf, 0xfe, 0x11, 0x6b, 0x80, 0x64, 0xf5, 0x0, + 0xff, 0xe1, 0xbe, 0x90, 0x6, 0x53, 0x10, 0xf, + 0xfe, 0x11, 0xb, 0x0, 0x61, 0xf2, 0x0, 0xff, + 0xe1, 0x98, 0x80, 0x63, 0x17, 0x0, 0xff, 0xe1, + 0x89, 0x88, 0x4, 0x26, 0x20, 0x1f, 0xfc, 0x37, + 0x10, 0xe, 0x13, 0x0, 0xff, 0xe1, 0xb8, 0x80, + 0x70, 0x98, 0x7, 0xff, 0xc, 0x4c, 0x40, 0x21, + 0x31, 0x0, 0xff, 0xe1, 0x98, 0x80, 0x63, 0x17, + 0x0, 0xff, 0xe1, 0x10, 0xb0, 0x6, 0x1f, 0x20, + 0xf, 0xfe, 0x13, 0xe9, 0x0, 0x65, 0x31, 0x0, + 0xff, 0xe0, 0x96, 0xb8, 0x6, 0x4f, 0x50, 0xf, + 0xfe, 0x13, 0x99, 0x0, 0x44, 0x68, 0x20, 0x1f, + 0xfc, 0x14, 0xc5, 0x0, 0xc9, 0x84, 0x1, 0xff, + 0xc1, 0x4d, 0x71, 0x0, 0xa, 0xea, 0x0, 0x7f, + 0xf0, 0x53, 0x5c, 0x40, 0x2, 0xfc, 0x80, 0x1f, + 0xfc, 0x14, 0xd7, 0x10, 0x0, 0xb5, 0x20, 0x7, + 0xff, 0x0, 0x57, 0xd8, 0x40, 0x5, 0x34, 0x60, + 0x1f, 0xfc, 0x3, 0x98, 0x40, 0x0, 0xac, 0xb9, + 0x0, 0x7f, 0xc2, 0xb0, 0xe4, 0x0, 0x39, 0x84, + 0x0, 0xff, 0xe1, 0x36, 0x31, 0x99, 0xfd, 0xc8, + 0x3, 0xff, 0x84, 0x26, 0xf3, 0x98, 0x83, 0x0, + 0xff, 0xe0, 0x80, + + /* U+002A "*" */ + 0x0, 0xff, 0xe1, 0x14, 0x6f, 0xfb, 0x60, 0x80, + 0x3f, 0xfa, 0xc, 0x24, 0x0, 0x31, 0x10, 0x7, + 0xff, 0x1c, 0x40, 0x3f, 0x9, 0x0, 0x42, 0x6c, + 0x1, 0xf8, 0x40, 0x3e, 0x17, 0xce, 0xfe, 0xdb, + 0xa9, 0x77, 0x7b, 0x0, 0x67, 0xf7, 0x89, 0xac, + 0xde, 0xfe, 0xb6, 0x10, 0xc, 0x62, 0xc6, 0x22, + 0x24, 0x56, 0x88, 0x29, 0x0, 0x62, 0x58, 0x76, + 0x53, 0x21, 0x11, 0x91, 0x98, 0x3, 0x13, 0x56, + 0x77, 0x32, 0xa1, 0x48, 0x3, 0xfc, 0x4b, 0x15, + 0xbd, 0xcc, 0x95, 0x20, 0xf, 0xe1, 0x35, 0x33, + 0x80, 0x3f, 0xe2, 0x45, 0x21, 0x0, 0xff, 0xe1, + 0x94, 0x4b, 0x8, 0x0, 0x9a, 0xa8, 0xc4, 0x0, + 0x27, 0xf7, 0x20, 0xf, 0xfe, 0x11, 0x3f, 0x39, + 0x0, 0xe, 0x3e, 0x55, 0x53, 0xf0, 0x60, 0x3, + 0x89, 0x62, 0x0, 0xff, 0xe0, 0x12, 0xcb, 0x23, + 0x5e, 0xb9, 0x0, 0x62, 0x7d, 0xa6, 0x46, 0xe4, + 0x20, 0xf, 0x0, + + /* U+002B "+" */ + 0x0, 0xff, 0xe4, 0x92, 0xb3, 0x65, 0x20, 0xf, + 0xfe, 0xd8, 0xa4, 0xcf, 0x72, 0x8, 0x7, 0xff, + 0xfc, 0x3, 0xff, 0xfe, 0x1, 0xff, 0xff, 0x0, + 0xff, 0xeb, 0x94, 0x6f, 0xff, 0xff, 0xf, 0xa4, + 0xc0, 0x32, 0x4f, 0x7f, 0xff, 0xf0, 0xf6, 0x8, + 0x3, 0xff, 0xcc, 0x51, 0x9d, 0xdf, 0xfc, 0x3d, + 0x83, 0x0, 0xc7, 0x1b, 0xdd, 0xff, 0xc3, 0xc8, + 0x20, 0xc, 0x23, 0xff, 0xc4, 0x31, 0x0, 0xe7, + 0x13, 0x11, 0xff, 0xe2, 0x0, 0x7f, 0xff, 0xc0, + 0x3f, 0xff, 0xe0, 0x1f, 0xff, 0xf0, 0xf, 0xfe, + 0x28, + + /* U+002C "," */ + 0x0, 0xc2, 0x91, 0x79, 0xba, 0xca, 0x73, 0x0, + 0xf2, 0x45, 0xba, 0x19, 0x10, 0xd6, 0x36, 0x4c, + 0x3, 0x9, 0x80, 0x7f, 0xa, 0x59, 0x80, 0x4b, + 0x14, 0xc8, 0x42, 0x1, 0xc6, 0x2e, 0x1, 0x89, + 0x66, 0xf7, 0x20, 0x80, 0x22, 0xe6, 0x0, 0xfc, + 0x29, 0x64, 0x0, 0x15, 0x32, 0x0, 0xf0, 0xad, + 0xc1, 0x80, 0xe, 0x6d, 0x0, 0x21, 0x36, 0xac, + 0xa5, 0x10, 0x37, 0xf7, 0x20, 0x8, 0xe3, 0x65, + 0x48, 0xd, 0xef, 0x60, 0xc0, 0x38, 0xee, 0x1e, + 0x73, 0xb2, 0x10, 0x40, 0x3c, + + /* U+002D "-" */ + 0x1, 0x22, 0xff, 0xe4, 0x88, 0x4, 0x91, 0xbb, + 0xff, 0xc9, 0xa6, 0x0, 0xff, 0xe8, 0x80, + + /* U+002E "." */ + 0x0, 0xf8, 0x48, 0xc8, 0x40, 0x3f, 0x85, 0x27, + 0x7b, 0x73, 0x7b, 0x65, 0x4, 0x3, 0xb, 0xfb, + 0x10, 0x7, 0x13, 0x43, 0x88, 0x4, 0x26, 0x1, + 0xfe, 0x73, 0x10, 0xc, 0xb3, 0x25, 0x21, 0x1, + 0x25, 0x99, 0x28, 0x0, + + /* U+002F "/" */ + 0x0, 0xff, 0xe7, 0x13, 0xef, 0xfd, 0xae, 0x40, + 0x1f, 0xfc, 0xe2, 0x5b, 0x20, 0x1, 0x2a, 0x88, + 0x3, 0xff, 0x9a, 0x29, 0x66, 0x0, 0x15, 0xb2, + 0x0, 0xff, 0xe6, 0x8b, 0xe9, 0x80, 0x5, 0xec, + 0xc0, 0x3f, 0xf9, 0xa2, 0x9a, 0x80, 0x1, 0x7d, + 0x30, 0xf, 0xfe, 0x72, 0x7a, 0x0, 0x49, 0xa8, + 0x1, 0xff, 0xce, 0x5f, 0x50, 0x9, 0x7d, 0x0, + 0x3f, 0xf9, 0xc9, 0xea, 0x1, 0x27, 0xa8, 0x7, + 0xff, 0x39, 0x35, 0x0, 0x24, 0xd4, 0x0, 0xff, + 0xe7, 0x1e, 0xb8, 0x80, 0x13, 0x5c, 0x40, 0x3f, + 0xf9, 0xa7, 0x6e, 0x20, 0x3, 0xc7, 0x10, 0xf, + 0xfe, 0x69, 0x5a, 0x88, 0x0, 0xad, 0x44, 0x3, + 0xff, 0x9a, 0x4a, 0xa2, 0x0, 0x12, 0xa8, 0x80, + 0x3f, 0xf9, 0xa2, 0xb6, 0x40, 0x1, 0x5b, 0x20, + 0xf, 0xfe, 0x68, 0xbd, 0x98, 0x0, 0x5e, 0xcc, + 0x3, 0xff, 0x9a, 0x2f, 0xa6, 0x0, 0x17, 0xd3, + 0x0, 0xff, 0xe7, 0x3e, 0xa0, 0x4, 0xfa, 0x80, + 0x1f, 0xfc, 0xe5, 0xc4, 0x0, 0x97, 0x10, 0x3, + 0xff, 0x9c, 0xbe, 0xa0, 0x12, 0xfa, 0x80, 0x7f, + 0xf3, 0x93, 0x10, 0x2, 0x4c, 0x40, 0xf, 0xfe, + 0x72, 0x6b, 0x88, 0x1, 0x35, 0xc4, 0x3, 0xff, + 0x9a, 0x78, 0xe2, 0x0, 0x3c, 0x71, 0x0, 0xff, + 0xe6, 0x9d, 0xa8, 0x80, 0xe, 0xd4, 0x40, 0x3f, + 0xf9, 0xa5, 0x6a, 0x40, 0x2, 0xb5, 0x20, 0xf, + 0xfe, 0x69, 0x2a, 0x88, 0x0, 0x4a, 0x84, 0x1, + 0xff, 0xcd, 0x25, 0xb2, 0x0, 0xa, 0xd9, 0x80, + 0x7f, 0xf3, 0x45, 0x2c, 0xc0, 0x2, 0xf8, 0x60, + 0x1f, 0xfc, 0xd1, 0x7d, 0x30, 0x0, 0xbe, 0xa0, + 0x7, 0xff, 0x39, 0x35, 0x0, 0x24, 0xc4, 0x0, + 0xff, 0xe7, 0x10, 0xe4, 0x45, 0x52, 0xa0, 0x1f, + 0xfc, 0xf0, + + /* U+0030 "0" */ + 0x0, 0xff, 0xe0, 0x12, 0x3c, 0xde, 0x6f, 0x7f, + 0xee, 0xdc, 0xb9, 0x74, 0x20, 0xf, 0xfe, 0x48, + 0xa4, 0xee, 0xae, 0x19, 0xc, 0x84, 0x3, 0x9, + 0x1a, 0x34, 0x5e, 0xea, 0x50, 0x40, 0x3f, 0xf8, + 0x66, 0xfb, 0x6c, 0x40, 0x18, 0x95, 0xe6, 0xae, + 0xd5, 0x2e, 0xa4, 0x1, 0x89, 0xaf, 0x5c, 0x80, + 0x3f, 0xe1, 0x6f, 0x83, 0x0, 0xc4, 0xf9, 0xb5, + 0xc, 0xa8, 0x85, 0x68, 0xad, 0xc7, 0x20, 0xc, + 0x71, 0x2c, 0x20, 0x1f, 0x8e, 0x6c, 0xc0, 0x30, + 0xbf, 0x41, 0x80, 0x7f, 0xf0, 0xe, 0x25, 0x84, + 0x3, 0x25, 0xc9, 0x0, 0x78, 0xad, 0x48, 0x3, + 0x14, 0xd1, 0x80, 0x7f, 0xf1, 0x12, 0xd8, 0x80, + 0x31, 0x2d, 0x10, 0x6, 0x14, 0x41, 0x0, 0x61, + 0x44, 0x10, 0x7, 0xff, 0x18, 0xad, 0x4, 0x3, + 0x12, 0x20, 0x40, 0x25, 0xf3, 0x0, 0xe5, 0xf3, + 0x0, 0xff, 0xe4, 0x1f, 0xa8, 0x7, 0x17, 0x90, + 0x0, 0x48, 0x80, 0x1c, 0x24, 0x40, 0xf, 0xfe, + 0x51, 0x10, 0x40, 0x30, 0x92, 0x80, 0xc, 0x5c, + 0x3, 0x8c, 0x5c, 0x3, 0xff, 0x94, 0xe2, 0x60, + 0x1c, 0xe2, 0x20, 0x7, 0x88, 0x7, 0xbc, 0x40, + 0x3f, 0xf9, 0x42, 0x1, 0xf0, 0x81, 0x80, 0x7f, + 0xf8, 0xfc, 0x40, 0x3d, 0xe2, 0x1, 0xff, 0xca, + 0x10, 0xf, 0x84, 0xc, 0xc, 0x5c, 0x3, 0x8c, + 0x5c, 0x3, 0xff, 0x94, 0xe2, 0x40, 0x1c, 0xe2, + 0x20, 0x12, 0x20, 0x80, 0x61, 0x22, 0x0, 0x7f, + 0xf2, 0x44, 0x88, 0x1, 0xc2, 0x4a, 0x1, 0x2f, + 0x90, 0x7, 0x2f, 0x98, 0x7, 0xff, 0x21, 0x7d, + 0x40, 0x39, 0x7c, 0x80, 0x21, 0x44, 0x10, 0x6, + 0x14, 0xb2, 0x0, 0xff, 0xe3, 0x16, 0x20, 0x80, + 0x63, 0xc4, 0x10, 0xc, 0x56, 0xa4, 0x1, 0x89, + 0xa8, 0xc0, 0x3f, 0xf8, 0x89, 0x6c, 0x40, 0x18, + 0xad, 0x48, 0x3, 0xc7, 0x36, 0x80, 0x18, 0x5f, + 0xe0, 0xc0, 0x3f, 0xf8, 0x7, 0x12, 0xc2, 0x1, + 0x92, 0x18, 0x80, 0x3f, 0xb, 0x4c, 0x18, 0x6, + 0x37, 0xcd, 0xa7, 0x54, 0x4c, 0xaf, 0x5b, 0x8e, + 0x40, 0x18, 0xe6, 0x4a, 0x20, 0x1f, 0xf1, 0x3e, + 0xdb, 0x18, 0x6, 0x25, 0x8a, 0xbb, 0xd5, 0xa, + 0x40, 0x18, 0xde, 0xf5, 0x88, 0x3, 0xff, 0x86, + 0x29, 0x39, 0xb7, 0x2c, 0x86, 0x42, 0x1, 0x84, + 0x8d, 0x1a, 0x2f, 0x72, 0x10, 0x40, 0x3f, 0x80, + + /* U+0031 "1" */ + 0x0, 0xff, 0xe0, 0x9, 0xb4, 0x56, 0xff, 0xfa, + 0x50, 0x3, 0xff, 0x90, 0x4b, 0x35, 0x7b, 0xdf, + 0xd9, 0x2e, 0xa4, 0x1, 0xff, 0xd0, 0x7e, 0x65, + 0x42, 0x10, 0xf, 0xfe, 0xba, 0x45, 0xdf, 0xf4, + 0xa9, 0x0, 0x7f, 0xf4, 0x4, 0xd1, 0x3f, 0xda, + 0x20, 0x1f, 0xff, 0xf0, 0xf, 0xff, 0xf8, 0x7, + 0xff, 0xfc, 0x3, 0xff, 0xfe, 0x1, 0xff, 0xff, + 0x0, 0xff, 0xff, 0x80, 0x7f, 0xff, 0xc0, 0x3f, + 0xff, 0xe0, 0x1f, 0xfc, 0x11, 0x35, 0x5f, 0xfe, + 0x2, 0x68, 0x80, 0x78, 0xb1, 0x57, 0xfe, 0x31, + 0x0, 0xc9, 0x35, 0x5f, 0xfc, 0x9, 0x52, 0x0, + 0xf2, 0x3d, 0x57, 0xfd, 0x8, 0x1, 0xff, 0xe1, + + /* U+0032 "2" */ + 0x0, 0xff, 0xe0, 0x12, 0x34, 0x55, 0xee, 0xbb, + 0x9f, 0xee, 0xdc, 0xba, 0xa4, 0x31, 0x88, 0x7, + 0xff, 0x24, 0x51, 0xef, 0xb6, 0xe5, 0xd5, 0x8, + 0x82, 0x20, 0x0, 0x91, 0xa2, 0xa9, 0xe7, 0x3f, + 0x25, 0x48, 0x3, 0xff, 0x84, 0x4b, 0x5f, 0x70, + 0x82, 0x1, 0x12, 0x34, 0x4d, 0x55, 0x30, 0xec, + 0x84, 0x1, 0x84, 0xda, 0xb9, 0xc8, 0x3, 0xfe, + 0x35, 0x95, 0x10, 0x8, 0x9a, 0xbb, 0x6e, 0x5d, + 0x95, 0x66, 0x78, 0x9b, 0xdd, 0x4a, 0x88, 0x6, + 0x38, 0xe7, 0x20, 0xf, 0xe3, 0x7c, 0xc4, 0x3c, + 0x66, 0xca, 0x88, 0x7, 0xff, 0x8, 0x9a, 0xec, + 0x80, 0x1c, 0x78, 0x82, 0x1, 0xff, 0x1b, 0xc3, + 0x98, 0x7, 0xff, 0x20, 0x53, 0x50, 0x3, 0x97, + 0xc8, 0x3, 0xff, 0xb2, 0x24, 0x20, 0x1c, 0x24, + 0xc0, 0x1f, 0xfd, 0xa1, 0x10, 0x7, 0x88, 0x40, + 0x3f, 0xfb, 0x27, 0x8a, 0x1, 0xc7, 0xea, 0x1, + 0xff, 0xd8, 0x4a, 0x71, 0x0, 0xc7, 0x68, 0x20, + 0x1f, 0xfd, 0x61, 0x6f, 0x61, 0x0, 0xc9, 0x2c, + 0x40, 0x1f, 0xfd, 0x51, 0x4b, 0x84, 0x0, 0xc4, + 0xf0, 0xa2, 0x1, 0xff, 0xd4, 0x14, 0xba, 0x51, + 0x0, 0x85, 0xa6, 0xc, 0x3, 0xff, 0xa8, 0x4d, + 0x54, 0x51, 0x0, 0x89, 0xf6, 0x50, 0x3, 0xff, + 0xa6, 0x29, 0x3f, 0x28, 0x20, 0x12, 0x4f, 0xc1, + 0x80, 0x7f, 0xf4, 0xce, 0x36, 0xd8, 0x80, 0x22, + 0x6b, 0xa6, 0x20, 0xf, 0xfe, 0x91, 0xbd, 0xeb, + 0x98, 0x4, 0x29, 0x1f, 0x28, 0x20, 0x1f, 0xfd, + 0x13, 0x8c, 0xc4, 0x20, 0x80, 0x5, 0x23, 0x2d, + 0xc8, 0x3, 0xff, 0xa0, 0x29, 0x39, 0x87, 0x30, + 0x8, 0x52, 0x32, 0xdc, 0x80, 0x3f, 0xfa, 0x4, + 0xd5, 0xf6, 0xc6, 0x1, 0x89, 0x63, 0xcd, 0x91, + 0x56, 0x66, 0xff, 0xe3, 0x29, 0x88, 0x6, 0x49, + 0xc9, 0x51, 0x0, 0xf8, 0x96, 0x6e, 0xf5, 0x55, + 0x33, 0xff, 0xc6, 0x84, 0x30, 0xc, 0x26, 0x20, + 0x1f, 0xfd, 0xe0, + + /* U+0033 "3" */ + 0x0, 0xff, 0xe0, 0xa, 0x34, 0x4d, 0xe6, 0xf7, + 0x3f, 0xee, 0xdd, 0x65, 0xd4, 0xba, 0x10, 0x7, + 0xff, 0x24, 0x9a, 0x77, 0xae, 0x5d, 0x90, 0xc8, + 0x44, 0x1, 0x9, 0x10, 0xd1, 0x5a, 0x2f, 0x7b, + 0x21, 0x0, 0x3f, 0xf8, 0x22, 0x95, 0xdb, 0x2c, + 0x40, 0x11, 0x23, 0x44, 0xd5, 0x2e, 0xd5, 0x32, + 0x76, 0x31, 0x0, 0xc2, 0x6f, 0x56, 0xc4, 0x1, + 0xfe, 0x14, 0x99, 0x20, 0x92, 0xc5, 0xf6, 0xdc, + 0xbb, 0x2a, 0x91, 0xa, 0xcc, 0x89, 0xce, 0xb6, + 0x20, 0xc, 0x29, 0x14, 0x60, 0x1f, 0xf1, 0xbd, + 0xf6, 0xd3, 0xa0, 0x80, 0x7f, 0xf1, 0x12, 0x6d, + 0x0, 0x38, 0x51, 0x44, 0x3, 0xff, 0xb2, 0x42, + 0x1, 0xf0, 0x98, 0x7, 0xff, 0x60, 0xf1, 0xc0, + 0x38, 0x54, 0xc8, 0x3, 0xff, 0xaa, 0x2b, 0x3c, + 0xe4, 0x1, 0x8e, 0x2d, 0x0, 0x3f, 0xf9, 0x22, + 0x44, 0x33, 0x22, 0x15, 0xa2, 0xb3, 0xb9, 0x4c, + 0x40, 0x11, 0xbd, 0xeb, 0x10, 0x7, 0xff, 0x25, + 0x6f, 0x75, 0x98, 0xbb, 0x54, 0xba, 0x98, 0x80, + 0x9b, 0xce, 0x76, 0x42, 0x8, 0x7, 0xff, 0x68, + 0x4d, 0xb6, 0x99, 0x8, 0x3, 0xff, 0x9a, 0xb5, + 0xff, 0x77, 0x37, 0x2e, 0xa5, 0xd4, 0xc4, 0x5, + 0x1a, 0x2f, 0x31, 0x8, 0x20, 0x1f, 0xfc, 0xe1, + 0x11, 0x1a, 0x2b, 0x45, 0x67, 0x64, 0x18, 0x4, + 0x26, 0xf5, 0x6a, 0x20, 0x1f, 0xfd, 0x73, 0x7d, + 0xa5, 0x10, 0x8, 0x56, 0xe4, 0xc0, 0x3f, 0xfb, + 0x2, 0xbe, 0x80, 0x1c, 0x28, 0x81, 0x0, 0xff, + 0xec, 0xb1, 0x10, 0x3, 0x8b, 0x94, 0x3, 0xff, + 0xb2, 0xc4, 0x40, 0xe, 0x31, 0x70, 0xf, 0xa, + 0xcc, 0x98, 0xc0, 0x3f, 0xf9, 0x62, 0xbe, 0x80, + 0x1e, 0x7d, 0x30, 0xc, 0x4f, 0xb4, 0xcc, 0x9c, + 0xda, 0x52, 0x0, 0xff, 0xe2, 0x9, 0xbd, 0x5a, + 0x88, 0x6, 0x26, 0x95, 0x0, 0xe3, 0x32, 0x18, + 0x6, 0x25, 0xad, 0xed, 0xb9, 0x87, 0x65, 0x59, + 0x9d, 0xd1, 0x59, 0xf9, 0x8, 0x20, 0x18, 0xdf, + 0xa4, 0xc0, 0x3c, 0x29, 0x19, 0xb4, 0xc6, 0x20, + 0x10, 0x92, 0x33, 0xc4, 0xd5, 0x53, 0x10, 0x75, + 0x31, 0x0, 0xc2, 0x8f, 0x7b, 0x6, 0x1, 0xff, + 0xc0, 0x25, 0x9c, 0xed, 0xb9, 0x86, 0x43, 0x22, + 0x8, 0x80, 0x21, 0x23, 0x32, 0x2b, 0x45, 0xef, + 0x5c, 0x20, 0x80, 0x7e, + + /* U+0034 "4" */ + 0x0, 0xff, 0xe7, 0xa4, 0xef, 0xff, 0xd8, 0xe2, + 0x1, 0xff, 0xd8, 0x38, 0x96, 0x20, 0xf, 0xff, + 0x1, 0xc7, 0x39, 0x0, 0x7f, 0xf8, 0xe, 0x39, + 0xc8, 0x0, 0x2a, 0xa4, 0x0, 0xff, 0xed, 0x13, + 0xfb, 0x90, 0x4, 0x91, 0xc, 0x0, 0xff, 0xec, + 0x93, 0xf4, 0x18, 0x4, 0x4f, 0xc, 0x62, 0xe0, + 0x1f, 0xfd, 0x62, 0x7e, 0x83, 0x0, 0x85, 0xa6, + 0x46, 0x6, 0x1, 0xff, 0xd6, 0x26, 0xe8, 0x30, + 0x8, 0x56, 0xa1, 0x4, 0x3, 0x8, 0x7, 0xff, + 0x48, 0x5a, 0x64, 0x60, 0x10, 0xad, 0x5a, 0x8, + 0x7, 0xff, 0x5c, 0x5a, 0xa5, 0x0, 0x21, 0x5a, + 0xb4, 0x10, 0xf, 0xfe, 0xb8, 0xad, 0x42, 0x0, + 0x42, 0xb5, 0x68, 0x20, 0x1f, 0xfd, 0x71, 0x5b, + 0xb2, 0x8, 0x0, 0x56, 0xad, 0x4, 0x3, 0xff, + 0xae, 0x2b, 0x76, 0x51, 0x0, 0xa, 0xd5, 0xa0, + 0x80, 0x7f, 0xf5, 0xc5, 0x2e, 0xca, 0x20, 0x11, + 0xb7, 0x39, 0x19, 0xff, 0xf0, 0x9f, 0x80, 0x3c, + 0x3c, 0xa6, 0x7e, 0x21, 0x0, 0x85, 0xfd, 0x44, + 0x3, 0x8d, 0xef, 0x33, 0xff, 0x89, 0x4c, 0x40, + 0x1c, 0x4d, 0x79, 0x9e, 0x84, 0x0, 0xff, 0xf5, + 0xb, 0x5f, 0xff, 0xff, 0x3b, 0x60, 0x80, 0x38, + 0xe3, 0xbf, 0xfd, 0x4a, 0x1, 0xff, 0xff, 0x0, + 0xff, 0xff, 0x80, 0x7f, 0xff, 0xc0, 0x3f, 0xfa, + 0xa0, + + /* U+0035 "5" */ + 0x0, 0xfc, 0x2f, 0x9f, 0xff, 0xfd, 0x2a, 0x40, + 0xf, 0xfe, 0x9, 0xf8, 0x80, 0x7f, 0xf8, 0x44, + 0x46, 0x1, 0xc6, 0xd5, 0x5f, 0xfc, 0xb9, 0x50, + 0xf, 0xfe, 0xb, 0x18, 0x80, 0x61, 0x4a, 0x55, + 0xff, 0xe5, 0x98, 0x80, 0x7f, 0xf0, 0x4c, 0x40, + 0x38, 0xbc, 0x40, 0x3f, 0xfb, 0x24, 0x2e, 0x1, + 0xcc, 0x44, 0x0, 0xff, 0xec, 0x8f, 0x90, 0x6, + 0x13, 0x10, 0xf, 0xfe, 0xd3, 0x88, 0x80, 0x31, + 0x81, 0x34, 0xde, 0x6f, 0x73, 0xfd, 0xdb, 0xac, + 0xba, 0x96, 0x41, 0x0, 0xff, 0xe3, 0x89, 0x80, + 0x71, 0x34, 0xc9, 0x90, 0xc8, 0x44, 0x0, 0x12, + 0x21, 0xa2, 0xb4, 0xdf, 0x6d, 0x31, 0x0, 0x7f, + 0xf0, 0xc4, 0x88, 0x1, 0x84, 0xda, 0x2a, 0xed, + 0x9b, 0xb6, 0x5d, 0x42, 0x90, 0x7, 0x12, 0xcf, + 0xc9, 0x80, 0x7f, 0xf0, 0x52, 0x37, 0x57, 0x6d, + 0xfc, 0x97, 0x54, 0x41, 0x91, 0x46, 0x8a, 0xf5, + 0xba, 0x94, 0x10, 0xc, 0x4d, 0xd0, 0x60, 0x1f, + 0xfc, 0x22, 0x44, 0x10, 0x80, 0x7f, 0xf1, 0x9, + 0xaa, 0x10, 0x3, 0x89, 0xe5, 0x40, 0x3f, 0xfb, + 0x2, 0xdc, 0xa0, 0x1e, 0x4d, 0x30, 0xf, 0xfe, + 0xcb, 0x91, 0x0, 0x38, 0x49, 0xc0, 0x3f, 0xfb, + 0x27, 0xe2, 0x1, 0xf0, 0x80, 0x7f, 0xf6, 0x57, + 0x88, 0x3, 0x84, 0xd8, 0x3, 0xff, 0xb0, 0x46, + 0xa2, 0x1, 0xcb, 0xe4, 0x1, 0xe1, 0x59, 0x85, + 0x20, 0xf, 0xfe, 0x50, 0xac, 0x49, 0x80, 0x72, + 0x6b, 0x88, 0x6, 0x27, 0xda, 0x67, 0xac, 0xc4, + 0x20, 0x80, 0x7f, 0xf0, 0xc4, 0xde, 0xad, 0x44, + 0x3, 0x1c, 0x4b, 0x8, 0x7, 0x19, 0x29, 0x0, + 0x42, 0x6f, 0x7d, 0xcc, 0xa9, 0x77, 0x32, 0xac, + 0xcf, 0x15, 0x9f, 0x90, 0x82, 0x1, 0x8e, 0x39, + 0xc8, 0x3, 0xe1, 0x59, 0xcc, 0x4b, 0x18, 0x80, + 0x42, 0x6a, 0xd1, 0x9, 0xaa, 0xa6, 0x1d, 0x4c, + 0x40, 0x31, 0x2c, 0xe6, 0xb9, 0x0, 0x7f, 0xf0, + 0x4, 0xda, 0x73, 0xf6, 0xe5, 0xd5, 0xc, 0x88, + 0x22, 0x0, 0xc2, 0x46, 0x8d, 0x17, 0xdb, 0x4c, + 0x62, 0x1, 0xfc, + + /* U+0036 "6" */ + 0x0, 0xff, 0xe1, 0x89, 0xac, 0x4d, 0xe6, 0xf7, + 0x3f, 0xee, 0xe6, 0xe5, 0xcb, 0xa1, 0x0, 0x7f, + 0xf1, 0xc9, 0x67, 0x7b, 0x29, 0xd9, 0xc, 0x84, + 0x40, 0x10, 0x88, 0x8d, 0x1a, 0x2f, 0x75, 0x4c, + 0x40, 0x1f, 0xfc, 0x2, 0x5a, 0xca, 0x62, 0x0, + 0xc2, 0x6a, 0xcf, 0x13, 0x34, 0x3b, 0x29, 0x88, + 0x4, 0x4b, 0x76, 0x40, 0xf, 0xe2, 0x69, 0xa5, + 0x10, 0x8, 0x96, 0xb7, 0xb2, 0xa6, 0x1d, 0x9a, + 0x78, 0x9a, 0xce, 0xda, 0x77, 0x57, 0xca, 0x0, + 0x7e, 0x48, 0x82, 0x0, 0x63, 0x8f, 0xa5, 0x20, + 0xf, 0xfe, 0x19, 0x2c, 0x41, 0x48, 0x3, 0xf0, + 0xaf, 0xa8, 0x80, 0x44, 0xfe, 0xe4, 0x1, 0xff, + 0xd4, 0x4e, 0x40, 0xc, 0x4b, 0x46, 0x1, 0xff, + 0xd5, 0x3c, 0x50, 0xc, 0x29, 0x84, 0x1, 0xff, + 0xd5, 0x15, 0x50, 0x80, 0x65, 0xf5, 0x0, 0x85, + 0x1e, 0x6f, 0x7b, 0xff, 0xbb, 0x72, 0xea, 0x14, + 0x80, 0x3f, 0xe2, 0xe1, 0x0, 0xe1, 0x30, 0x59, + 0xde, 0xb8, 0x64, 0x21, 0x0, 0xe1, 0x23, 0x45, + 0x7a, 0xdd, 0x53, 0x18, 0x7, 0xce, 0x26, 0x1, + 0xcf, 0x19, 0x4c, 0x42, 0x8f, 0x37, 0xbd, 0xfe, + 0xed, 0xcb, 0x96, 0x30, 0xc, 0x4b, 0x3c, 0xe4, + 0x1, 0xe3, 0x10, 0xe, 0x22, 0x1a, 0x46, 0x7d, + 0xc3, 0x21, 0x8, 0x0, 0x48, 0xd1, 0xa7, 0x30, + 0xe4, 0x1, 0x8a, 0x25, 0x84, 0x3, 0x18, 0x80, + 0x71, 0x35, 0x5b, 0x98, 0x80, 0x7f, 0xf0, 0xce, + 0x20, 0xa0, 0x1c, 0x98, 0x80, 0x13, 0x89, 0x80, + 0x73, 0x7a, 0x80, 0x7f, 0xf2, 0x53, 0x10, 0x3, + 0x98, 0x88, 0x0, 0x2e, 0x60, 0xe, 0x5f, 0x20, + 0xf, 0xfe, 0x48, 0x91, 0x0, 0x38, 0xf9, 0x80, + 0x2, 0xa6, 0x20, 0x18, 0x49, 0x44, 0x3, 0xff, + 0x92, 0x26, 0x1, 0xff, 0x1e, 0x38, 0x80, 0x64, + 0xd7, 0x10, 0xf, 0xfe, 0x39, 0x11, 0xc0, 0x38, + 0xb9, 0x80, 0x32, 0x6b, 0x88, 0x6, 0x4b, 0x93, + 0x0, 0xff, 0xe2, 0x95, 0x50, 0x80, 0x30, 0xaa, + 0x10, 0x7, 0x24, 0x40, 0xc0, 0x31, 0x3f, 0x42, + 0x8, 0x7, 0xff, 0x0, 0x9a, 0x5c, 0x80, 0x32, + 0x44, 0x98, 0x7, 0xc2, 0xdd, 0x28, 0x20, 0x11, + 0x3d, 0xe5, 0xc3, 0xaa, 0x19, 0x91, 0x5e, 0x73, + 0x12, 0x80, 0x18, 0xe2, 0x58, 0x40, 0x3f, 0xc4, + 0xd7, 0xb0, 0x82, 0x1, 0x12, 0x3c, 0x55, 0xe6, + 0x2e, 0xa1, 0x8c, 0x40, 0x2, 0x91, 0x9a, 0xe4, + 0x1, 0xff, 0xc3, 0x37, 0xbe, 0xda, 0x86, 0x43, + 0x21, 0x0, 0xc2, 0x46, 0x8d, 0x39, 0xf6, 0xe6, + 0x20, 0x1f, 0x0, + + /* U+0037 "7" */ + 0x38, 0xdf, 0xff, 0xfe, 0xd7, 0x41, 0x80, 0x7f, + 0xf7, 0x8c, 0x2, 0x2b, 0x8a, 0xaf, 0xfe, 0x84, + 0xb1, 0x0, 0x70, 0xac, 0xc8, 0xc0, 0x4d, 0x57, + 0xff, 0xa0, 0xde, 0x84, 0x1, 0x13, 0x55, 0x10, + 0x40, 0x3f, 0xfa, 0x47, 0x1c, 0xc4, 0x0, 0x16, + 0x99, 0x20, 0x7, 0xff, 0x4c, 0x9f, 0xdc, 0x80, + 0x2, 0xb7, 0x8, 0x1, 0xff, 0xd3, 0x16, 0x98, + 0x30, 0x9, 0x22, 0xd4, 0x40, 0x3f, 0xfa, 0x67, + 0x30, 0x80, 0x10, 0xb7, 0xb0, 0x80, 0x7f, 0xf5, + 0x12, 0x58, 0x40, 0x23, 0x9b, 0x40, 0xf, 0xfe, + 0xa0, 0xb7, 0xa8, 0x80, 0x47, 0x4c, 0x40, 0x1f, + 0xfd, 0x41, 0x6a, 0x40, 0xc, 0x94, 0xe2, 0x1, + 0xff, 0xd4, 0x26, 0xb3, 0x0, 0xc7, 0x8e, 0x20, + 0x1f, 0xfd, 0x54, 0xc3, 0x0, 0xc2, 0xa6, 0x20, + 0x1f, 0xfd, 0x54, 0xf5, 0x0, 0xe5, 0xf5, 0x0, + 0xff, 0xea, 0x91, 0xa0, 0x80, 0x62, 0x35, 0x10, + 0xf, 0xfe, 0xaa, 0x61, 0x0, 0x73, 0xe9, 0x80, + 0x7f, 0xf5, 0x4f, 0xd4, 0x3, 0x88, 0x8e, 0x1, + 0xff, 0xd6, 0x62, 0x10, 0xe, 0x1e, 0x30, 0xf, + 0xfe, 0xa9, 0x11, 0xc0, 0x3c, 0xc6, 0x20, 0x1f, + 0xfd, 0x51, 0xe2, 0x0, 0xe1, 0x31, 0x0, 0xff, + 0xeb, 0x39, 0x88, 0x7, 0x18, 0xb8, 0x7, 0xff, + 0x58, 0x44, 0x1, 0xf7, 0x88, 0x7, 0xff, 0x20, + + /* U+0038 "8" */ + 0x0, 0xff, 0xe0, 0x12, 0x3c, 0xd5, 0xe6, 0xf7, + 0xfb, 0xb9, 0xb9, 0x75, 0x2e, 0x82, 0x1, 0xff, + 0xc8, 0x36, 0xbd, 0xd5, 0xc3, 0x2a, 0x19, 0x8, + 0x0, 0x44, 0x46, 0x8a, 0xd1, 0x7d, 0xb4, 0xc4, + 0x1, 0xff, 0xc2, 0x49, 0xe9, 0x42, 0x0, 0x89, + 0x62, 0xf3, 0x7b, 0x9b, 0x97, 0x4e, 0x82, 0x1, + 0x12, 0xcf, 0x39, 0x0, 0x7f, 0x89, 0xe5, 0x88, + 0x2, 0x16, 0xbd, 0xa7, 0x43, 0x21, 0x11, 0x1a, + 0x2c, 0x5f, 0xd2, 0x8, 0x4, 0x71, 0x2c, 0x20, + 0x1f, 0x9f, 0x8, 0x3, 0x1c, 0xda, 0x0, 0x7f, + 0xf0, 0x85, 0x66, 0x44, 0x1, 0x93, 0xd4, 0x3, + 0xe3, 0xd6, 0x0, 0xe6, 0x32, 0x0, 0xff, 0xe2, + 0x91, 0xa0, 0x80, 0x65, 0x21, 0x0, 0xf1, 0x73, + 0x0, 0x73, 0x10, 0x80, 0x7f, 0xf1, 0x9c, 0x3, + 0xcc, 0x62, 0x1, 0xe1, 0x7d, 0x30, 0xc, 0x74, + 0xc4, 0x1, 0xff, 0xc4, 0x15, 0x50, 0x80, 0x49, + 0x88, 0x1, 0xf8, 0x5b, 0xe0, 0xc0, 0x23, 0x8f, + 0x94, 0x10, 0xf, 0xfe, 0x1, 0x35, 0x98, 0x0, + 0x9a, 0x18, 0x40, 0x3f, 0xc6, 0xf9, 0x88, 0x41, + 0x2, 0x6b, 0xfc, 0x96, 0x31, 0x0, 0xe3, 0x7e, + 0x82, 0x3, 0x7e, 0x93, 0x0, 0xff, 0xe1, 0x9b, + 0xc3, 0x18, 0x4, 0x26, 0xd3, 0x9d, 0xcb, 0x99, + 0x5e, 0xc1, 0x99, 0xf3, 0x60, 0xc0, 0x3f, 0xf8, + 0x66, 0xf7, 0xd8, 0xe6, 0x26, 0xf3, 0x27, 0x52, + 0x11, 0x23, 0x31, 0x4, 0x0, 0x6b, 0x2c, 0x62, + 0x1, 0xff, 0xc0, 0x37, 0xcc, 0x42, 0x8, 0x92, + 0x73, 0x10, 0xcc, 0x8a, 0xde, 0xe5, 0xcb, 0x18, + 0x80, 0x44, 0xb1, 0x98, 0x94, 0x10, 0xf, 0x89, + 0xfe, 0xc, 0x0, 0x2d, 0x56, 0xc4, 0x1, 0xf8, + 0x51, 0xa7, 0x3f, 0x1c, 0xc0, 0x31, 0x35, 0xd3, + 0x8, 0x6, 0x48, 0x81, 0x80, 0x47, 0x36, 0x80, + 0x1f, 0xfc, 0x41, 0x38, 0xdb, 0x61, 0x0, 0xc9, + 0x12, 0x60, 0x2, 0xc7, 0x0, 0xc2, 0xa6, 0x40, + 0x1f, 0xfc, 0x81, 0x4a, 0x71, 0x0, 0xc2, 0x8a, + 0x20, 0xc2, 0x40, 0x1f, 0xfd, 0x22, 0xf5, 0x0, + 0xe2, 0xe2, 0x6, 0xe2, 0x0, 0xc2, 0x98, 0x60, + 0x1f, 0xfc, 0xa5, 0xf5, 0x0, 0xe5, 0xd3, 0x2, + 0x5a, 0x30, 0xc, 0x4f, 0xd2, 0x60, 0x1f, 0xfc, + 0x63, 0x89, 0x61, 0x0, 0xc7, 0x88, 0x1, 0x13, + 0xf4, 0xa0, 0x80, 0x44, 0xd9, 0xd9, 0x2e, 0xa8, + 0x64, 0x23, 0x11, 0xa3, 0x45, 0xee, 0x39, 0x0, + 0x63, 0x9e, 0x71, 0x0, 0xe2, 0x6a, 0xd8, 0x52, + 0x0, 0x84, 0xda, 0x2a, 0xf3, 0x7b, 0xad, 0xcb, + 0x97, 0x42, 0x0, 0x89, 0x22, 0xf5, 0x88, 0x3, + 0xf8, 0x4d, 0xeb, 0x7b, 0x29, 0xd9, 0x50, 0xc8, + 0x82, 0x0, 0x11, 0x11, 0xa2, 0xa9, 0xe7, 0x3b, + 0x6d, 0xd0, 0x40, 0x3c, + + /* U+0039 "9" */ + 0x0, 0xff, 0xe0, 0x8a, 0x3c, 0xd5, 0xe6, 0xf7, + 0xfd, 0xdb, 0x97, 0x2e, 0xa6, 0x20, 0x1f, 0xfc, + 0xb2, 0x59, 0xce, 0xb8, 0x65, 0x43, 0x21, 0x0, + 0x84, 0x8d, 0x1a, 0x2b, 0x3f, 0x20, 0xc4, 0x3, + 0xff, 0x8a, 0x93, 0x94, 0xc6, 0x1, 0x9, 0xb4, + 0x4d, 0xdd, 0x53, 0xe, 0xa4, 0x1, 0x9, 0xbe, + 0x6c, 0x18, 0x7, 0xff, 0x4, 0xe6, 0x4c, 0x20, + 0x10, 0xad, 0x7e, 0x4b, 0xb2, 0x24, 0xac, 0xf1, + 0x5b, 0xa9, 0x51, 0x0, 0x8d, 0xfd, 0xc8, 0x3, + 0xfc, 0xb2, 0xc4, 0x1, 0x92, 0xec, 0xa2, 0x1, + 0xff, 0xc1, 0x26, 0xbb, 0x28, 0x80, 0x47, 0x10, + 0x50, 0xf, 0xc9, 0x88, 0x1, 0xc7, 0xa8, 0x20, + 0x1f, 0xfc, 0x51, 0x58, 0x62, 0x0, 0xcb, 0xea, + 0x1, 0xf0, 0x98, 0x80, 0x72, 0x90, 0x80, 0x7f, + 0xf2, 0xa, 0xd0, 0x40, 0x32, 0x62, 0x0, 0x79, + 0x88, 0x40, 0x38, 0x84, 0x3, 0xff, 0x94, 0x5e, + 0xa0, 0x18, 0x54, 0xc8, 0x3, 0x8b, 0x94, 0x3, + 0x97, 0x4c, 0x3, 0xff, 0x92, 0x62, 0xe0, 0x1c, + 0x5c, 0x20, 0x1c, 0x28, 0x64, 0x1, 0x85, 0xe1, + 0x84, 0x3, 0xff, 0x88, 0x4b, 0x5f, 0x6, 0x1, + 0xc2, 0x6e, 0x1, 0xe2, 0x89, 0x61, 0x0, 0xc9, + 0x3f, 0x70, 0xa6, 0x42, 0x1, 0x9, 0x1a, 0xbd, + 0x6e, 0xa9, 0x4c, 0x88, 0x1, 0xff, 0xc4, 0x48, + 0xa7, 0x31, 0x0, 0x85, 0x1e, 0xb3, 0x7b, 0xfe, + 0xed, 0xca, 0x85, 0x22, 0x35, 0x64, 0x38, 0x7, + 0x9, 0xb8, 0x7, 0xf0, 0xa4, 0x67, 0xe4, 0xb2, + 0x19, 0x8, 0x80, 0x38, 0x49, 0x1a, 0x2f, 0x75, + 0x2a, 0x46, 0x20, 0x1c, 0x62, 0x20, 0xf, 0xfe, + 0x8, 0x9b, 0x4d, 0xe6, 0xf7, 0x3f, 0xfb, 0xb6, + 0xe5, 0xd0, 0x80, 0x23, 0xe6, 0x0, 0xe6, 0xe3, + 0x0, 0xff, 0xec, 0xa9, 0x90, 0x6, 0x23, 0x51, + 0x0, 0xff, 0xec, 0x2e, 0x20, 0x7, 0x3e, 0x98, + 0x7, 0xff, 0x5c, 0x5b, 0x94, 0x3, 0x97, 0xd4, + 0x3, 0xff, 0xae, 0x91, 0x4, 0x0, 0xc2, 0xdc, + 0xa0, 0x1f, 0xfc, 0x3, 0x8c, 0xc4, 0xa9, 0x0, + 0x7f, 0xf0, 0x8d, 0xee, 0x98, 0x40, 0x32, 0x5c, + 0x20, 0x7, 0xf8, 0x56, 0xb5, 0xcc, 0xcd, 0x5b, + 0xab, 0xa8, 0x76, 0x55, 0x9a, 0x27, 0x3b, 0x21, + 0x4, 0x2, 0x15, 0xaa, 0x28, 0x80, 0x7f, 0xc2, + 0xb7, 0x4e, 0x62, 0x1, 0x12, 0x2b, 0xc4, 0xd5, + 0x52, 0xec, 0x62, 0x1, 0x89, 0xab, 0x29, 0x44, + 0x3, 0xff, 0x86, 0x29, 0x19, 0xf9, 0x2e, 0xa6, + 0x42, 0x20, 0xc, 0x22, 0x24, 0x57, 0x9c, 0xed, + 0x95, 0x20, 0xf, 0xfe, 0x0, + + /* U+003A ":" */ + 0x0, 0xc4, 0xd5, 0xbd, 0xfd, 0xb4, 0xc4, 0x1, + 0xe5, 0x89, 0x52, 0x10, 0x12, 0x59, 0x85, 0x0, + 0xc2, 0x62, 0x1, 0xfc, 0xc6, 0x20, 0x10, 0xbf, + 0x28, 0x80, 0x70, 0xac, 0xb8, 0x80, 0x61, 0x5a, + 0xee, 0x66, 0x5d, 0xca, 0x51, 0x0, 0xfe, 0x13, + 0x38, 0x40, 0x3f, 0xff, 0xe0, 0x1f, 0xfe, 0x21, + 0x23, 0x21, 0x0, 0xfe, 0x14, 0x9d, 0xed, 0xcd, + 0xed, 0x94, 0x10, 0xc, 0x2f, 0xec, 0x40, 0x1c, + 0x4d, 0xe, 0x20, 0x10, 0x98, 0x7, 0xf9, 0xcc, + 0x40, 0x32, 0xcc, 0x94, 0x84, 0x4, 0x96, 0x64, + 0xa0, 0x0, + + /* U+003B ";" */ + 0x0, 0xc4, 0xd5, 0xbd, 0xfd, 0xb4, 0xc4, 0x1, + 0xe5, 0x89, 0x52, 0x10, 0x12, 0x59, 0x85, 0x0, + 0xc2, 0x62, 0x1, 0xfc, 0xc6, 0x20, 0x10, 0xbf, + 0x28, 0x80, 0x70, 0xac, 0xb8, 0x80, 0x61, 0x5a, + 0xee, 0x66, 0x5d, 0xca, 0x51, 0x0, 0xfe, 0x13, + 0x38, 0x40, 0x3f, 0xff, 0xe0, 0x1f, 0xff, 0x11, + 0x48, 0xbc, 0xdd, 0x65, 0x39, 0x80, 0x79, 0x22, + 0xdd, 0xc, 0x88, 0x6b, 0x1b, 0x26, 0x1, 0x84, + 0xc0, 0x3f, 0x85, 0x2c, 0xc0, 0x25, 0x8a, 0x64, + 0x21, 0x0, 0xe3, 0x17, 0x0, 0xc4, 0xb3, 0x7b, + 0x90, 0x40, 0x11, 0x73, 0x0, 0x7e, 0x14, 0xb2, + 0x0, 0xa, 0x99, 0x0, 0x78, 0x56, 0xe0, 0xc0, + 0x7, 0x36, 0x80, 0x10, 0x9b, 0x56, 0x52, 0x88, + 0x1b, 0xfb, 0x90, 0x4, 0x71, 0xb2, 0xa4, 0x6, + 0xf7, 0xb0, 0x60, 0x1c, 0x77, 0xf, 0x39, 0xd9, + 0x8, 0x20, 0x1e, + + /* U+003C "<" */ + 0x0, 0xff, 0xff, 0x80, 0x7f, 0xc2, 0x6a, 0xf5, + 0x9d, 0x90, 0x40, 0x1f, 0xfd, 0x21, 0x24, 0x68, + 0xbd, 0xee, 0x65, 0x42, 0x98, 0x88, 0x3, 0xff, + 0x9a, 0x26, 0xaf, 0x59, 0xdc, 0xdb, 0x97, 0x42, + 0x10, 0x8, 0x4d, 0x5e, 0x28, 0x80, 0x3f, 0xf8, + 0x62, 0x48, 0xd1, 0x7b, 0xdc, 0xca, 0x85, 0x31, + 0x0, 0x84, 0xd5, 0xe6, 0xf7, 0xfb, 0x2a, 0x14, + 0x80, 0x3f, 0x84, 0xd5, 0xeb, 0x3b, 0x9b, 0x72, + 0xe8, 0x42, 0x0, 0x13, 0x57, 0x9b, 0xdf, 0xec, + 0xa8, 0x64, 0x20, 0xf, 0xf0, 0xa4, 0x5e, 0xf7, + 0x32, 0xa1, 0x4c, 0x40, 0x2, 0x6a, 0xf3, 0x7b, + 0xfd, 0x95, 0xc, 0x84, 0x1, 0xff, 0xc6, 0x3c, + 0x54, 0x21, 0x0, 0x85, 0x22, 0xf7, 0xfb, 0x2a, + 0x19, 0x8, 0x3, 0xff, 0x9f, 0xe2, 0x1, 0xe1, + 0x48, 0xae, 0xa8, 0x64, 0x21, 0x0, 0xff, 0xe8, + 0x13, 0xe7, 0x65, 0x43, 0x21, 0x0, 0x4, 0xd5, + 0xe6, 0xf7, 0xb9, 0x95, 0xc, 0x84, 0x20, 0x1f, + 0xfc, 0xb1, 0x35, 0x79, 0xbd, 0xfd, 0xb9, 0x75, + 0x31, 0x0, 0x9, 0xab, 0xcd, 0xef, 0x73, 0x2a, + 0x19, 0x8, 0x40, 0x3f, 0xf9, 0x64, 0x8d, 0x15, + 0x9d, 0xcc, 0xa8, 0x64, 0x20, 0x8, 0x4d, 0x5e, + 0x6f, 0x7b, 0x99, 0x50, 0xc8, 0x42, 0x1, 0xff, + 0xca, 0x13, 0x57, 0x9b, 0xdf, 0xdb, 0x97, 0x53, + 0x10, 0x8, 0x4d, 0x5e, 0x6f, 0x72, 0x8, 0x3, + 0xff, 0xa0, 0x48, 0xd1, 0x59, 0xdc, 0xca, 0x86, + 0x42, 0x0, 0xff, 0xee, 0x89, 0xab, 0xcd, 0xef, + 0xed, 0xc5, 0x98, + + /* U+003D "=" */ + 0x0, 0xc2, 0x3f, 0xfd, 0xe0, 0xc, 0x51, 0x9d, + 0xdf, 0xfd, 0xcc, 0x82, 0x0, 0xff, 0xf3, 0x14, + 0x6f, 0xff, 0xff, 0x73, 0x60, 0x80, 0x3f, 0xff, + 0xe0, 0x1f, 0xff, 0xd1, 0x1f, 0xfe, 0xf0, 0x6, + 0x28, 0xce, 0xef, 0xfe, 0xe6, 0x41, 0x0, 0x7f, + 0xf9, 0x0, + + /* U+003E ">" */ + 0x0, 0xff, 0xf3, 0x14, 0x6f, 0x64, 0xba, 0x98, + 0x80, 0x7f, 0xf7, 0x44, 0xda, 0x2b, 0x3b, 0x9b, + 0x70, 0xc8, 0x42, 0x1, 0xff, 0xd2, 0x2a, 0x87, + 0x53, 0x10, 0x8, 0x49, 0x1e, 0x6f, 0x7b, 0x99, + 0x2e, 0xa6, 0x20, 0x1f, 0xfc, 0xc2, 0x58, 0xac, + 0xef, 0xdb, 0x97, 0x53, 0x10, 0x8, 0x4d, 0xa2, + 0xb3, 0xb9, 0xb7, 0xc, 0x84, 0x20, 0x1f, 0xfc, + 0xb2, 0x46, 0x8a, 0xce, 0xfd, 0xb9, 0x75, 0x31, + 0x0, 0x9, 0x23, 0xcd, 0xef, 0x73, 0x25, 0xd4, + 0xc4, 0x3, 0xff, 0x98, 0x48, 0xd1, 0x59, 0xdf, + 0xb7, 0x2e, 0xa6, 0x20, 0x1, 0x36, 0x8a, 0xce, + 0xe6, 0xdb, 0xa0, 0x80, 0x7f, 0xf3, 0x89, 0x1a, + 0x2b, 0x3b, 0xf6, 0xe1, 0x4, 0x2, 0x12, 0x4a, + 0xc3, 0x0, 0xff, 0xe8, 0x9, 0x23, 0x45, 0x75, + 0x42, 0x8, 0x7, 0x87, 0xc0, 0x3f, 0xf9, 0x22, + 0x48, 0xd1, 0x59, 0xdc, 0xdb, 0x97, 0x53, 0x10, + 0x1, 0x23, 0x45, 0x67, 0x63, 0x90, 0x7, 0xff, + 0x0, 0x49, 0x1a, 0x2b, 0x3b, 0x9b, 0x72, 0xea, + 0x62, 0x0, 0x13, 0x57, 0x9b, 0xdf, 0xdb, 0x97, + 0x53, 0x10, 0xf, 0x84, 0x91, 0xa2, 0xb3, 0xb9, + 0xb7, 0x2e, 0xa6, 0x20, 0x11, 0x23, 0x45, 0x67, + 0x73, 0x2a, 0x19, 0x8, 0x3, 0xff, 0x82, 0x51, + 0x9b, 0x72, 0xea, 0x62, 0x1, 0x9, 0xab, 0xcd, + 0xef, 0xed, 0xcb, 0xa9, 0x88, 0x7, 0xff, 0x38, + 0x91, 0xa2, 0xb3, 0xb9, 0x95, 0xc, 0x84, 0x1, + 0xff, 0xd0, 0x3b, 0x8b, 0xdf, 0xdb, 0x97, 0x53, + 0x10, 0xf, 0xfe, 0xa8, + + /* U+003F "?" */ + 0x0, 0xff, 0x9, 0xab, 0xcd, 0xe6, 0xf7, 0x3f, + 0xdd, 0xba, 0xcb, 0xa8, 0x52, 0x0, 0xff, 0xe1, + 0x12, 0xce, 0xf6, 0x54, 0x32, 0x19, 0x8, 0x80, + 0x2, 0x44, 0x34, 0x57, 0xad, 0xec, 0x73, 0x0, + 0xf8, 0x9a, 0xf2, 0x98, 0x80, 0x22, 0x35, 0x67, + 0x99, 0x54, 0xc3, 0xa9, 0x88, 0x6, 0x13, 0x8e, + 0x94, 0x0, 0xe2, 0x78, 0x63, 0x23, 0x6a, 0xdd, + 0x65, 0x4c, 0x33, 0x15, 0x9e, 0x2b, 0x3e, 0x94, + 0x40, 0x31, 0x37, 0x28, 0x7, 0x9, 0xc6, 0x6e, + 0x4a, 0x90, 0x7, 0xff, 0x4, 0x56, 0x58, 0x80, + 0x39, 0xf4, 0xc0, 0x3f, 0xfa, 0x5, 0xc2, 0x1, + 0xff, 0xd8, 0x4c, 0x30, 0xe, 0x7d, 0x30, 0xf, + 0xfe, 0x71, 0xc4, 0x14, 0x3, 0x13, 0xca, 0x80, + 0x7f, 0xf3, 0x5, 0x6b, 0x5c, 0x80, 0x23, 0x8f, + 0x83, 0x0, 0xff, 0xe5, 0x93, 0xed, 0x28, 0x80, + 0x5, 0x6b, 0x5c, 0x80, 0x3f, 0xf9, 0x67, 0x1f, + 0x6, 0x1, 0x13, 0x55, 0x14, 0x40, 0x3f, 0xf9, + 0x67, 0x1c, 0xe4, 0x1, 0x13, 0xf4, 0xa0, 0x7, + 0xff, 0x35, 0x61, 0xc8, 0x2, 0x16, 0xe8, 0x30, + 0xf, 0xfe, 0x72, 0x7a, 0x0, 0x61, 0x6a, 0x30, + 0xf, 0xfe, 0x80, 0x80, 0x78, 0xbc, 0x80, 0x3f, + 0xfa, 0x2b, 0x7b, 0xbe, 0x71, 0x0, 0xff, 0xe9, + 0x9, 0x17, 0x8, 0x7, 0xff, 0x54, 0x48, 0xcc, + 0x42, 0x1, 0xff, 0xd2, 0x37, 0xce, 0xdc, 0xc6, + 0xfe, 0x31, 0x0, 0x7f, 0xf3, 0x92, 0xa0, 0xc0, + 0x38, 0x4e, 0x2c, 0xc0, 0x3f, 0xf9, 0xae, 0x22, + 0x0, 0xfc, 0x62, 0x20, 0xf, 0xfe, 0x69, 0xcd, + 0x31, 0x88, 0x0, 0x4d, 0xe6, 0x44, 0x1, 0xff, + 0xc0, + + /* U+0040 "@" */ + 0x0, 0xff, 0xe8, 0x89, 0xa3, 0x3c, 0xd5, 0xe6, + 0xeb, 0xb9, 0xff, 0xbb, 0x9b, 0xac, 0xba, 0x97, + 0x64, 0x21, 0x0, 0xff, 0xef, 0x12, 0x3d, 0x6f, + 0xf6, 0x5c, 0xc3, 0x2a, 0x19, 0x10, 0x40, 0x47, + 0xc4, 0x43, 0x45, 0x68, 0x9b, 0xde, 0xdb, 0x85, + 0x20, 0xf, 0xfe, 0xa0, 0xa4, 0x67, 0x6d, 0xc2, + 0x90, 0x9, 0xab, 0xc5, 0x66, 0xf7, 0xfd, 0xdd, + 0xdf, 0xfb, 0xb2, 0xe6, 0x19, 0x4, 0x9, 0x1e, + 0xb7, 0x54, 0xa4, 0x1, 0xff, 0xcd, 0x37, 0xbf, + 0xb7, 0x31, 0x2, 0x58, 0xbd, 0xec, 0xa8, 0x75, + 0x32, 0x10, 0xf, 0xfe, 0x0, 0x9a, 0x33, 0xcd, + 0xf7, 0x2d, 0xd0, 0x40, 0x96, 0xb2, 0xd4, 0x40, + 0x3f, 0xf8, 0xe4, 0xf9, 0x88, 0x41, 0x1, 0x49, + 0xcd, 0xa7, 0x42, 0x0, 0xff, 0xe8, 0x8a, 0x45, + 0xfd, 0x28, 0x80, 0xa5, 0x6b, 0x90, 0x7, 0xff, + 0x8, 0x52, 0x7e, 0xc, 0x0, 0x4d, 0x5f, 0x6c, + 0x60, 0x1f, 0xfd, 0xa1, 0x5a, 0xd7, 0x20, 0x1, + 0xc4, 0xa8, 0x80, 0x7f, 0x85, 0x6e, 0x98, 0x80, + 0x7, 0x1d, 0x2a, 0x20, 0x1f, 0xfe, 0x3, 0x89, + 0x51, 0x0, 0x24, 0x49, 0x0, 0x7e, 0x39, 0x85, + 0x10, 0x1, 0xce, 0xb9, 0x80, 0x7f, 0xf0, 0x84, + 0xd6, 0x2b, 0x37, 0x5d, 0xcd, 0xca, 0x85, 0x20, + 0x25, 0x9a, 0xa9, 0x8c, 0x3, 0xfc, 0x92, 0xc4, + 0x0, 0x25, 0x51, 0x0, 0x70, 0xac, 0x39, 0x0, + 0x5, 0xfd, 0x84, 0x3, 0xff, 0x82, 0x2b, 0x39, + 0x8a, 0x75, 0x32, 0x20, 0x88, 0x8d, 0x5e, 0xbe, + 0xa2, 0x59, 0x54, 0xc2, 0x20, 0xf, 0xf8, 0xf1, + 0x4, 0x0, 0x58, 0x82, 0x1, 0xb, 0xf2, 0x0, + 0x49, 0x12, 0x60, 0x1f, 0xfc, 0x1, 0x5a, 0xfa, + 0x62, 0x1, 0x47, 0xac, 0xef, 0xf7, 0x65, 0x31, + 0x11, 0x54, 0x60, 0x12, 0x99, 0x0, 0x7f, 0xf0, + 0x13, 0xd4, 0x2, 0x6e, 0x20, 0x9, 0x31, 0x0, + 0x24, 0xd7, 0x10, 0xf, 0xfe, 0x2, 0xdd, 0x94, + 0x40, 0x4e, 0x36, 0xe1, 0x4c, 0x40, 0x2, 0x6b, + 0x3f, 0x4, 0x1, 0x8f, 0xd4, 0x3, 0xff, 0x84, + 0x42, 0x1, 0x10, 0xb8, 0x1, 0x3d, 0x40, 0x23, + 0xc4, 0x10, 0xf, 0xf8, 0x9e, 0x54, 0x40, 0x7, + 0x1c, 0xe6, 0x1, 0xff, 0xf, 0x98, 0x4, 0x28, + 0xa2, 0x1, 0xff, 0xc8, 0x30, 0x0, 0x93, 0x0, + 0x42, 0xa6, 0x40, 0x1f, 0xf1, 0xd4, 0x98, 0x4, + 0xb2, 0xc4, 0x1, 0xff, 0xc0, 0x15, 0x31, 0x0, + 0x97, 0x4c, 0x3, 0xff, 0x84, 0x24, 0xc0, 0x10, + 0x93, 0x81, 0xf0, 0x80, 0x46, 0x2c, 0x1, 0xff, + 0xa, 0x98, 0x80, 0x49, 0x88, 0x1, 0xff, 0xc2, + 0x2f, 0x50, 0x8, 0xb1, 0xc0, 0x3f, 0xf8, 0x65, + 0xe4, 0x1, 0x2f, 0x10, 0x30, 0x90, 0x4, 0x3c, + 0x60, 0x1f, 0xf1, 0x7a, 0x80, 0x42, 0x44, 0x10, + 0xf, 0xfe, 0x8, 0xaa, 0x84, 0x2, 0x72, 0x20, + 0x7, 0xff, 0x8, 0xad, 0x4, 0x0, 0x58, 0x82, + 0x1, 0x8, 0x6, 0x10, 0xf, 0xfe, 0x3, 0x80, + 0x7f, 0xf2, 0x97, 0xc8, 0x2, 0x22, 0x30, 0x7, + 0xff, 0x4, 0x56, 0x1c, 0x80, 0x7, 0x4a, 0x40, + 0x6, 0x13, 0x0, 0x87, 0xcc, 0x3, 0xfe, 0x5e, + 0x20, 0x8, 0x54, 0xc8, 0x3, 0xfe, 0x27, 0x86, + 0x10, 0x8, 0x85, 0xc0, 0x3f, 0xe2, 0x5b, 0x85, + 0x0, 0xa, 0xc3, 0x10, 0x4, 0x7c, 0x20, 0x11, + 0x11, 0xc0, 0x3f, 0xe1, 0x5b, 0x20, 0x8, 0xe6, + 0x4e, 0x62, 0x1, 0x89, 0x63, 0x31, 0x6, 0x44, + 0x10, 0x9, 0xfd, 0xcc, 0x40, 0x21, 0x35, 0x7b, + 0xca, 0x52, 0x1, 0x6a, 0xb4, 0x10, 0xc, 0x28, + 0x82, 0x0, 0x93, 0x10, 0x3, 0xfe, 0x27, 0x96, + 0x10, 0x0, 0xa4, 0x67, 0x7f, 0xed, 0xa7, 0x25, + 0x8c, 0xdf, 0x93, 0x0, 0xa, 0x46, 0x77, 0xfd, + 0xd9, 0x50, 0x82, 0x4, 0xb5, 0x92, 0x82, 0x1, + 0xf1, 0x5a, 0x8, 0x0, 0x5f, 0x50, 0x3, 0xff, + 0x80, 0x93, 0xf9, 0xa, 0x64, 0x20, 0x1, 0x23, + 0x58, 0xbc, 0xb7, 0x30, 0x27, 0xdb, 0x85, 0x32, + 0x10, 0xc, 0x24, 0x8d, 0x17, 0xba, 0xa5, 0x20, + 0xf, 0xf8, 0xe9, 0x88, 0x0, 0x2d, 0xe, 0x40, + 0x1f, 0xfc, 0x1, 0x37, 0xac, 0xde, 0xff, 0x76, + 0xe5, 0x3a, 0x10, 0x7, 0x85, 0x1e, 0xb3, 0x7b, + 0xff, 0x76, 0xdc, 0xba, 0x10, 0x7, 0xff, 0x10, + 0xe6, 0x14, 0x40, 0x7, 0x1c, 0xe4, 0x1, 0xff, + 0xf7, 0x15, 0x88, 0x20, 0x80, 0xe, 0x3e, 0x94, + 0x80, 0x3f, 0xfe, 0xc4, 0xd7, 0xae, 0x40, 0x2, + 0x5a, 0xcc, 0x42, 0x90, 0x7, 0xff, 0x44, 0x8c, + 0x84, 0x3, 0xff, 0xa8, 0x71, 0x98, 0x84, 0x10, + 0x13, 0x7a, 0xde, 0xca, 0x86, 0x53, 0x21, 0x0, + 0xff, 0x8, 0x88, 0xd1, 0xa2, 0xb7, 0xb7, 0x3e, + 0x4c, 0x3, 0xff, 0xaa, 0x26, 0xf7, 0xf9, 0x2e, + 0x84, 0x2, 0x6a, 0xf3, 0x59, 0xbd, 0xff, 0x77, + 0x77, 0xfb, 0xb9, 0xb9, 0x72, 0xea, 0x42, 0x48, + 0xba, 0x20, 0x1f, 0xfd, 0x91, 0x36, 0x8b, 0xde, + 0xdb, 0x98, 0x75, 0x43, 0x22, 0x8, 0xf8, 0x8, + 0x86, 0x88, 0x56, 0x79, 0xbd, 0xfd, 0xb8, 0x52, + 0x0, 0xff, 0xe4, 0x80, + + /* U+0041 "A" */ + 0x0, 0xff, 0xe6, 0x24, 0xf7, 0xff, 0xda, 0xe4, + 0x1, 0xff, 0xe2, 0x4d, 0x71, 0x0, 0xf8, 0xa9, + 0x48, 0x3, 0xff, 0xc0, 0x9a, 0xe2, 0x0, 0x14, + 0x41, 0x0, 0x45, 0x54, 0x20, 0xf, 0xfe, 0xf2, + 0x73, 0x88, 0x0, 0x5f, 0xe2, 0x88, 0x2, 0x25, + 0xa2, 0x0, 0xff, 0xee, 0x27, 0x28, 0x80, 0x49, + 0x88, 0x68, 0xa4, 0x1, 0x12, 0xd1, 0x0, 0x7f, + 0xf6, 0x93, 0x94, 0x3, 0x27, 0xa8, 0x0, 0xed, + 0x4, 0x2, 0x25, 0xa3, 0x0, 0xff, 0xec, 0x2f, + 0x28, 0x6, 0x4d, 0x40, 0xc, 0x7a, 0xe2, 0x1, + 0x12, 0xd9, 0x80, 0x7f, 0xf5, 0x97, 0xd4, 0x3, + 0x1e, 0x38, 0x80, 0x72, 0x6a, 0x0, 0x62, 0x5b, + 0x30, 0xf, 0xfe, 0xa2, 0xfa, 0x80, 0x62, 0xb5, + 0x10, 0xf, 0x93, 0xd4, 0x3, 0x12, 0xd9, 0x80, + 0x7f, 0xf4, 0x97, 0xd4, 0x3, 0x12, 0xa8, 0x80, + 0x3f, 0x97, 0x10, 0x3, 0x13, 0x59, 0x80, 0x7f, + 0xf4, 0x17, 0xd4, 0x3, 0x12, 0xd9, 0x0, 0x7f, + 0xcf, 0xa8, 0x1, 0x85, 0xac, 0xc0, 0x3f, 0xf9, + 0xcb, 0xea, 0x1, 0x85, 0x6c, 0xc0, 0x3f, 0xf8, + 0x2, 0xfa, 0x60, 0x18, 0x5a, 0xcc, 0x3, 0xff, + 0x98, 0xbe, 0xa0, 0x18, 0x5e, 0xcc, 0x3, 0xff, + 0x84, 0x2f, 0x66, 0x1, 0x85, 0xa8, 0xc0, 0x3f, + 0xf9, 0x4b, 0xca, 0x1, 0xc2, 0xd9, 0xff, 0xff, + 0xc4, 0xe8, 0x30, 0xe, 0x17, 0xa3, 0x0, 0xff, + 0xe4, 0x2f, 0x20, 0x7, 0xff, 0x58, 0x5e, 0x8c, + 0x3, 0xff, 0x8c, 0xbc, 0x80, 0x1c, 0x91, 0x79, + 0x9f, 0xfc, 0x9a, 0x62, 0x0, 0xc2, 0xf4, 0x60, + 0x1f, 0xfc, 0x31, 0x5e, 0x40, 0xe, 0x5e, 0x74, + 0x33, 0xff, 0xe4, 0xad, 0x29, 0x0, 0x61, 0x7a, + 0x40, 0xf, 0xfe, 0x8, 0xbf, 0x20, 0x7, 0x2f, + 0xa8, 0x7, 0xff, 0x30, 0xed, 0x44, 0x3, 0xb, + 0xea, 0x0, 0x7f, 0xc2, 0xfa, 0x80, 0x1c, 0xbe, + 0xa0, 0x1f, 0xfc, 0xe3, 0xb7, 0x10, 0xc, 0x2f, + 0xa8, 0x1, 0xfc, 0x2f, 0xa8, 0x1, 0xc9, 0xea, + 0x1, 0xff, 0xd0, 0x3d, 0x71, 0x0, 0xc2, 0xfa, + 0x80, 0x1f, 0xb, 0xea, 0x0, 0x72, 0x6a, 0x0, + 0x7f, 0xf4, 0x93, 0x5c, 0x40, 0x30, 0xbe, 0xa0, + 0x7, 0xb, 0xea, 0x0, 0x72, 0x6b, 0x88, 0x7, + 0xff, 0x4d, 0x35, 0x0, 0x38, 0x5f, 0x90, 0x0, + + /* U+0042 "B" */ + 0x0, 0x2d, 0x7f, 0xff, 0xf2, 0x7b, 0x9b, 0xac, + 0xc5, 0xcb, 0xb2, 0x10, 0x7, 0xff, 0x6c, 0x44, + 0x44, 0x33, 0x23, 0x44, 0xde, 0xfe, 0xca, 0x8, + 0x7, 0xff, 0x1c, 0x9a, 0xb3, 0x3f, 0xd7, 0x6a, + 0xa4, 0xc3, 0xa9, 0x88, 0x7, 0x13, 0x5e, 0x4a, + 0x8, 0x7, 0xff, 0x10, 0x79, 0xc, 0xff, 0xc8, + 0x85, 0x53, 0x3c, 0x56, 0x76, 0x41, 0x80, 0x71, + 0x34, 0x31, 0x0, 0x7f, 0xf6, 0x8d, 0xf9, 0xc8, + 0x3, 0x8f, 0x5c, 0x3, 0xff, 0xb8, 0x5a, 0xe0, + 0x1e, 0x10, 0xf, 0xfe, 0xe9, 0x11, 0xc0, 0x38, + 0x49, 0x80, 0x3f, 0xfb, 0x44, 0xb1, 0x24, 0x1, + 0x89, 0xa8, 0xc0, 0x3f, 0xfa, 0x2, 0x22, 0x21, + 0xa3, 0x45, 0x66, 0x29, 0x44, 0x2, 0x38, 0xe8, + 0x30, 0xf, 0xfe, 0x21, 0xc7, 0x7f, 0xff, 0xbb, + 0x9b, 0xac, 0xb9, 0x75, 0x31, 0x2, 0x58, 0xad, + 0xc7, 0x30, 0xf, 0xfe, 0xf9, 0x25, 0x75, 0xba, + 0x8, 0x7, 0xff, 0x18, 0x9e, 0xf7, 0x7f, 0xd9, + 0x8b, 0xb5, 0x52, 0x61, 0xd4, 0xc4, 0x4, 0x91, + 0xa2, 0xff, 0x1c, 0xc0, 0x3f, 0xf8, 0x63, 0xea, + 0x45, 0xfe, 0x33, 0x22, 0x15, 0x4c, 0xf1, 0x59, + 0xdc, 0xa6, 0x20, 0x8, 0x4e, 0x3a, 0x4c, 0x3, + 0xff, 0xb4, 0x2b, 0x3f, 0x6, 0x1, 0x89, 0xa1, + 0x40, 0x3f, 0xfb, 0x84, 0x88, 0x20, 0xe, 0x5d, + 0x30, 0xf, 0xfe, 0xe1, 0x78, 0x80, 0x70, 0x93, + 0x0, 0x7f, 0xf7, 0x17, 0x4c, 0x3, 0x84, 0xd8, + 0x3, 0xff, 0xb4, 0x2b, 0xc8, 0x1, 0xe4, 0xc3, + 0x0, 0xff, 0xeb, 0x8a, 0x46, 0xd2, 0x88, 0x6, + 0x16, 0xe5, 0x0, 0xff, 0xe0, 0xf, 0x22, 0x7f, + 0xf0, 0x15, 0x4c, 0xc7, 0x74, 0xd6, 0xf7, 0x2d, + 0xcc, 0x3, 0x89, 0xea, 0x50, 0x3, 0xff, 0x82, + 0x4d, 0x57, 0x7f, 0xf5, 0x52, 0x65, 0x10, 0x65, + 0x21, 0x0, 0xc2, 0x6d, 0x39, 0x88, 0x40, 0xf, + 0xfe, 0x98, 0x91, 0xd, 0x10, 0xac, 0xf3, 0x9d, + 0xcc, 0x96, 0x31, 0x0, 0xf8, + + /* U+0043 "C" */ + 0x0, 0xff, 0xe3, 0x9, 0x23, 0x44, 0xde, 0x6e, + 0xbb, 0x9f, 0xf7, 0x6e, 0xb2, 0xe5, 0xd4, 0xc4, + 0x3, 0xff, 0x98, 0x26, 0xd3, 0x9f, 0xb7, 0x2e, + 0xc8, 0x64, 0x41, 0x10, 0x4, 0x24, 0x43, 0x46, + 0x8a, 0xce, 0xda, 0x63, 0x10, 0xf, 0xfe, 0x21, + 0x2d, 0x66, 0x25, 0x8c, 0x40, 0x38, 0x4d, 0x15, + 0x9d, 0xf9, 0x95, 0x8, 0x3, 0x89, 0x67, 0x31, + 0x6, 0x1, 0xff, 0xc0, 0x39, 0xfa, 0x52, 0x0, + 0xc2, 0x6d, 0x39, 0xdc, 0xcb, 0xa9, 0x88, 0xe9, + 0xab, 0xdf, 0xd9, 0x62, 0x0, 0x89, 0x6c, 0xc0, + 0x3f, 0xc9, 0x3a, 0xc4, 0x1, 0x85, 0x23, 0x31, + 0x2c, 0x62, 0x1, 0xff, 0xc3, 0x26, 0x9d, 0xd5, + 0xe6, 0x20, 0xc0, 0x3f, 0x85, 0xa1, 0x84, 0x3, + 0x8e, 0x29, 0xc8, 0x3, 0xff, 0x98, 0x48, 0x62, + 0x1, 0xfe, 0x39, 0xb3, 0x0, 0xe2, 0x6f, 0x61, + 0x0, 0xff, 0xed, 0x92, 0x20, 0x80, 0x38, 0xee, + 0xc, 0x3, 0xff, 0xba, 0xf8, 0x60, 0x1c, 0x2a, + 0x42, 0x1, 0xff, 0xdd, 0x22, 0x30, 0x7, 0x8b, + 0x94, 0x3, 0xff, 0xbc, 0x3e, 0x60, 0x1e, 0x62, + 0x10, 0xf, 0xff, 0xf8, 0x7, 0xff, 0x24, 0x7c, + 0xc0, 0x3c, 0xc4, 0x40, 0xf, 0xfe, 0xf1, 0x8b, + 0x0, 0x78, 0xb9, 0x80, 0x3f, 0xfb, 0xc2, 0x98, + 0x40, 0x1c, 0x2a, 0x62, 0x1, 0xff, 0xde, 0x24, + 0x40, 0x80, 0x71, 0xd4, 0x18, 0x7, 0xff, 0x78, + 0xee, 0x48, 0x3, 0x89, 0xa1, 0x84, 0x3, 0xff, + 0xba, 0x4d, 0xa, 0x20, 0x1c, 0x91, 0x4c, 0x40, + 0x1f, 0xfc, 0xd3, 0x79, 0x73, 0x0, 0xff, 0xa, + 0xdd, 0x28, 0x80, 0x61, 0x49, 0xcc, 0x42, 0x90, + 0x7, 0xff, 0x10, 0x51, 0xeb, 0x72, 0x1a, 0x36, + 0xd8, 0x80, 0x3f, 0x85, 0x2b, 0x25, 0x4, 0x3, + 0x9, 0xbd, 0x6f, 0xee, 0x54, 0xc4, 0x1d, 0xd1, + 0x9, 0xab, 0xde, 0xe5, 0xc2, 0x90, 0x4, 0x29, + 0xa8, 0x40, 0x1f, 0xfc, 0x2, 0x6b, 0xfb, 0x74, + 0x20, 0xf, 0x11, 0xab, 0x3b, 0xa2, 0xe, 0xe6, + 0x54, 0x21, 0x0, 0xc2, 0x8f, 0x7f, 0x4c, 0x40, + 0x1f, 0xfc, 0x41, 0x48, 0xbd, 0xec, 0xa8, 0x75, + 0x32, 0x20, 0x88, 0x3, 0x8, 0x88, 0xd1, 0xa2, + 0x6f, 0x7a, 0xe1, 0x4, 0x3, 0xc0, + + /* U+0044 "D" */ + 0x0, 0x2d, 0x7f, 0xff, 0xf1, 0xbb, 0x9b, 0xac, + 0xba, 0x97, 0x64, 0x21, 0x0, 0xff, 0xee, 0x88, + 0x88, 0x86, 0x8a, 0xd1, 0x37, 0xbd, 0xb5, 0x8, + 0x40, 0x1f, 0xfc, 0xc2, 0x6a, 0xbb, 0xfa, 0xa9, + 0x32, 0x87, 0x64, 0x21, 0x0, 0xe2, 0x57, 0xbc, + 0xb7, 0x31, 0x0, 0xff, 0xe4, 0xf, 0x22, 0x7e, + 0x55, 0x33, 0x1e, 0x26, 0xf7, 0xb6, 0xe1, 0x4, + 0x3, 0xa, 0x46, 0xd3, 0x8, 0x7, 0xff, 0x68, + 0x91, 0xef, 0xed, 0x48, 0x3, 0xa, 0x4d, 0x30, + 0x80, 0x7f, 0xf7, 0x5, 0x2b, 0x98, 0x80, 0x39, + 0x2e, 0x4c, 0x3, 0xff, 0xbc, 0x71, 0x66, 0x1, + 0xc4, 0xd4, 0x80, 0x1f, 0xfd, 0xe1, 0x7b, 0x30, + 0xe, 0x14, 0xc2, 0x0, 0xff, 0xef, 0x9, 0xb0, + 0x7, 0x88, 0xd0, 0x3, 0xff, 0xbe, 0xda, 0x40, + 0x1e, 0x71, 0x20, 0xf, 0xfe, 0xf1, 0x11, 0x80, + 0x3c, 0x5e, 0x20, 0x1f, 0xfd, 0xf3, 0x0, 0xf8, + 0xc0, 0x3f, 0xfc, 0x7, 0xcc, 0x1, 0xe1, 0xf2, + 0x0, 0xff, 0xef, 0x31, 0x10, 0x3, 0xce, 0x42, + 0x1, 0xff, 0xdd, 0x22, 0x30, 0x7, 0x8f, 0x1c, + 0x3, 0xff, 0xba, 0x97, 0x26, 0x1, 0xc2, 0x88, + 0x20, 0xf, 0xfe, 0xd9, 0x3c, 0x30, 0x80, 0x71, + 0x35, 0x18, 0x7, 0xff, 0x68, 0x9a, 0x64, 0x60, + 0x1e, 0x58, 0x92, 0x0, 0xff, 0xeb, 0x9, 0xac, + 0xe6, 0x25, 0x4, 0x3, 0xa, 0xd5, 0xa8, 0x80, + 0x7f, 0xf1, 0x7, 0x5d, 0x57, 0xf3, 0x31, 0xe2, + 0x6b, 0x37, 0xb2, 0x98, 0xc4, 0x3, 0xa, 0x46, + 0xd2, 0x88, 0x7, 0xff, 0x18, 0x96, 0x6a, 0xbf, + 0x4c, 0xa1, 0xd9, 0x4c, 0x80, 0x3c, 0x4b, 0x17, + 0xf6, 0xe6, 0x1, 0xff, 0xd5, 0x11, 0x88, 0x86, + 0xad, 0x13, 0x7b, 0xdb, 0x4e, 0x82, 0x1, 0xff, + 0xc2, + + /* U+0045 "E" */ + 0x0, 0x2d, 0x7f, 0xff, 0xf6, 0x29, 0x40, 0x3f, + 0xfd, 0xc4, 0xb1, 0x55, 0xff, 0xcf, 0xe7, 0x0, + 0xff, 0xe0, 0x8e, 0xb2, 0xaf, 0xff, 0x3d, 0x8, + 0x3, 0xff, 0xfe, 0x1, 0xff, 0xff, 0x0, 0xff, + 0xff, 0x80, 0x7f, 0xf0, 0x4e, 0x3b, 0xff, 0xff, + 0x95, 0x8e, 0x20, 0x1f, 0xff, 0x21, 0x58, 0x99, + 0xff, 0xe5, 0xa8, 0x80, 0x7f, 0xf1, 0x4b, 0x59, + 0xbf, 0xf9, 0x6a, 0x40, 0x1f, 0xff, 0xf0, 0xf, + 0xff, 0xf8, 0x7, 0xff, 0xfc, 0x3, 0xff, 0xe6, + 0x5a, 0xcd, 0xff, 0xd1, 0x42, 0x0, 0xff, 0xe0, + 0xa, 0xc4, 0xcf, 0xff, 0x43, 0x9c, 0x3, 0xff, + 0xc6, + + /* U+0046 "F" */ + 0x0, 0x2d, 0x7f, 0xff, 0xf6, 0x29, 0x40, 0x3f, + 0xfd, 0xc4, 0xb1, 0x55, 0xff, 0xcf, 0xe7, 0x0, + 0xff, 0xe0, 0x8e, 0xb2, 0xaf, 0xff, 0x3d, 0x8, + 0x3, 0xff, 0xfe, 0x1, 0xff, 0xff, 0x0, 0xff, + 0xff, 0x80, 0x7f, 0xf0, 0x47, 0x59, 0x57, 0xff, + 0x96, 0x62, 0x1, 0xff, 0xc5, 0x25, 0x8a, 0xaf, + 0xfe, 0x54, 0x59, 0x80, 0x7f, 0xfc, 0x8e, 0x3b, + 0xff, 0xff, 0x95, 0xb0, 0x40, 0x1f, 0xff, 0xf0, + 0xf, 0xff, 0xf8, 0x7, 0xff, 0xfc, 0x3, 0xff, + 0xfe, 0x1, 0xff, 0xff, 0x0, 0xff, 0xec, 0x80, + + /* U+0047 "G" */ + 0x0, 0xff, 0xe3, 0x89, 0xab, 0xc5, 0x5e, 0x6e, + 0xbb, 0x9f, 0xf7, 0x73, 0x72, 0xea, 0x19, 0x8, + 0x40, 0x3f, 0xf9, 0x64, 0xb1, 0x7d, 0xcc, 0xa8, + 0x75, 0x43, 0x22, 0x8, 0x80, 0x21, 0x11, 0x1a, + 0x2b, 0xcd, 0xef, 0xe4, 0xb1, 0x0, 0x7f, 0xf0, + 0xc5, 0x23, 0x36, 0x9d, 0x4, 0x3, 0xc2, 0x68, + 0xac, 0xef, 0xcc, 0xc5, 0x32, 0x0, 0xc2, 0x6d, + 0x3b, 0x8e, 0x60, 0x1f, 0xe3, 0x8d, 0xb7, 0x30, + 0xe, 0x24, 0x8b, 0xdf, 0xec, 0xba, 0x98, 0x8e, + 0x99, 0x56, 0x6f, 0xed, 0x39, 0x88, 0xa, 0x5a, + 0x98, 0x7, 0xe3, 0x8e, 0x73, 0x0, 0xe3, 0x7c, + 0xc5, 0xba, 0x10, 0x7, 0xff, 0x14, 0x96, 0x33, + 0xf7, 0xed, 0xc8, 0x3, 0xe1, 0x68, 0x72, 0x0, + 0xe2, 0x8e, 0x83, 0x10, 0xf, 0xfe, 0x68, 0x90, + 0x80, 0x7f, 0x14, 0xda, 0x0, 0x70, 0xb4, 0xb9, + 0x0, 0x7f, 0xf6, 0xc5, 0x50, 0x80, 0x38, 0xe6, + 0x10, 0x3, 0xff, 0xba, 0x98, 0x60, 0x1c, 0x48, + 0xa2, 0x1, 0xff, 0xdd, 0x22, 0x30, 0x7, 0x9b, + 0x48, 0x3, 0xff, 0xbc, 0x3e, 0x60, 0x1e, 0x21, + 0x0, 0xff, 0xe2, 0x8b, 0x5f, 0xff, 0xff, 0x1f, + 0x1c, 0x40, 0x3f, 0xc6, 0x20, 0x1f, 0xfd, 0xf1, + 0xf3, 0x0, 0xf3, 0x11, 0x0, 0x3f, 0xf8, 0x82, + 0x9f, 0x55, 0xff, 0x4a, 0x90, 0x7, 0xf1, 0x8b, + 0x0, 0x78, 0xb9, 0x80, 0x3f, 0xf8, 0xa4, 0x8a, + 0xbf, 0xf3, 0xe0, 0x80, 0x7f, 0xa, 0x61, 0x0, + 0x70, 0xa9, 0x88, 0x7, 0xff, 0x78, 0x91, 0x44, + 0x3, 0x8e, 0x61, 0x0, 0x3f, 0xfb, 0xc7, 0x52, + 0x40, 0x1c, 0x2d, 0xc, 0x40, 0x1f, 0xfd, 0xd2, + 0x78, 0x51, 0x0, 0xe3, 0x89, 0x73, 0x0, 0xff, + 0xee, 0xad, 0xd3, 0x10, 0x6, 0x14, 0x8c, 0xd9, + 0x63, 0x10, 0xf, 0xfe, 0x20, 0x92, 0xc5, 0x10, + 0x7, 0xff, 0xc, 0x52, 0x7e, 0x54, 0x80, 0x38, + 0x9a, 0x73, 0xb9, 0xb7, 0x53, 0x28, 0x83, 0xc4, + 0x26, 0xaf, 0x37, 0xf6, 0x98, 0xc4, 0x3, 0x12, + 0x98, 0x80, 0x7f, 0x89, 0xab, 0x31, 0xa, 0x42, + 0x1, 0xc2, 0x48, 0xac, 0xc7, 0x74, 0x3b, 0x99, + 0x50, 0xc8, 0x40, 0x30, 0x9a, 0xce, 0x62, 0x50, + 0x3, 0xff, 0x84, 0x26, 0xf5, 0xbf, 0xb7, 0x2e, + 0xc8, 0x64, 0x41, 0x10, 0x6, 0x11, 0x11, 0xd, + 0x1a, 0x26, 0xf7, 0xb2, 0x98, 0xc4, 0x2, + + /* U+0048 "H" */ + 0x0, 0x2d, 0x7f, 0xfb, 0x1c, 0x40, 0x3f, 0xfa, + 0x9, 0x3f, 0xfe, 0xc7, 0x20, 0xf, 0xff, 0xf8, + 0x7, 0xff, 0xfc, 0x3, 0xff, 0xfe, 0x1, 0xff, + 0xff, 0x0, 0xff, 0xff, 0x80, 0x7f, 0xfe, 0x4e, + 0x3b, 0xff, 0xff, 0xa1, 0x6c, 0x1, 0xff, 0xff, + 0x14, 0x79, 0x9f, 0xfe, 0x83, 0x18, 0x7, 0xff, + 0x24, 0xb2, 0x59, 0xbf, 0xfa, 0x1a, 0xa0, 0x1f, + 0xff, 0xf0, 0xf, 0xff, 0xf8, 0x7, 0xff, 0xfc, + 0x3, 0xff, 0xfe, 0x1, 0xff, 0xff, 0x0, 0xff, + 0xff, 0x80, 0x7f, 0xf8, 0xc0, + + /* U+0049 "I" */ + 0x0, 0x2d, 0x7f, 0xfb, 0x1c, 0x40, 0x3f, 0xff, + 0xe0, 0x1f, 0xff, 0xf0, 0xf, 0xff, 0xf8, 0x7, + 0xff, 0xfc, 0x3, 0xff, 0x8a, + + /* U+004A "J" */ + 0x0, 0xff, 0xe9, 0x24, 0xff, 0xfb, 0x1c, 0x80, + 0x3f, 0xff, 0xe0, 0x1f, 0xff, 0xf0, 0xf, 0xff, + 0xf8, 0x7, 0xff, 0xfc, 0x3, 0xff, 0xfe, 0x1, + 0xff, 0xff, 0x0, 0xff, 0xff, 0x80, 0x7f, 0xfa, + 0x4c, 0x3, 0xff, 0xb8, 0x20, 0x1f, 0x84, 0xc0, + 0x3f, 0xfa, 0x42, 0x4c, 0x1, 0xe6, 0x21, 0x0, + 0xf0, 0xa4, 0x54, 0x20, 0x80, 0x7f, 0xf1, 0x5, + 0xf0, 0xc0, 0x38, 0x88, 0xc0, 0x18, 0x56, 0xbe, + 0xdd, 0x5e, 0xb5, 0xcc, 0x40, 0x3f, 0xe1, 0x5b, + 0xb2, 0x0, 0x71, 0x55, 0x8, 0x3, 0xa, 0xcb, + 0x10, 0x4, 0x27, 0x19, 0xfb, 0x73, 0x11, 0xa6, + 0xaf, 0x7e, 0x94, 0x80, 0x39, 0x61, 0x88, 0x3, + 0xe3, 0x8c, 0xb6, 0x30, 0xc, 0x24, 0x8c, 0xef, + 0x99, 0x50, 0x84, 0x3, 0xa, 0x46, 0x5a, 0x88, + 0x7, 0xf8, 0x52, 0x73, 0xb2, 0x5d, 0x50, 0x88, + 0x22, 0x0, 0xc2, 0x46, 0x8d, 0x19, 0xf6, 0xe6, + 0x20, 0x1e, + + /* U+004B "K" */ + 0x0, 0x2d, 0x7f, 0xfb, 0x1c, 0x40, 0x3f, 0xf9, + 0x62, 0xb5, 0xdf, 0xfe, 0xc7, 0x20, 0xf, 0xfe, + 0xd9, 0xc6, 0xd2, 0x88, 0x4, 0x4b, 0x7a, 0xe4, + 0x1, 0xff, 0xd8, 0x15, 0xad, 0x73, 0x0, 0xc7, + 0x1f, 0x48, 0x20, 0x1f, 0xfd, 0x83, 0x8d, 0xa5, + 0x10, 0x8, 0x56, 0xb5, 0xc8, 0x3, 0xff, 0xb0, + 0x2b, 0x5a, 0xe6, 0x1, 0x8e, 0x36, 0x94, 0x40, + 0x3f, 0xfb, 0x7, 0x1b, 0x4a, 0x20, 0x10, 0xad, + 0x6b, 0x98, 0x7, 0xff, 0x60, 0x56, 0xb5, 0xcc, + 0x3, 0x1b, 0xed, 0x28, 0x80, 0x7f, 0xf6, 0xe, + 0x36, 0x94, 0x40, 0x21, 0x4a, 0xd8, 0x30, 0xf, + 0xfe, 0xc0, 0xad, 0x6b, 0x98, 0x7, 0x1c, 0xc9, + 0x44, 0x3, 0xff, 0xb0, 0x71, 0xb4, 0xa2, 0x1, + 0xf1, 0xcc, 0x20, 0x7, 0xff, 0x5b, 0x9a, 0xb5, + 0xcc, 0x3, 0x11, 0x40, 0x18, 0x56, 0x60, 0xc0, + 0x3f, 0xfa, 0x66, 0xd0, 0xa2, 0x1, 0xa, 0x4f, + 0xef, 0x39, 0x0, 0x62, 0x7f, 0x72, 0x0, 0xff, + 0xeb, 0x93, 0x55, 0x18, 0x80, 0xe6, 0x4a, 0x20, + 0x18, 0xe2, 0x58, 0x40, 0x3f, 0xfa, 0x42, 0x93, + 0xf2, 0x82, 0x1, 0x85, 0x2e, 0x10, 0x3, 0x92, + 0x2d, 0x0, 0x3f, 0xf9, 0xe4, 0xd5, 0x46, 0x20, + 0xf, 0xe1, 0x69, 0x82, 0x0, 0xc2, 0xb3, 0x6, + 0x1, 0xff, 0xcc, 0x3a, 0xb4, 0x10, 0xf, 0xfe, + 0x9, 0x3c, 0xb0, 0x80, 0x62, 0x7f, 0x72, 0x0, + 0xff, 0xe6, 0x18, 0x7, 0xff, 0x15, 0x22, 0xd0, + 0x40, 0x31, 0xc4, 0xb0, 0x80, 0x7f, 0xf7, 0x45, + 0x66, 0x46, 0x1, 0xc9, 0x16, 0x80, 0x1f, 0xfd, + 0xe2, 0x7f, 0x72, 0x0, 0xc2, 0xb3, 0x6, 0x1, + 0xff, 0xde, 0x38, 0x96, 0x10, 0xc, 0x4f, 0xee, + 0x40, 0x1f, 0xfd, 0xe4, 0x88, 0x20, 0x7, 0x1c, + 0x4b, 0x8, 0x7, 0xff, 0x74, 0x5a, 0x60, 0xc0, + 0x39, 0x22, 0xd0, 0x0, + + /* U+004C "L" */ + 0x0, 0x2d, 0x7f, 0xfb, 0x1c, 0x40, 0x3f, 0xff, + 0xe0, 0x1f, 0xff, 0xf0, 0xf, 0xff, 0xf8, 0x7, + 0xff, 0xfc, 0x3, 0xff, 0xfe, 0x1, 0xff, 0xff, + 0x0, 0xff, 0xff, 0x80, 0x7f, 0xff, 0xc0, 0x3f, + 0xff, 0xe0, 0x1f, 0xff, 0xf0, 0xf, 0xff, 0x9, + 0x6b, 0x37, 0xff, 0x3d, 0x8, 0x3, 0xfe, 0x15, + 0x89, 0x9f, 0xfe, 0x77, 0xa0, 0x7, 0xff, 0x7c, + + /* U+004D "M" */ + 0x0, 0x2d, 0x7f, 0xfe, 0xd8, 0x30, 0xf, 0xfe, + 0x99, 0x46, 0xff, 0xfe, 0xa5, 0x0, 0xff, 0xe0, + 0x93, 0x51, 0x80, 0x7f, 0xf4, 0x4e, 0x94, 0x80, + 0x3f, 0xf9, 0x82, 0xf4, 0x80, 0x1f, 0xfc, 0xf3, + 0xa6, 0x20, 0xf, 0xfe, 0x40, 0x91, 0x4, 0x0, + 0x2f, 0xa8, 0x1, 0xff, 0xcd, 0x4a, 0x71, 0x0, + 0x9, 0x10, 0x3, 0xff, 0x8a, 0x8a, 0xe2, 0x0, + 0x16, 0xe4, 0x0, 0xff, 0xe5, 0xa6, 0xb8, 0x80, + 0x5, 0xd5, 0xc0, 0x3f, 0xf8, 0x82, 0x7b, 0xa7, + 0x10, 0x9, 0x79, 0x40, 0x3f, 0xf9, 0x29, 0xce, + 0x20, 0x1, 0x6d, 0xe1, 0x0, 0xff, 0xe2, 0x89, + 0xae, 0xb8, 0x80, 0x4b, 0xca, 0x1, 0xff, 0xc7, + 0x5e, 0x51, 0x0, 0xb, 0x5b, 0xb, 0x80, 0x7f, + 0xf1, 0x5c, 0x0, 0x94, 0xe2, 0x1, 0x27, 0x30, + 0x80, 0x7f, 0xf1, 0x17, 0xd4, 0x2, 0x26, 0xb3, + 0x0, 0x8, 0x7, 0xff, 0x18, 0x4c, 0xe, 0x9c, + 0x40, 0x24, 0xd7, 0x10, 0xf, 0xfe, 0x8, 0xaf, + 0x28, 0x4, 0x4b, 0x66, 0x3, 0xe0, 0x1f, 0xfc, + 0x61, 0xf0, 0x8, 0xe9, 0x88, 0x2, 0x4a, 0x61, + 0x0, 0xff, 0x85, 0xf9, 0x0, 0x22, 0xaa, 0x18, + 0x4, 0x26, 0x1, 0xff, 0xcb, 0x3a, 0xa1, 0x0, + 0x47, 0x6c, 0x40, 0x1f, 0xc2, 0xf4, 0x80, 0x11, + 0xd2, 0x90, 0x7, 0xff, 0x48, 0x96, 0x8c, 0x2, + 0x3a, 0xa1, 0x0, 0x7c, 0x2d, 0x46, 0x1, 0x1d, + 0x31, 0x0, 0x7f, 0xf5, 0x9, 0xa8, 0xc0, 0x22, + 0x5a, 0x20, 0xe, 0x16, 0xb3, 0x0, 0x92, 0x9c, + 0x40, 0x3f, 0xfa, 0xc2, 0xf4, 0x80, 0x11, 0x2d, + 0x10, 0x4, 0x2d, 0x66, 0x1, 0x27, 0x38, 0x80, + 0x7f, 0xf6, 0x5, 0xf5, 0x0, 0x22, 0x5a, 0x30, + 0x17, 0xb3, 0x0, 0x97, 0x94, 0x40, 0x3f, 0xfb, + 0x42, 0xdc, 0xa0, 0x11, 0x2d, 0xa3, 0xd1, 0x80, + 0x5, 0x79, 0x40, 0x3f, 0xfb, 0xcb, 0xca, 0x1, + 0x13, 0x54, 0x18, 0x0, 0x5f, 0x90, 0x3, 0xff, + 0xc0, 0x9c, 0xc2, 0x0, 0x11, 0x80, 0x2, 0xf4, + 0x80, 0x1f, 0xfe, 0x24, 0xa7, 0x10, 0xe, 0x26, + 0xa3, 0x0, 0xff, 0xf2, 0x1d, 0x4a, 0x19, 0xcb, + 0x74, 0x60, 0x1f, 0xfe, 0x63, 0x7b, 0xcc, 0xa9, + 0x88, 0x3, 0xff, 0xfe, 0x1, 0xfe, + + /* U+004E "N" */ + 0x0, 0x2d, 0x7f, 0xfd, 0xae, 0x40, 0x1f, 0xfc, + 0xf4, 0xaf, 0xff, 0x52, 0x80, 0x7f, 0xc5, 0x12, + 0xc2, 0x1, 0xff, 0xe4, 0x48, 0xb5, 0x10, 0xf, + 0xfe, 0xf0, 0x8c, 0x0, 0x15, 0x88, 0x18, 0x7, + 0xff, 0x75, 0x26, 0x46, 0x1, 0x13, 0x7b, 0x90, + 0x7, 0xff, 0x6c, 0x44, 0xde, 0xc4, 0x1, 0x1c, + 0x4b, 0x8, 0x7, 0xff, 0x65, 0xc4, 0xe, 0x20, + 0x80, 0x19, 0x22, 0xd0, 0x3, 0xff, 0xb0, 0x20, + 0x60, 0x2b, 0xe, 0x40, 0x10, 0xac, 0xc1, 0x80, + 0x7f, 0xf5, 0xfc, 0x40, 0x23, 0x89, 0x51, 0x0, + 0x89, 0xfd, 0xc8, 0x3, 0xff, 0xa8, 0x62, 0xe0, + 0x1c, 0x97, 0x8, 0x1, 0x8e, 0x25, 0x44, 0x3, + 0xff, 0xa4, 0x26, 0x1, 0xf0, 0xb4, 0xc1, 0x0, + 0x64, 0xb8, 0x40, 0xf, 0xfe, 0xe1, 0x3f, 0x30, + 0x80, 0x42, 0xd3, 0x6, 0x1, 0xff, 0xdc, 0x38, + 0xb5, 0x10, 0x8, 0x9f, 0xd8, 0x80, 0x3e, 0x31, + 0x0, 0xff, 0xe9, 0xa, 0xc4, 0xc, 0x3, 0x1c, + 0x4a, 0x88, 0x6, 0x71, 0x0, 0xff, 0xea, 0x93, + 0x7b, 0x90, 0x4, 0x29, 0x72, 0x60, 0x10, 0xf9, + 0x80, 0x7f, 0xf5, 0x8e, 0x25, 0x84, 0x2, 0x17, + 0x86, 0x10, 0x30, 0x10, 0xf, 0xfe, 0xc2, 0x45, + 0xa0, 0x6, 0x48, 0x82, 0x0, 0xb8, 0x7, 0xff, + 0x64, 0x56, 0x60, 0xc0, 0x21, 0x68, 0x61, 0x10, + 0x7, 0xff, 0x6c, 0x9f, 0xdc, 0x80, 0x23, 0x99, + 0x20, 0x7, 0xff, 0x74, 0xe2, 0x54, 0x40, 0x2, + 0x30, 0x7, 0xff, 0x7d, 0x2e, 0x10, 0x3, 0xff, + 0xc8, 0x2d, 0x30, 0x60, 0x1f, 0xc0, + + /* U+004F "O" */ + 0x0, 0xff, 0xe3, 0x12, 0x34, 0x4d, 0xe6, 0xeb, + 0xb9, 0xff, 0x77, 0x37, 0x59, 0x52, 0xec, 0x82, + 0x1, 0xff, 0xd2, 0x25, 0x9c, 0xed, 0xb9, 0x76, + 0x43, 0x22, 0x8, 0x80, 0x21, 0x11, 0x10, 0xd5, + 0xa2, 0x6f, 0xb9, 0x70, 0x84, 0x1, 0xff, 0xc9, + 0x13, 0x8c, 0xda, 0x63, 0x10, 0xe, 0x12, 0x45, + 0x67, 0x7e, 0x65, 0x42, 0x0, 0xf0, 0xa3, 0xde, + 0x5b, 0x18, 0x7, 0xff, 0x10, 0x5a, 0xb5, 0xcc, + 0x3, 0x89, 0x63, 0x3b, 0x9b, 0x75, 0x31, 0x1d, + 0x35, 0x7b, 0xfb, 0x6e, 0x82, 0x1, 0x85, 0x27, + 0x69, 0x4, 0x3, 0xfe, 0x16, 0xa9, 0x41, 0x0, + 0xc4, 0xb7, 0x94, 0xe6, 0x20, 0x1f, 0xfc, 0x32, + 0x48, 0xbc, 0x94, 0x10, 0xc, 0x2b, 0x56, 0x80, + 0x1f, 0xc7, 0x36, 0x80, 0x1e, 0x58, 0xa4, 0x10, + 0xf, 0xfe, 0x59, 0x35, 0x41, 0x80, 0x70, 0xac, + 0x39, 0x0, 0x79, 0x29, 0x88, 0x3, 0x89, 0xe1, + 0x40, 0x3f, 0xfa, 0x2, 0xd0, 0xc2, 0x1, 0xc7, + 0x54, 0x20, 0xc, 0x58, 0x82, 0x1, 0xc9, 0x72, + 0x40, 0x1f, 0xfd, 0x34, 0xb9, 0x20, 0xe, 0x24, + 0x40, 0x80, 0x5, 0xc, 0x80, 0x38, 0x49, 0x44, + 0x3, 0xff, 0xaa, 0x44, 0x70, 0xf, 0x1e, 0x28, + 0x0, 0xc5, 0x80, 0x3c, 0x5c, 0x40, 0x1f, 0xfd, + 0x76, 0x22, 0x0, 0x78, 0x48, 0x40, 0x7c, 0xc0, + 0x3c, 0xc4, 0x20, 0x1f, 0xfd, 0x73, 0xe6, 0x0, + 0xf3, 0x89, 0x80, 0x7f, 0xf9, 0x4, 0x3, 0xff, + 0x80, 0x3e, 0x60, 0x1e, 0x62, 0x10, 0xf, 0xfe, + 0xb9, 0x73, 0x0, 0x79, 0xc4, 0xc0, 0x85, 0x80, + 0x3c, 0x5c, 0xa0, 0x1f, 0xfd, 0x76, 0x22, 0x0, + 0x78, 0x88, 0x20, 0x4, 0xc2, 0x0, 0xe1, 0x52, + 0x10, 0xf, 0xfe, 0xa9, 0x6b, 0x80, 0x79, 0x3d, + 0x40, 0x22, 0x44, 0x8, 0x7, 0x1d, 0xc9, 0x80, + 0x7f, 0xf4, 0xd2, 0xd8, 0x80, 0x38, 0xb1, 0x4, + 0x3, 0x1d, 0xc9, 0x0, 0x71, 0x3c, 0x28, 0x80, + 0x7f, 0xf3, 0xc9, 0xe1, 0x84, 0x3, 0x92, 0xd8, + 0x80, 0x3c, 0x4d, 0xa, 0x20, 0x1c, 0x97, 0x65, + 0x10, 0xf, 0xfe, 0x59, 0x34, 0xc8, 0xc0, 0x38, + 0x5b, 0xd8, 0x40, 0x3f, 0xa, 0xdd, 0x94, 0x40, + 0x30, 0xad, 0x65, 0xba, 0x8, 0x7, 0xff, 0xc, + 0x96, 0x33, 0x12, 0x82, 0x1, 0x85, 0xaa, 0x50, + 0x3, 0xff, 0x80, 0x2b, 0x5b, 0x6, 0x20, 0x18, + 0x92, 0x2f, 0xb9, 0x97, 0x32, 0x88, 0x3c, 0x42, + 0x6a, 0xf7, 0xb6, 0x9c, 0xc4, 0x3, 0xa, 0xce, + 0x4a, 0x0, 0x7f, 0xf1, 0x4d, 0xf3, 0x14, 0xe8, + 0x20, 0x1c, 0x26, 0x8c, 0xc7, 0x74, 0x3b, 0x99, + 0x50, 0x84, 0x3, 0x89, 0x1e, 0xfe, 0x98, 0x80, + 0x3f, 0xf9, 0x44, 0xb1, 0x7d, 0xb7, 0x30, 0xc8, + 0x64, 0x41, 0x0, 0xc2, 0x22, 0x21, 0xab, 0x45, + 0x67, 0x6d, 0xc2, 0x8, 0x7, 0xff, 0x0, + + /* U+0050 "P" */ + 0x0, 0x2d, 0x7f, 0xff, 0xf2, 0x3b, 0x9b, 0x98, + 0xbb, 0x54, 0xba, 0x90, 0x80, 0x7f, 0xf5, 0xc4, + 0x44, 0x66, 0x44, 0x2b, 0x45, 0x6f, 0x73, 0x25, + 0x48, 0x3, 0xff, 0x88, 0x4d, 0x57, 0x7f, 0xd5, + 0x49, 0x9a, 0x1d, 0x90, 0x80, 0x38, 0x4d, 0xab, + 0x29, 0x44, 0x3, 0xff, 0x82, 0x3c, 0x89, 0xfe, + 0x55, 0x33, 0x4f, 0x13, 0x7b, 0xfb, 0x28, 0x20, + 0x18, 0x56, 0xe1, 0x0, 0x3f, 0xfa, 0xe4, 0xd7, + 0x65, 0x10, 0xc, 0x2d, 0xa8, 0x1, 0xff, 0xd9, + 0x4c, 0x50, 0xf, 0x29, 0x8, 0x7, 0xff, 0x60, + 0x48, 0x80, 0x1e, 0x11, 0x18, 0x7, 0xff, 0x60, + 0x4d, 0x40, 0x3c, 0xc2, 0x60, 0x1f, 0xfd, 0x72, + 0x6b, 0x30, 0xe, 0x23, 0x41, 0x0, 0xff, 0xea, + 0xa, 0x47, 0x41, 0x80, 0x71, 0xd5, 0x8, 0x3, + 0xfe, 0x1e, 0x44, 0xff, 0x2a, 0x99, 0x8e, 0xe8, + 0xac, 0xee, 0x5b, 0x98, 0x7, 0x1c, 0x73, 0x90, + 0x7, 0xff, 0x0, 0x9a, 0xae, 0xff, 0xaa, 0x93, + 0x28, 0x83, 0xa9, 0x88, 0x6, 0x14, 0x69, 0xcc, + 0x39, 0x0, 0x7f, 0xf4, 0x4, 0x88, 0x68, 0x85, + 0x67, 0x9c, 0xee, 0x5c, 0xb1, 0x80, 0x7f, 0xf1, + 0x4e, 0x3b, 0xff, 0xfe, 0xed, 0xd6, 0x5d, 0xaa, + 0x61, 0x8c, 0x40, 0x3f, 0xff, 0xe0, 0x1f, 0xff, + 0xf0, 0xf, 0xff, 0xf8, 0x7, 0xff, 0xfc, 0x3, + 0xff, 0xfe, 0x1, 0xff, 0xc9, + + /* U+0051 "Q" */ + 0x0, 0xff, 0xe3, 0x11, 0xab, 0xcd, 0xe6, 0xeb, + 0xb9, 0xff, 0x77, 0x37, 0x59, 0x50, 0xea, 0x62, + 0x1, 0xff, 0xd5, 0x14, 0x8b, 0xdd, 0x65, 0x43, + 0x21, 0x91, 0x4, 0x40, 0x10, 0x88, 0x88, 0x6a, + 0xf1, 0x59, 0xdb, 0x4e, 0x62, 0x1, 0xff, 0xcd, + 0x26, 0xbf, 0xb7, 0x42, 0x0, 0xe1, 0x24, 0x56, + 0x77, 0xcc, 0xc5, 0x32, 0x0, 0xf1, 0x2c, 0x66, + 0x25, 0x44, 0x3, 0xff, 0x90, 0x93, 0xf2, 0x82, + 0x1, 0x85, 0x1e, 0xf7, 0xb6, 0xea, 0x62, 0x34, + 0xca, 0xb3, 0x7f, 0x69, 0x8c, 0x3, 0x89, 0xab, + 0x20, 0xc0, 0x3f, 0xf8, 0x89, 0x32, 0x62, 0x0, + 0xc2, 0x93, 0x97, 0x8, 0x40, 0x1f, 0xfc, 0x32, + 0x59, 0xcc, 0x41, 0x80, 0x71, 0x3f, 0x41, 0x0, + 0x7f, 0xf0, 0x5, 0xbd, 0x88, 0x3, 0xa, 0x5d, + 0x31, 0x0, 0x7f, 0xf2, 0xcd, 0xfa, 0xc, 0x3, + 0x89, 0xe1, 0x40, 0x3f, 0xc4, 0xd4, 0x80, 0x1c, + 0x4d, 0x2a, 0x20, 0x1f, 0xfc, 0xf2, 0x78, 0x61, + 0x0, 0xe5, 0xe6, 0x10, 0xf, 0x85, 0x2c, 0xc0, + 0x38, 0xaa, 0x84, 0x1, 0xff, 0xd3, 0x4a, 0x71, + 0x0, 0xe4, 0xc4, 0x0, 0xf9, 0x70, 0xc0, 0x3c, + 0xe6, 0x40, 0x1f, 0xfd, 0x53, 0xf5, 0x0, 0xf2, + 0x69, 0x80, 0x71, 0x1b, 0x0, 0x78, 0x88, 0xc0, + 0x1f, 0xfd, 0x72, 0x20, 0x80, 0x70, 0x9b, 0x0, + 0x70, 0xf8, 0x80, 0x79, 0xb8, 0x80, 0x3f, 0xfa, + 0xed, 0xc4, 0x1, 0xe7, 0x21, 0x0, 0xe1, 0x30, + 0xf, 0x11, 0x0, 0x3f, 0xfb, 0x4, 0x47, 0x0, + 0xf0, 0x81, 0x80, 0x70, 0x80, 0x7c, 0x44, 0x0, + 0xff, 0xec, 0x9, 0x38, 0x7, 0x84, 0xc, 0x3, + 0xf, 0x98, 0x7, 0x9b, 0x88, 0x3, 0xff, 0xae, + 0x5c, 0x40, 0x1e, 0x71, 0x10, 0x6, 0x22, 0x38, + 0x7, 0x88, 0x58, 0x3, 0xff, 0xae, 0xc4, 0x20, + 0x1c, 0x26, 0xa0, 0x1e, 0x4d, 0x30, 0xf, 0x29, + 0x88, 0x7, 0xff, 0x54, 0xf5, 0x80, 0x3c, 0xba, + 0x60, 0x1e, 0x15, 0xb2, 0x0, 0xe3, 0xb6, 0x20, + 0xf, 0xfe, 0x99, 0xda, 0x90, 0x7, 0x26, 0xa0, + 0x7, 0xe2, 0x5a, 0x30, 0xe, 0x39, 0xb3, 0x0, + 0xff, 0xe8, 0xa, 0xcb, 0x10, 0x7, 0x27, 0x38, + 0x80, 0x7f, 0x13, 0xc3, 0x8, 0x6, 0x16, 0xe8, + 0x30, 0xf, 0xfe, 0x60, 0xad, 0xd9, 0x44, 0x3, + 0x13, 0xc2, 0x88, 0x7, 0xff, 0x1, 0x22, 0xd4, + 0x40, 0x31, 0x3e, 0xe4, 0x20, 0x80, 0x7f, 0xf1, + 0x49, 0x67, 0x29, 0x44, 0x3, 0x13, 0x4c, 0x18, + 0x7, 0xff, 0xc, 0x56, 0xb6, 0xc, 0x3, 0x9, + 0xbd, 0xfe, 0xd4, 0x32, 0xa1, 0x9e, 0x44, 0x2b, + 0xcd, 0xee, 0xa9, 0x88, 0x3, 0xa, 0x4f, 0xca, + 0x0, 0x7f, 0xf2, 0xd, 0xf3, 0x65, 0x48, 0x3, + 0x9, 0x2b, 0xcd, 0x5e, 0x66, 0xbb, 0x54, 0x32, + 0x10, 0x6, 0x13, 0x6a, 0xcb, 0x62, 0x0, 0xff, + 0xe6, 0x93, 0x56, 0xf6, 0x4b, 0xa9, 0x90, 0x80, + 0x7f, 0xc2, 0x68, 0xd1, 0x5b, 0xd9, 0x2a, 0x40, + 0x1f, 0xfd, 0x41, 0x36, 0x8a, 0xcd, 0xee, 0x5a, + 0x88, 0x7, 0x8e, 0x3a, 0xe5, 0xd4, 0x80, 0x3f, + 0xfc, 0x22, 0x97, 0x8, 0x1, 0xc7, 0x3f, 0x28, + 0x20, 0x1f, 0xfe, 0x51, 0x69, 0xa5, 0x20, 0xc, + 0x4d, 0x7f, 0xb5, 0xc, 0x86, 0x42, 0x20, 0xc, + 0x22, 0x23, 0x20, 0xf, 0xfe, 0xa9, 0x2d, 0x65, + 0x31, 0x0, 0x61, 0x25, 0x79, 0xbc, 0xde, 0xe7, + 0xfe, 0xee, 0x6e, 0x42, 0x80, 0x7f, 0xf5, 0xc5, + 0x67, 0x7b, 0x25, 0xd0, 0x80, 0x3f, 0xf8, 0x8f, + 0xa6, 0x1, 0xff, 0xda, 0x13, 0x68, 0xbd, 0xff, + 0x77, 0x37, 0x2e, 0xd5, 0x4b, 0xbb, 0x37, 0xb6, + 0xc, 0x0, + + /* U+0052 "R" */ + 0x0, 0x2d, 0x7f, 0xff, 0xf2, 0x7b, 0x9b, 0xac, + 0xc5, 0xd4, 0xba, 0x98, 0x80, 0x7f, 0xf6, 0x84, + 0x44, 0x43, 0x32, 0x2b, 0x45, 0x67, 0x73, 0x21, + 0x0, 0x3f, 0xf8, 0xe4, 0xd5, 0x77, 0xfe, 0xaa, + 0xa6, 0x50, 0xea, 0x64, 0x1, 0xc2, 0x6f, 0x56, + 0xc4, 0x1, 0xff, 0xc4, 0x1e, 0x44, 0xff, 0x95, + 0x66, 0x63, 0xc5, 0x66, 0xf5, 0xb9, 0x0, 0x61, + 0x49, 0xe6, 0x10, 0xf, 0xfe, 0xc8, 0xa4, 0x7b, + 0x90, 0x7, 0x1e, 0xb8, 0x80, 0x7f, 0xf6, 0xcb, + 0x10, 0x3, 0xcd, 0xc4, 0x1, 0xff, 0xe5, 0xf1, + 0x0, 0xff, 0xed, 0x96, 0x20, 0x7, 0x9c, 0x88, + 0x1, 0xff, 0xd9, 0x27, 0xe7, 0x20, 0xe, 0x4f, + 0x40, 0xf, 0xfe, 0x80, 0x88, 0x88, 0x68, 0xd3, + 0x7b, 0xa8, 0x30, 0xe, 0x38, 0x95, 0x10, 0xf, + 0xfe, 0x11, 0xc7, 0x7f, 0xff, 0xdd, 0xcd, 0xd6, + 0x5c, 0xb2, 0x10, 0x6, 0x13, 0x7b, 0xd7, 0x20, + 0xf, 0xfe, 0xd0, 0x9a, 0xbc, 0xe7, 0xe4, 0x20, + 0x80, 0x7f, 0xf1, 0x89, 0xaa, 0xef, 0xfa, 0x9c, + 0xc0, 0x3c, 0x4d, 0xf5, 0xc, 0x62, 0x1, 0xff, + 0xca, 0x1e, 0x44, 0xff, 0x2c, 0x41, 0x84, 0x3, + 0x13, 0xfb, 0x90, 0x7, 0xff, 0x6d, 0x22, 0xd0, + 0x3, 0x8e, 0x61, 0x44, 0x3, 0xff, 0xb4, 0x2b, + 0x30, 0x60, 0x18, 0x56, 0x20, 0x60, 0x1f, 0xfd, + 0xb2, 0x78, 0x61, 0x0, 0xc4, 0xde, 0xe4, 0x1, + 0xff, 0xdb, 0x48, 0x82, 0x0, 0x71, 0xc4, 0xa8, + 0x80, 0x7f, 0xf6, 0x85, 0xa5, 0xc8, 0x3, 0x92, + 0xe1, 0x0, 0x3f, 0xfb, 0x65, 0x12, 0xc2, 0x1, + 0x85, 0xa5, 0xc8, 0x3, 0xff, 0xb6, 0x91, 0x4, + 0x0, 0xe2, 0x89, 0x61, 0x0, 0xff, 0xed, 0xb, + 0x43, 0x90, 0x7, 0x24, 0x41, 0x0, 0x0, + + /* U+0053 "S" */ + 0x0, 0xff, 0xe1, 0x12, 0xbc, 0xd5, 0xe6, 0x37, + 0xbf, 0xee, 0xdd, 0x65, 0xcc, 0x32, 0x10, 0x7, + 0xff, 0x20, 0x9a, 0x73, 0xb6, 0xa1, 0x95, 0xc, + 0xc4, 0x20, 0x10, 0x91, 0xd, 0x19, 0xe6, 0xf7, + 0xb2, 0x54, 0x80, 0x3f, 0xf8, 0x2, 0xb5, 0x92, + 0xc6, 0x20, 0x18, 0x49, 0x15, 0x9d, 0xf9, 0x95, + 0x8, 0x40, 0x30, 0x9b, 0x56, 0xe4, 0x18, 0x7, + 0xc2, 0xb5, 0x45, 0x10, 0xc, 0x4d, 0x5b, 0xdb, + 0x75, 0x31, 0x1d, 0x35, 0x7b, 0xdc, 0xc8, 0x52, + 0x0, 0x89, 0x30, 0x80, 0x3c, 0x2f, 0xc8, 0x1, + 0xc4, 0xfd, 0x2a, 0x40, 0x1f, 0xfc, 0x31, 0x37, + 0xad, 0xd6, 0x65, 0x8, 0x20, 0x1e, 0x3e, 0x60, + 0xf, 0x3e, 0x98, 0x7, 0xff, 0x2c, 0x8c, 0xc2, + 0x1, 0xfc, 0x5a, 0xc0, 0x1e, 0x7d, 0x20, 0xf, + 0xfe, 0xcb, 0xe1, 0x80, 0x71, 0x3f, 0x39, 0x80, + 0x7f, 0xf5, 0xc9, 0xfd, 0xc8, 0x3, 0x8e, 0x33, + 0xb2, 0x5d, 0x8, 0x3, 0xff, 0xa6, 0x71, 0xf4, + 0xc4, 0x1, 0xc2, 0x6d, 0x17, 0xbd, 0x95, 0xc, + 0x64, 0x1, 0xff, 0xce, 0x25, 0x9d, 0xd5, 0xc2, + 0x90, 0x80, 0x70, 0x9a, 0xbc, 0xe6, 0xf6, 0xdc, + 0x31, 0x88, 0x7, 0xff, 0x2c, 0x91, 0xeb, 0x7b, + 0x6e, 0x5d, 0x48, 0x40, 0x38, 0x49, 0x1e, 0x73, + 0xb6, 0xdc, 0xc4, 0x3, 0xff, 0x98, 0x48, 0xd1, + 0x5b, 0xdc, 0xc9, 0x75, 0x21, 0x0, 0xe2, 0x48, + 0xcc, 0x4a, 0x8, 0x7, 0xff, 0x40, 0x4d, 0xa2, + 0xb7, 0xf2, 0x58, 0x80, 0x38, 0x9a, 0xa1, 0x0, + 0x3f, 0xfa, 0xa2, 0x6d, 0x39, 0x28, 0x20, 0x18, + 0x5b, 0x94, 0x3, 0xff, 0xb0, 0x2d, 0xc8, 0x1, + 0xe7, 0x22, 0x0, 0x7f, 0xf8, 0xbc, 0x40, 0x23, + 0x7b, 0xdb, 0x63, 0x0, 0xff, 0xe7, 0x27, 0xa0, + 0x7, 0x9b, 0x4c, 0x52, 0xb6, 0x10, 0x92, 0x73, + 0xae, 0x14, 0xc4, 0x3, 0xff, 0x88, 0x26, 0xf7, + 0x4a, 0x20, 0x18, 0x5b, 0xd4, 0x5, 0x22, 0xa, + 0x40, 0x18, 0x51, 0xeb, 0x3b, 0x9b, 0x75, 0x32, + 0x88, 0x3c, 0x42, 0x6a, 0xf3, 0xb9, 0x90, 0x82, + 0x1, 0x8d, 0xf6, 0x50, 0x3, 0x13, 0x56, 0x62, + 0x58, 0xc4, 0x3, 0x84, 0x91, 0x59, 0x8e, 0xe8, + 0x77, 0x32, 0xa1, 0x88, 0x7, 0x12, 0xc5, 0xec, + 0x18, 0x7, 0xf0, 0x9b, 0x4e, 0x77, 0x32, 0xa1, + 0xd5, 0xc, 0x88, 0x20, 0x18, 0x48, 0xd1, 0xa, + 0xcf, 0x39, 0xdb, 0x4e, 0x82, 0x1, 0xe0, + + /* U+0054 "T" */ + 0x0, 0x35, 0xff, 0xff, 0xf8, 0xad, 0x40, 0x3f, + 0xfd, 0xc9, 0xf5, 0x5f, 0xfc, 0x59, 0x52, 0x0, + 0xf1, 0x34, 0xd5, 0x7f, 0xf1, 0x7d, 0xc0, 0x31, + 0x22, 0xaf, 0xff, 0x15, 0xf1, 0x80, 0x3c, 0xd8, + 0xca, 0xbf, 0xfc, 0x54, 0x20, 0xf, 0xff, 0xf8, + 0x7, 0xff, 0xfc, 0x3, 0xff, 0xfe, 0x1, 0xff, + 0xff, 0x0, 0xff, 0xff, 0x80, 0x7f, 0xff, 0xc0, + 0x3f, 0xff, 0xe0, 0x1f, 0xff, 0xf0, 0xf, 0xff, + 0xf8, 0x7, 0xff, 0xfc, 0x3, 0xff, 0xfe, 0x1, + 0xff, 0xff, 0x0, 0xff, 0xff, 0x0, + + /* U+0055 "U" */ + 0x1, 0x6c, 0xff, 0xf5, 0xa8, 0x7, 0xff, 0x45, + 0x27, 0xff, 0xd6, 0xc0, 0x1f, 0xff, 0xf0, 0xf, + 0xff, 0xf8, 0x7, 0xff, 0xfc, 0x3, 0xff, 0xfe, + 0x1, 0xff, 0xff, 0x0, 0xff, 0xff, 0x80, 0x7f, + 0xff, 0xc0, 0x3f, 0xff, 0xe0, 0x1f, 0x8c, 0x3, + 0xff, 0xa4, 0x60, 0x1f, 0xfc, 0x1, 0x37, 0x0, + 0xfc, 0x20, 0x1f, 0xfd, 0x1, 0x0, 0xf8, 0x4c, + 0x3, 0x84, 0x40, 0x1e, 0x61, 0x30, 0xf, 0xfe, + 0x78, 0x98, 0x80, 0x70, 0x98, 0x80, 0x73, 0x11, + 0x0, 0x38, 0xb5, 0xc0, 0x3f, 0xf9, 0xeb, 0xea, + 0x1, 0xc5, 0xcc, 0x1, 0xc5, 0x88, 0x1, 0xe4, + 0xf4, 0x0, 0xff, 0xe6, 0x9e, 0xb8, 0x80, 0x61, + 0x54, 0x20, 0xf, 0x26, 0xa8, 0x80, 0x61, 0x58, + 0x72, 0x0, 0xff, 0xe4, 0x93, 0x43, 0x8, 0x6, + 0x17, 0xd3, 0x0, 0xfc, 0x90, 0xc4, 0x1, 0xc7, + 0x19, 0x6e, 0x62, 0x1, 0xff, 0xc1, 0x13, 0x7a, + 0xf9, 0x40, 0xe, 0x39, 0xb4, 0x0, 0xff, 0x14, + 0x74, 0x18, 0x7, 0xa, 0x46, 0x7e, 0xdd, 0x52, + 0x62, 0x29, 0xab, 0xb6, 0xfe, 0x42, 0x90, 0x7, + 0x1c, 0x73, 0x90, 0x7, 0xff, 0x4, 0xdf, 0x72, + 0x10, 0x40, 0x38, 0x49, 0x15, 0x4c, 0xef, 0x32, + 0xa2, 0x8, 0x40, 0x38, 0x52, 0x33, 0xe, 0x40, + 0x1f, 0xfc, 0x51, 0x37, 0xbe, 0xdb, 0x97, 0x54, + 0x32, 0x11, 0x0, 0x70, 0x88, 0x8d, 0x15, 0xe6, + 0xfb, 0x96, 0xe6, 0x1, 0xff, 0x0, + + /* U+0056 "V" */ + 0x0, 0x13, 0xe7, 0xff, 0xb1, 0x84, 0x3, 0xff, + 0xa6, 0xd7, 0xff, 0xec, 0x61, 0x0, 0x89, 0x6c, + 0x80, 0x38, 0xf5, 0xc4, 0x3, 0xff, 0xa2, 0xb8, + 0x80, 0x1c, 0x76, 0xe2, 0x1, 0x89, 0x54, 0x40, + 0x1c, 0x98, 0x80, 0x1f, 0xfd, 0x4, 0xf5, 0x0, + 0xe3, 0xb5, 0x10, 0xf, 0x15, 0x29, 0x0, 0x72, + 0xfa, 0x80, 0x7f, 0xf3, 0x93, 0x50, 0x3, 0x8e, + 0xd4, 0x80, 0x3f, 0x15, 0xa9, 0x0, 0x72, 0xe2, + 0x0, 0x7f, 0xf3, 0xf, 0x5c, 0x40, 0x31, 0x5a, + 0x90, 0x7, 0xf8, 0xed, 0x44, 0x3, 0x9f, 0x50, + 0x3, 0xff, 0x94, 0x76, 0x82, 0x1, 0x89, 0x54, + 0x40, 0x1f, 0xfc, 0x3, 0xb7, 0x10, 0xc, 0x2f, + 0x86, 0x1, 0xff, 0xc8, 0x24, 0x52, 0x0, 0xc4, + 0xb4, 0x40, 0x1f, 0xfc, 0x23, 0xa7, 0x10, 0xc, + 0x2b, 0x66, 0x1, 0xff, 0xc6, 0x25, 0xb2, 0x0, + 0xc4, 0xb6, 0x40, 0x1f, 0xfc, 0x43, 0xd7, 0x10, + 0xc, 0x4a, 0x84, 0x1, 0xff, 0xc4, 0x14, 0xb3, + 0x0, 0xc2, 0xb6, 0x60, 0x1f, 0xfc, 0x64, 0xd7, + 0x10, 0xc, 0x56, 0xa2, 0x1, 0xff, 0xc2, 0x17, + 0xd3, 0x0, 0xc2, 0xd6, 0x60, 0x1f, 0xfc, 0x84, + 0xd7, 0x10, 0xc, 0x76, 0xe2, 0x1, 0xff, 0xc1, + 0x4d, 0x40, 0xc, 0x2f, 0x66, 0x1, 0xff, 0xca, + 0x4d, 0x40, 0xe, 0x3d, 0x71, 0x0, 0xff, 0x97, + 0xd0, 0x3, 0xb, 0xe9, 0x80, 0x7f, 0xf3, 0x13, + 0x94, 0x3, 0x93, 0x10, 0x3, 0xfc, 0x98, 0xa0, + 0x18, 0x5f, 0x50, 0x3, 0xff, 0x9c, 0x9e, 0xa0, + 0x1c, 0xbe, 0x80, 0x1f, 0x8f, 0x5c, 0x3, 0x93, + 0x50, 0x3, 0xff, 0xa0, 0xbe, 0xa0, 0x1c, 0x9a, + 0x80, 0x1e, 0x3b, 0x41, 0x0, 0xcb, 0xe8, 0x1, + 0xff, 0xd2, 0x5f, 0x40, 0xc, 0x2f, 0xa6, 0x1, + 0x89, 0x14, 0x80, 0x32, 0xfa, 0x80, 0x7f, 0xf5, + 0x17, 0x50, 0x3, 0xa, 0x59, 0x0, 0x9, 0x6c, + 0x80, 0x32, 0xfa, 0x80, 0x7f, 0xf5, 0x9f, 0x50, + 0x3, 0x12, 0xa8, 0x85, 0x30, 0xc0, 0x32, 0x7a, + 0x80, 0x7f, 0xf5, 0xc5, 0xf5, 0x0, 0x31, 0x5d, + 0x36, 0xa0, 0x6, 0x4e, 0x40, 0xf, 0xfe, 0xc8, + 0xbe, 0x98, 0x6, 0x37, 0x84, 0x0, 0xc9, 0xa8, + 0x20, 0x1f, 0xfd, 0xa1, 0x7a, 0x30, 0xf, 0xf2, + 0x6b, 0x88, 0x7, 0xff, 0x70, 0x5e, 0xcc, 0x3, + 0xf1, 0xeb, 0x88, 0x7, 0xff, 0x20, + + /* U+0057 "W" */ + 0x2, 0x7d, 0xff, 0xf5, 0xb0, 0x7, 0xff, 0x28, + 0x9f, 0x7f, 0xfb, 0xa5, 0x0, 0x3f, 0xf9, 0x47, + 0x3d, 0xff, 0xd8, 0xc2, 0x4, 0x68, 0x20, 0x1c, + 0xbe, 0x60, 0x1f, 0xfc, 0x81, 0x4c, 0x20, 0xe, + 0x14, 0xc3, 0x0, 0xff, 0xe4, 0xa, 0xa8, 0x40, + 0x30, 0xa2, 0x88, 0x1, 0x3d, 0x40, 0x38, 0x55, + 0x42, 0x1, 0xff, 0xc7, 0x4c, 0x40, 0xf, 0x89, + 0x10, 0x40, 0x1f, 0xfc, 0x75, 0xf3, 0x0, 0xe4, + 0xd3, 0x0, 0xc8, 0x64, 0x1, 0xc7, 0x8a, 0x1, + 0xff, 0xc6, 0x3c, 0x40, 0xf, 0xe3, 0xc4, 0x10, + 0xf, 0xfe, 0x29, 0x1a, 0x0, 0x71, 0xeb, 0x80, + 0x71, 0x62, 0x0, 0x79, 0xcc, 0x80, 0x3f, 0xf8, + 0x85, 0x68, 0x20, 0x1, 0x67, 0x61, 0x0, 0x93, + 0x10, 0x3, 0xff, 0x8a, 0xfa, 0x40, 0x18, 0x54, + 0xc8, 0x3, 0xcb, 0xe6, 0x1, 0xc5, 0xae, 0x1, + 0xff, 0xc3, 0x14, 0x41, 0x0, 0x4b, 0xf3, 0xea, + 0x1, 0x93, 0xc, 0x3, 0xff, 0x86, 0x7a, 0x80, + 0x1c, 0xbe, 0xa0, 0x1f, 0xa, 0xa1, 0x0, 0x72, + 0x69, 0x80, 0x7f, 0xf0, 0x93, 0xc, 0x2, 0x2c, + 0x41, 0x4c, 0x20, 0x8, 0x51, 0x4, 0x1, 0xff, + 0xc1, 0x15, 0x31, 0x0, 0xc4, 0x68, 0x20, 0x1f, + 0x8f, 0x5c, 0x3, 0x84, 0xd4, 0x40, 0x3f, 0xf8, + 0x9, 0x88, 0x1, 0xa, 0x19, 0x1, 0x1b, 0x80, + 0x62, 0xc4, 0x10, 0xf, 0xfe, 0x2, 0xfa, 0x80, + 0x73, 0xe1, 0x0, 0x7f, 0x93, 0x4c, 0x3, 0x97, + 0xd4, 0x3, 0xfe, 0x2c, 0x41, 0x0, 0x97, 0xd0, + 0x2, 0x5c, 0x40, 0xc, 0x98, 0x80, 0x1f, 0xf0, + 0x9a, 0x88, 0x6, 0x3d, 0x50, 0xf, 0xf8, 0x51, + 0x2, 0x1, 0x85, 0x4c, 0x80, 0x3f, 0x85, 0x50, + 0x80, 0x23, 0xc4, 0x0, 0xc2, 0x98, 0x40, 0x19, + 0x31, 0x0, 0x3f, 0xcb, 0xa6, 0x1, 0x85, 0x10, + 0x20, 0x1f, 0xfc, 0x3, 0xd4, 0x0, 0xe3, 0xd7, + 0x0, 0xfe, 0x4c, 0x30, 0x8, 0x55, 0x8, 0x3, + 0x89, 0x10, 0x20, 0x10, 0xa6, 0x18, 0x7, 0xe2, + 0x37, 0x0, 0xe4, 0xd3, 0x0, 0xff, 0xe1, 0x3e, + 0x98, 0x7, 0x3e, 0x90, 0x7, 0xc9, 0x8a, 0x1, + 0x93, 0xc, 0x3, 0xe3, 0xc4, 0x0, 0xc4, 0x88, + 0x20, 0xf, 0x9f, 0x8, 0x3, 0x16, 0xb8, 0x7, + 0xff, 0xc, 0x8d, 0x44, 0x3, 0x11, 0xb8, 0x7, + 0x8b, 0x10, 0x40, 0x24, 0xc4, 0x0, 0xfe, 0x4c, + 0x40, 0xc, 0x78, 0xe0, 0x1e, 0x3d, 0x50, 0xc, + 0x28, 0x64, 0x1, 0xff, 0xc4, 0x4c, 0x50, 0xe, + 0x5d, 0x30, 0xc, 0x28, 0x64, 0x1, 0x16, 0x20, + 0x80, 0x7f, 0xa, 0x61, 0x0, 0x65, 0xc3, 0x0, + 0xe5, 0x31, 0x0, 0xcb, 0xea, 0x1, 0xff, 0xc6, + 0x7c, 0x20, 0xc, 0x26, 0xa2, 0x1, 0x2e, 0x20, + 0x4, 0x28, 0x64, 0x1, 0xff, 0x12, 0x20, 0x40, + 0x21, 0x54, 0x20, 0x8, 0xfd, 0x40, 0x31, 0x1a, + 0x88, 0x7, 0xff, 0x18, 0x8d, 0x0, 0x39, 0x7c, + 0x80, 0x5, 0x8e, 0x1, 0x93, 0x10, 0x3, 0xff, + 0x82, 0x78, 0x80, 0x18, 0xf5, 0xc0, 0x2, 0xa4, + 0x20, 0x19, 0xf4, 0xc0, 0x3f, 0xf9, 0xb, 0xe8, + 0x1, 0x85, 0x54, 0x22, 0x43, 0x20, 0x8, 0xf1, + 0x0, 0x3f, 0xf8, 0x69, 0x88, 0x1, 0x93, 0xc, + 0xb, 0xd4, 0x3, 0x1e, 0x20, 0x7, 0xff, 0x24, + 0x54, 0xc8, 0x3, 0x1f, 0xaa, 0xb1, 0x0, 0x22, + 0x44, 0x8, 0x7, 0xff, 0xc, 0x53, 0x8, 0x2, + 0x15, 0x43, 0x55, 0x8, 0x4, 0x2a, 0xa1, 0x0, + 0xff, 0xe5, 0x1e, 0x38, 0x7, 0x2f, 0x71, 0xc0, + 0x21, 0x4c, 0x20, 0xf, 0xfe, 0x29, 0x22, 0x4, + 0x2, 0x3d, 0xac, 0x20, 0xc, 0xb8, 0x60, 0x1f, + 0xfc, 0xc5, 0xc3, 0x0, 0xc6, 0xaa, 0x20, 0x9, + 0x31, 0x0, 0x3f, 0xf8, 0xe7, 0x88, 0x1, 0x95, + 0x94, 0x40, 0x22, 0xc7, 0x0, 0xff, 0xe6, 0x8a, + 0xa0, 0x80, 0x7f, 0x1e, 0x20, 0x7, 0xff, 0x25, + 0x31, 0x0, 0x3f, 0xc8, 0x64, 0x1, 0xff, 0xce, + 0x3d, 0x40, 0xf, 0xc4, 0x88, 0x10, 0xf, 0xfe, + 0x48, 0xa6, 0x10, 0x7, 0xe4, 0xf5, 0x0, 0xff, + 0xe0, 0x80, + + /* U+0058 "X" */ + 0x0, 0x13, 0xe7, 0xff, 0xba, 0x4c, 0x3, 0xff, + 0x98, 0x73, 0xdf, 0xfd, 0xd4, 0x82, 0x1, 0xe2, + 0x7f, 0x72, 0x0, 0xc2, 0xde, 0xe4, 0x1, 0xff, + 0xc8, 0x27, 0xf6, 0x10, 0xc, 0x71, 0x4, 0x10, + 0xf, 0xc7, 0x10, 0x51, 0x0, 0xc7, 0x30, 0xa0, + 0x1f, 0xfc, 0x64, 0x89, 0x30, 0xc, 0x4f, 0xec, + 0x40, 0x1f, 0xfc, 0x5, 0xb8, 0x30, 0xc, 0x2b, + 0x10, 0x30, 0xf, 0xfe, 0x11, 0x3c, 0x28, 0x80, + 0x42, 0xb1, 0x26, 0x1, 0xff, 0xc3, 0x16, 0xf7, + 0x20, 0xc, 0x4f, 0xc, 0x20, 0x1f, 0xe1, 0x58, + 0x81, 0x80, 0x63, 0x8b, 0x51, 0x0, 0xff, 0xe3, + 0x1c, 0x4a, 0x88, 0x6, 0x48, 0x82, 0x0, 0x7e, + 0x39, 0x85, 0x0, 0xc4, 0xfe, 0xc2, 0x1, 0xff, + 0xca, 0x4b, 0x84, 0x0, 0xc2, 0xd0, 0xe4, 0x1, + 0x85, 0x61, 0xc8, 0x2, 0x15, 0x88, 0x18, 0x7, + 0xff, 0x34, 0x5a, 0x5c, 0x80, 0x31, 0xcc, 0x28, + 0x81, 0xcc, 0x20, 0x6, 0x38, 0xb5, 0x0, 0xff, + 0xe8, 0x94, 0x4b, 0x8, 0x4, 0x2b, 0x11, 0x9c, + 0x80, 0x22, 0x7f, 0x61, 0x0, 0xff, 0xea, 0x24, + 0x5a, 0x0, 0x62, 0x67, 0x40, 0x8, 0x56, 0x60, + 0xc0, 0x3f, 0xfa, 0xe2, 0xb0, 0xe2, 0x1, 0xf8, + 0xe6, 0x10, 0x3, 0xff, 0xb4, 0x76, 0xa2, 0x1, + 0xf8, 0xb5, 0xc4, 0x3, 0xff, 0xb0, 0x4f, 0xee, + 0x40, 0x11, 0x14, 0x1, 0xa, 0xdc, 0x18, 0x7, + 0xff, 0x54, 0x56, 0x24, 0xc0, 0x22, 0x7e, 0xc8, + 0x51, 0x0, 0x85, 0xbd, 0xc8, 0x3, 0xff, 0xa4, + 0x91, 0x6a, 0x20, 0x12, 0x5c, 0x98, 0xac, 0x49, + 0x80, 0x63, 0x89, 0x61, 0x0, 0xff, 0xe7, 0x13, + 0xc3, 0x8, 0x4, 0x4f, 0xc, 0x20, 0x11, 0x3c, + 0x30, 0x80, 0x64, 0x8b, 0x40, 0xf, 0xfe, 0x58, + 0xb4, 0xc1, 0x80, 0x65, 0x89, 0x30, 0xf, 0x92, + 0x20, 0x80, 0x18, 0x56, 0x60, 0xc0, 0x3f, 0xf9, + 0x9, 0x10, 0x40, 0xc, 0x51, 0x5, 0x10, 0xf, + 0xe1, 0x69, 0x72, 0x0, 0xc4, 0xfe, 0xc4, 0x1, + 0xff, 0xc4, 0x38, 0x96, 0x10, 0x8, 0x5a, 0x5c, + 0x80, 0x3f, 0xf8, 0x25, 0x12, 0xc2, 0x1, 0x8e, + 0x20, 0xa2, 0x1, 0xff, 0xc0, 0x16, 0x87, 0x20, + 0xc, 0x71, 0x4, 0x0, 0xff, 0xe2, 0xa4, 0x41, + 0x0, 0x30, 0xad, 0xc2, 0x0, 0x7f, 0x92, 0xe1, + 0x0, 0x31, 0x3f, 0xb0, 0x80, 0x7f, 0xf1, 0xc5, + 0xa1, 0xc8, 0x3, 0xb, 0x4b, 0x90, 0x7, 0x8e, + 0x25, 0x44, 0x3, 0x2c, 0x49, 0x80, 0x7f, 0xf2, + 0xce, 0x20, 0xa2, 0x1, 0x8a, 0x25, 0x84, 0x2, + + /* U+0059 "Y" */ + 0x0, 0x13, 0xe7, 0xff, 0xb5, 0xc8, 0x3, 0xff, + 0x9c, 0x4f, 0xbf, 0xfe, 0xb6, 0x10, 0xc, 0x4f, + 0xa, 0x20, 0x18, 0xa6, 0xd0, 0x3, 0xff, 0x98, + 0x97, 0x24, 0x1, 0x89, 0xe1, 0x84, 0x3, 0xc9, + 0x12, 0x60, 0x18, 0x5b, 0xd8, 0x40, 0x3f, 0xf9, + 0x2, 0xde, 0xc2, 0x1, 0x92, 0xe4, 0xc0, 0x3f, + 0x89, 0xe5, 0x44, 0x3, 0x25, 0xc9, 0x80, 0x7f, + 0xf1, 0x8e, 0x6d, 0x0, 0x30, 0xb4, 0x30, 0x80, + 0x7f, 0xf0, 0x16, 0x24, 0x80, 0x31, 0x34, 0xa8, + 0x7, 0xff, 0x11, 0x65, 0x88, 0x3, 0x24, 0x40, + 0xc0, 0x3f, 0xf8, 0x64, 0xd0, 0xa0, 0x18, 0x56, + 0x5c, 0x80, 0x3f, 0xf8, 0x4, 0xf2, 0xa2, 0x1, + 0xb, 0x7b, 0x8, 0x7, 0xff, 0x14, 0x56, 0x1c, + 0x80, 0x31, 0xcd, 0x98, 0x7, 0xf8, 0xee, 0x4c, + 0x3, 0x1c, 0x41, 0x0, 0x3f, 0xf9, 0x25, 0x30, + 0xa0, 0x18, 0x5a, 0x54, 0x40, 0x3c, 0x2b, 0x2c, + 0x20, 0x10, 0xb4, 0x30, 0x80, 0x7f, 0xf2, 0xc5, + 0x65, 0xc8, 0x3, 0x2c, 0xb1, 0x0, 0x62, 0x69, + 0x50, 0xc, 0x73, 0x68, 0x1, 0xff, 0xcf, 0x39, + 0xb4, 0x0, 0xc7, 0x36, 0x60, 0x4, 0xb9, 0x30, + 0x8, 0x5a, 0x1c, 0x80, 0x3f, 0xfa, 0x22, 0xd0, + 0xe4, 0x1, 0xb, 0x43, 0xbb, 0xd8, 0x40, 0x23, + 0x9b, 0x40, 0xf, 0xfe, 0xa9, 0xcd, 0xa0, 0x6, + 0x48, 0x82, 0x0, 0x42, 0xb2, 0xe4, 0x1, 0xff, + 0xd7, 0x16, 0x86, 0x10, 0xf, 0xc5, 0x30, 0xa0, + 0x1f, 0xfd, 0xb3, 0xb9, 0x20, 0xf, 0x25, 0xb1, + 0x0, 0x7f, 0xf7, 0x4c, 0x44, 0x1, 0xe1, 0x31, + 0x0, 0xff, 0xff, 0x80, 0x7f, 0xff, 0xc0, 0x3f, + 0xff, 0xe0, 0x1f, 0xff, 0xf0, 0xf, 0xff, 0xf8, + 0x7, 0xff, 0x30, + + /* U+005A "Z" */ + 0x0, 0x85, 0xf3, 0xff, 0xff, 0xb7, 0xb0, 0x60, + 0x1f, 0xfe, 0x2f, 0x10, 0x8, 0x56, 0x2a, 0xbf, + 0xfa, 0x10, 0xa4, 0x1, 0xe1, 0x59, 0x62, 0x0, + 0xc4, 0x8a, 0xbf, 0xfc, 0xf1, 0xe4, 0x20, 0xc, + 0x2b, 0x76, 0x41, 0x0, 0xff, 0xea, 0x24, 0xd3, + 0x8, 0x4, 0x2b, 0x76, 0x51, 0x0, 0xff, 0xea, + 0x1c, 0xc9, 0x84, 0x2, 0x14, 0xbb, 0x28, 0x80, + 0x7f, 0xf5, 0xe, 0x39, 0x88, 0x3, 0x24, 0x52, + 0x88, 0x7, 0xff, 0x50, 0xe3, 0x9c, 0x80, 0x32, + 0x4d, 0x30, 0x80, 0x7f, 0xf5, 0xe, 0x39, 0xc8, + 0x3, 0x1c, 0xc9, 0x84, 0x3, 0xff, 0xa8, 0x6f, + 0xee, 0x40, 0x18, 0xe3, 0x98, 0x80, 0x3f, 0xfa, + 0x84, 0xff, 0x6, 0x1, 0x8e, 0x39, 0xc8, 0x3, + 0xff, 0xa8, 0x4f, 0xd0, 0x60, 0x18, 0xe3, 0x9c, + 0x80, 0x3f, 0xfa, 0x84, 0xfd, 0x6, 0x1, 0x89, + 0xfd, 0xc8, 0x3, 0xff, 0xa8, 0x4d, 0xd0, 0x60, + 0x18, 0x9f, 0xa0, 0xc0, 0x3f, 0xfa, 0x82, 0xd3, + 0x23, 0x0, 0xc4, 0xfd, 0x6, 0x1, 0xff, 0xd4, + 0x16, 0xa9, 0x40, 0xc, 0x4d, 0xd0, 0x60, 0x1f, + 0xfd, 0x41, 0x5a, 0x84, 0x0, 0xc2, 0xd3, 0x23, + 0x0, 0xff, 0xea, 0xa, 0xdd, 0x90, 0x40, 0x21, + 0x6a, 0x94, 0x0, 0xff, 0xea, 0xa, 0xdd, 0x94, + 0x40, 0x21, 0x5a, 0x94, 0x0, 0xff, 0xea, 0xa, + 0x5d, 0x94, 0x40, 0x31, 0x26, 0x93, 0x37, 0xff, + 0x4d, 0x8, 0x8d, 0xa, 0x20, 0x1e, 0x25, 0x89, + 0x9f, 0xfe, 0xa7, 0x38, 0x0, 0x40, 0x3f, 0xfc, + 0x20, + + /* U+005B "[" */ + 0x0, 0x14, 0x6f, 0xff, 0xff, 0xf, 0x1c, 0x40, + 0x3f, 0xc6, 0xae, 0xff, 0xd6, 0x60, 0x1f, 0xe1, + 0x49, 0x88, 0xfe, 0x74, 0x10, 0xf, 0xff, 0xf8, + 0x7, 0xff, 0xfc, 0x3, 0xff, 0xfe, 0x1, 0xff, + 0xff, 0x0, 0xff, 0xff, 0x80, 0x7f, 0xff, 0xc0, + 0x3f, 0xff, 0xe0, 0x1f, 0xff, 0xf0, 0xf, 0xe1, + 0x7c, 0xff, 0xfe, 0xc7, 0x10, 0x8, 0xf2, 0x99, + 0xbf, 0xf8, 0x76, 0x60, 0x0, + + /* U+005C "\\" */ + 0x16, 0xbf, 0xfb, 0xa5, 0x0, 0x3f, 0xf9, 0xe2, + 0xfa, 0x60, 0x1, 0x7c, 0x30, 0xf, 0xfe, 0x78, + 0xbd, 0x98, 0x0, 0x56, 0xcc, 0x3, 0xff, 0x9e, + 0x2b, 0x66, 0x0, 0x25, 0x42, 0x0, 0xff, 0xe7, + 0x92, 0xa1, 0x0, 0xa, 0xd4, 0x80, 0x3f, 0xf9, + 0xe5, 0x6a, 0x20, 0x3, 0xb4, 0x10, 0xf, 0xfe, + 0x79, 0xdb, 0x88, 0x0, 0xf5, 0xc4, 0x3, 0xff, + 0x9e, 0x7a, 0xe2, 0x0, 0x4d, 0x71, 0x0, 0xff, + 0xe7, 0xa6, 0xa0, 0x4, 0x9a, 0x80, 0x1f, 0xfd, + 0x4, 0xf5, 0x0, 0x93, 0xd4, 0x3, 0xff, 0xa0, + 0xbe, 0xa0, 0x12, 0x7a, 0x0, 0x7f, 0xf4, 0x13, + 0x10, 0x0, 0x29, 0xa8, 0x1, 0xff, 0xcf, 0x17, + 0xd4, 0x0, 0xb, 0xe1, 0x80, 0x7f, 0xf3, 0xc5, + 0xf0, 0xc0, 0x2, 0xb6, 0x60, 0x1f, 0xfc, 0xf1, + 0x5b, 0x30, 0x1, 0x2d, 0x90, 0x7, 0xff, 0x3c, + 0x95, 0x8, 0x0, 0x4a, 0xa2, 0x0, 0xff, 0xe7, + 0x95, 0xa9, 0x0, 0xa, 0xd4, 0x80, 0x3f, 0xf9, + 0xe7, 0x6a, 0x20, 0x3, 0xb4, 0x10, 0xf, 0xfe, + 0x79, 0xe3, 0x88, 0x0, 0xf5, 0xc4, 0x3, 0xff, + 0x9e, 0x9a, 0xe2, 0x0, 0x4d, 0x40, 0xf, 0xfe, + 0x82, 0x62, 0x0, 0x49, 0xea, 0x1, 0xff, 0xd0, + 0x5f, 0x50, 0x9, 0x7d, 0x0, 0x3f, 0xfa, 0xb, + 0x88, 0x1, 0x26, 0xa0, 0x7, 0xff, 0x41, 0xf5, + 0x0, 0x2, 0xfa, 0x80, 0x1f, 0xfc, 0xf1, 0x7d, + 0x30, 0x0, 0xbe, 0x18, 0x7, 0xff, 0x3c, 0x52, + 0xcc, 0x0, 0x2b, 0x64, 0x1, 0xff, 0xcf, 0x25, + 0xb2, 0x0, 0x12, 0xa8, 0x80, 0x3f, 0xf9, 0xe4, + 0xaa, 0x20, 0x1, 0x5a, 0x90, 0x7, 0xff, 0x3c, + 0xad, 0x44, 0x0, 0x76, 0x82, 0x1, 0xff, 0xcf, + 0x3a, 0xb8, 0x8a, 0xcc, 0xc0, + + /* U+005D "]" */ + 0x0, 0x25, 0x7f, 0xff, 0xf1, 0x29, 0x0, 0x33, + 0x7b, 0xbf, 0xf3, 0x20, 0x80, 0x7f, 0x89, 0x62, + 0x3f, 0xda, 0xa0, 0x1f, 0xff, 0xf0, 0xf, 0xff, + 0xf8, 0x7, 0xff, 0xfc, 0x3, 0xff, 0xfe, 0x1, + 0xff, 0xff, 0x0, 0xff, 0xff, 0x80, 0x7f, 0xff, + 0xc0, 0x3f, 0xff, 0xe0, 0x1f, 0xe4, 0xaf, 0xff, + 0xee, 0x94, 0x0, 0xff, 0x36, 0x33, 0x7f, 0xf1, + 0x31, 0x80, 0x0, + + /* U+005E "^" */ + 0x0, 0xff, 0xe2, 0xb, 0x67, 0xff, 0xad, 0x84, + 0x3, 0xff, 0xa2, 0x4d, 0x46, 0x1, 0xe4, 0xa6, + 0x20, 0xf, 0xfe, 0x79, 0xd5, 0xc, 0x0, 0x24, + 0x41, 0x0, 0x1d, 0x50, 0xc0, 0x3f, 0xf9, 0xa9, + 0x4c, 0x40, 0x1, 0x7e, 0x97, 0x10, 0x1, 0x35, + 0x18, 0x7, 0xff, 0x2d, 0x79, 0x84, 0x0, 0x4d, + 0x46, 0x94, 0xe2, 0x0, 0x16, 0x94, 0x0, 0xff, + 0xe4, 0xa, 0xf2, 0x80, 0x45, 0x54, 0x30, 0x1, + 0xd3, 0x10, 0x4, 0xbe, 0xa2, 0x1, 0xff, 0xc5, + 0x16, 0x94, 0x0, 0x8e, 0x94, 0x80, 0x31, 0xd2, + 0x90, 0x4, 0x92, 0xe2, 0x1, 0xff, 0xc3, 0x29, + 0xa3, 0x0, 0x8e, 0x98, 0x80, 0x3c, 0x55, 0x42, + 0x0, 0x8e, 0xd8, 0x80, 0x3f, 0xf8, 0x27, 0x4c, + 0x40, 0x12, 0x53, 0x88, 0x7, 0xe2, 0x6a, 0x30, + 0x8, 0xaa, 0x86, 0x1, 0xff, 0x25, 0x30, 0x80, + 0x49, 0xcc, 0x20, 0x1f, 0xe1, 0x6a, 0x40, 0x8, + 0x9a, 0x90, 0x3, 0xf9, 0x79, 0x84, 0x2, 0x5e, + 0x50, 0xf, 0xfe, 0x8, 0xb7, 0x20, 0x4, 0x2d, + 0xca, 0x1, 0xe1, 0x6e, 0x50, 0x8, 0x57, 0x94, + 0x3, 0xff, 0x88, 0xbc, 0xa0, 0x19, 0x79, 0x84, + 0x2, 0x16, 0xa4, 0x0, 0x85, 0xf9, 0x0, 0x3f, + 0xf8, 0xcb, 0xcc, 0x20, 0x12, 0x53, 0x8, + + /* U+005F "_" */ + 0x38, 0xdd, 0xff, 0xf1, 0x4a, 0x3, 0x89, 0x91, + 0x7f, 0xf8, 0x4c, 0x40, + + /* U+0060 "`" */ + 0x0, 0xf8, 0x51, 0x50, 0x40, 0x3f, 0xf8, 0xe2, + 0x93, 0x97, 0x57, 0xb0, 0x60, 0x1f, 0xfc, 0x41, + 0x4f, 0x72, 0x0, 0x8d, 0xf6, 0x94, 0x40, 0x3f, + 0xf8, 0x22, 0xb7, 0x92, 0x82, 0x1, 0xa, 0xd6, + 0xc1, 0x80, 0x7f, 0xf0, 0x89, 0xaf, 0x25, 0x4, + 0x2, 0x37, 0xda, 0x51, 0x0, 0xff, 0xe1, 0x13, + 0x5e, 0x4a, 0x8, 0x0, 0x56, 0xb6, 0xc, 0x3, + 0xff, 0x86, 0x4d, 0x79, 0x2a, 0x20, 0x1f, 0xfc, + 0xb2, 0x6a, 0xcd, 0xd6, 0x41, 0x80, 0x40, + + /* U+0061 "a" */ + 0x0, 0xff, 0x84, 0xd5, 0xe6, 0xaf, 0x37, 0xb9, + 0xfe, 0xed, 0xcb, 0xa9, 0x86, 0x30, 0xf, 0xfe, + 0x10, 0xa3, 0xd6, 0x77, 0x32, 0xa1, 0x95, 0xc, + 0x84, 0x40, 0x1, 0x23, 0x45, 0x67, 0x9c, 0xda, + 0x62, 0x0, 0xfc, 0x2b, 0x76, 0x85, 0x31, 0x0, + 0x9, 0x23, 0x3c, 0x4c, 0xaa, 0x93, 0xe, 0xa6, + 0x20, 0x18, 0x96, 0x79, 0xc8, 0x3, 0xc2, 0xb1, + 0x4, 0x25, 0x7a, 0xde, 0xdb, 0x98, 0x76, 0x62, + 0xa9, 0x9e, 0x2b, 0x31, 0x28, 0x20, 0x18, 0xe6, + 0xcc, 0x3, 0xe2, 0x7b, 0xda, 0x85, 0x20, 0xf, + 0xfe, 0x19, 0x34, 0x31, 0x0, 0x61, 0x7b, 0x30, + 0xf, 0xfe, 0x99, 0xeb, 0x80, 0x70, 0x93, 0x0, + 0x7f, 0xf2, 0xc4, 0x8d, 0x15, 0x9d, 0xd1, 0xee, + 0x1, 0xe6, 0x21, 0x0, 0xff, 0xe0, 0x12, 0x33, + 0xcd, 0xe7, 0x7f, 0xbb, 0x72, 0xea, 0x62, 0xe, + 0xa4, 0x1, 0xf8, 0xc0, 0x3e, 0x26, 0x9c, 0xed, + 0xb9, 0x86, 0x43, 0x11, 0x1a, 0x2b, 0x3c, 0x4d, + 0x5e, 0x4a, 0x88, 0x7, 0xff, 0x0, 0xe3, 0x36, + 0x58, 0xc4, 0x0, 0x6d, 0x37, 0xbf, 0xd9, 0x75, + 0x30, 0xec, 0xa8, 0x6a, 0x40, 0x1f, 0xf1, 0x47, + 0x39, 0x80, 0x42, 0x93, 0xb9, 0x2c, 0x84, 0x1, + 0xff, 0xcc, 0x25, 0x51, 0x0, 0x61, 0x7f, 0x62, + 0x0, 0xff, 0xe8, 0x8f, 0x98, 0x7, 0x17, 0x30, + 0x7, 0xff, 0x1d, 0xc8, 0x3, 0xfc, 0x5c, 0xa0, + 0x1c, 0x76, 0x82, 0x1, 0xff, 0xc2, 0x25, 0x9d, + 0xb5, 0x10, 0xf, 0xe1, 0x4c, 0x30, 0xe, 0x39, + 0xcb, 0x86, 0x54, 0x4c, 0xac, 0xf5, 0x9d, 0xb4, + 0xc4, 0x50, 0x80, 0x7f, 0x89, 0xfa, 0x4c, 0x3, + 0x89, 0x1e, 0x6a, 0xef, 0x54, 0xc2, 0x98, 0x1b, + 0x56, 0xeb, 0x9c, 0x40, 0x3f, 0xe2, 0x6c, 0xec, + 0x96, 0x43, 0x21, 0x0, 0x84, 0x44, 0x8a, 0xf5, + 0x9f, 0x92, 0xa4, 0x3, 0xc6, 0x1, 0xf0, + + /* U+0062 "b" */ + 0x3, 0x8e, 0xff, 0xec, 0x72, 0x0, 0xff, 0xff, + 0x80, 0x7f, 0xff, 0xc0, 0x3f, 0xff, 0xe0, 0x1f, + 0xff, 0xf0, 0xf, 0xfe, 0xe1, 0x23, 0xcd, 0xe6, + 0xf7, 0xfd, 0xdc, 0xdc, 0xa9, 0x64, 0x10, 0xf, + 0xfe, 0x50, 0x81, 0xb5, 0x6e, 0xae, 0x19, 0xc, + 0x84, 0x2, 0x11, 0x11, 0xab, 0x4d, 0xf6, 0xca, + 0x8, 0x7, 0xff, 0x14, 0xa3, 0x31, 0x2a, 0x40, + 0x48, 0xcf, 0x13, 0x34, 0x3a, 0xa1, 0x8, 0x7, + 0x13, 0x5e, 0xb9, 0x0, 0x7f, 0xf0, 0xc4, 0x72, + 0x45, 0xf6, 0xdc, 0xc3, 0xb3, 0x4f, 0x15, 0x7b, + 0x92, 0xa2, 0x1, 0xc7, 0x36, 0x80, 0x1f, 0xfc, + 0x21, 0x5a, 0xfb, 0x74, 0x10, 0xf, 0xfe, 0x9, + 0x35, 0x51, 0x44, 0x3, 0xb, 0x7b, 0x8, 0x7, + 0xff, 0x0, 0xb5, 0xc4, 0x3, 0xff, 0x90, 0x92, + 0xc2, 0x1, 0xc9, 0x88, 0x1, 0xff, 0xd9, 0x3d, + 0x50, 0xf, 0x31, 0x8, 0x7, 0xff, 0x64, 0x48, + 0x40, 0x38, 0xb8, 0x80, 0x3f, 0xfb, 0x2e, 0x20, + 0x1e, 0x13, 0x60, 0xf, 0xfe, 0xcb, 0x10, 0x80, + 0x70, 0x9b, 0x0, 0x7f, 0xf6, 0x8, 0x8c, 0x1, + 0xe2, 0xe2, 0x0, 0xff, 0xeb, 0x92, 0xd9, 0x80, + 0x71, 0x22, 0x4, 0x3, 0xff, 0xac, 0x97, 0x26, + 0x1, 0xc4, 0xb6, 0x60, 0x1f, 0xfc, 0x3, 0x99, + 0x3a, 0x8, 0x7, 0xff, 0x8, 0xde, 0xe9, 0x84, + 0x3, 0x92, 0xe4, 0xc0, 0x3f, 0xf8, 0x42, 0x91, + 0x7d, 0xcc, 0xa9, 0x87, 0x65, 0x67, 0x89, 0xbd, + 0xc8, 0x41, 0x0, 0xc2, 0xb5, 0x46, 0x10, 0xf, + 0xfe, 0x9, 0xc5, 0xd9, 0xd0, 0x44, 0x6a, 0xcf, + 0x13, 0x53, 0xe, 0xc8, 0x40, 0x1c, 0x4b, 0x59, + 0x4a, 0x20, 0x1f, 0xfc, 0x36, 0x24, 0x44, 0x5f, + 0xe4, 0xba, 0x99, 0x8, 0x6, 0x12, 0x35, 0x68, + 0xbd, 0xd5, 0x29, 0x0, 0x7f, 0x80, + + /* U+0063 "c" */ + 0x0, 0xff, 0xe1, 0x12, 0x34, 0x55, 0xef, 0x73, + 0xff, 0x77, 0x36, 0xe6, 0x14, 0x80, 0x3f, 0xf8, + 0x82, 0x91, 0x9d, 0xb7, 0x2e, 0xa8, 0x42, 0x20, + 0xc, 0x22, 0x24, 0x67, 0xad, 0xeb, 0x74, 0x10, + 0xf, 0xe4, 0x9c, 0xb7, 0x31, 0x0, 0xc2, 0x6a, + 0xcf, 0x13, 0x53, 0xe, 0xc8, 0x40, 0x10, 0xae, + 0x11, 0x80, 0x7c, 0x93, 0x26, 0x20, 0xc, 0x28, + 0xf7, 0xf9, 0x53, 0xe, 0xca, 0xcf, 0x13, 0x7b, + 0xaa, 0x78, 0xaa, 0x31, 0x0, 0x71, 0xc4, 0xb1, + 0x0, 0x62, 0x6d, 0xb8, 0x41, 0x0, 0xff, 0xe0, + 0x92, 0xc3, 0xa0, 0x80, 0x79, 0x65, 0xc8, 0x3, + 0x92, 0x20, 0x60, 0x1f, 0xfd, 0x4, 0xc4, 0x0, + 0xf2, 0xf2, 0x88, 0x7, 0xff, 0x44, 0x88, 0x20, + 0x1c, 0x44, 0x60, 0xf, 0xfe, 0x90, 0x89, 0xc0, + 0x3c, 0xdc, 0x40, 0x1f, 0xfd, 0x31, 0x70, 0xf, + 0x37, 0x18, 0x7, 0xff, 0x48, 0x48, 0x80, 0x1e, + 0x22, 0x38, 0x7, 0xff, 0x4d, 0x31, 0x0, 0x3c, + 0x9e, 0x80, 0x1f, 0xfd, 0x34, 0xe5, 0x10, 0xc, + 0x2b, 0x30, 0x60, 0x1f, 0xfd, 0x11, 0x5b, 0xb2, + 0x0, 0x71, 0x3e, 0xd3, 0x18, 0x7, 0xff, 0x8, + 0x4d, 0xa6, 0x9c, 0xc0, 0x3e, 0x15, 0x99, 0x20, + 0x7, 0xa, 0xce, 0x76, 0x54, 0xc3, 0xb2, 0xb3, + 0xc4, 0xde, 0x7e, 0x4b, 0x2c, 0x73, 0x90, 0x7, + 0xc4, 0xd7, 0x92, 0xa4, 0x1, 0xc2, 0x6a, 0xcf, + 0x13, 0x53, 0xe, 0xc8, 0x62, 0x0, 0x14, 0x79, + 0x62, 0x0, 0xff, 0x1b, 0x56, 0xf5, 0xcb, 0xaa, + 0x19, 0x8, 0x7, 0x9, 0x1a, 0x34, 0x56, 0xf5, + 0xc2, 0x8, 0x0, + + /* U+0064 "d" */ + 0x0, 0xff, 0xeb, 0x9c, 0xf7, 0xff, 0x63, 0x90, + 0x7, 0xff, 0xfc, 0x3, 0xff, 0xfe, 0x1, 0xff, + 0xff, 0x0, 0xff, 0xff, 0x80, 0x44, 0x8f, 0x37, + 0x9b, 0xdf, 0xfb, 0xb7, 0x2a, 0x58, 0xc4, 0x0, + 0x22, 0x30, 0xf, 0xfe, 0x39, 0x35, 0x76, 0xdc, + 0x32, 0x19, 0x8, 0x6, 0x12, 0x35, 0x69, 0xcf, + 0xc8, 0x51, 0x0, 0xff, 0xe2, 0x8a, 0xde, 0x4a, + 0x88, 0x7, 0x11, 0xab, 0x44, 0xcd, 0xe, 0xc8, + 0x62, 0x23, 0x78, 0x62, 0x0, 0xff, 0xe1, 0xa5, + 0xd9, 0x4, 0x3, 0xa, 0x46, 0x6e, 0x54, 0xbb, + 0x34, 0xf1, 0x37, 0x9d, 0xb4, 0xc6, 0x1, 0xff, + 0xc3, 0x38, 0x95, 0x10, 0xc, 0x4f, 0xb6, 0xe6, + 0x1, 0xff, 0xc2, 0x25, 0x98, 0x61, 0x0, 0xff, + 0xe0, 0x24, 0xb9, 0x0, 0x72, 0x44, 0x98, 0x7, + 0xff, 0x21, 0xc0, 0x3f, 0xf8, 0x27, 0x88, 0x1, + 0xe4, 0xe5, 0x10, 0xf, 0xfe, 0xbb, 0x10, 0x80, + 0x70, 0x9b, 0x0, 0x7f, 0xf6, 0x4c, 0x40, 0x3c, + 0x5c, 0x40, 0x1f, 0xfd, 0x92, 0x20, 0x7, 0x87, + 0x88, 0x3, 0xff, 0xb2, 0xdc, 0x40, 0x1c, 0x44, + 0x70, 0xf, 0xfe, 0xc9, 0x11, 0x80, 0x3c, 0xf8, + 0x60, 0x1f, 0xfd, 0x94, 0xd4, 0x0, 0xe2, 0x79, + 0x50, 0xf, 0xfe, 0x40, 0xa9, 0x8, 0x7, 0xff, + 0x0, 0x5a, 0x18, 0x40, 0x39, 0x6e, 0xce, 0x60, + 0x1f, 0xfc, 0x23, 0x6a, 0xc9, 0x40, 0xf, 0xfe, + 0x19, 0xc4, 0x10, 0x3, 0x85, 0x23, 0x36, 0xe6, + 0x1d, 0x95, 0x4c, 0xf1, 0x59, 0xd9, 0x2a, 0x42, + 0x30, 0x7, 0xff, 0xc, 0x5a, 0xb1, 0xcc, 0x40, + 0x38, 0x91, 0x9e, 0x26, 0xa9, 0x30, 0xea, 0x62, + 0x24, 0x8c, 0xfa, 0x71, 0x0, 0xff, 0xe2, 0x9, + 0xc6, 0x7e, 0x4b, 0xaa, 0x10, 0x88, 0x2, 0x11, + 0x11, 0xab, 0xce, 0x7d, 0xb9, 0x8b, 0x71, 0x0, + 0x7f, 0x0, + + /* U+0065 "e" */ + 0x0, 0xff, 0xe0, 0x89, 0xb4, 0x55, 0xef, 0x73, + 0xff, 0x76, 0xe5, 0xcb, 0xa1, 0x0, 0x7f, 0xf2, + 0x9, 0x67, 0x7b, 0x25, 0xd5, 0x8, 0x44, 0x1, + 0x84, 0x8d, 0x1a, 0x2f, 0x72, 0x54, 0x80, 0x3f, + 0xf8, 0x22, 0xb5, 0x94, 0xc4, 0x1, 0x9, 0xab, + 0xcd, 0x5d, 0xd5, 0x30, 0xe8, 0x20, 0x11, 0xb5, + 0x64, 0x98, 0x7, 0xf9, 0x22, 0xd4, 0x40, 0x23, + 0x7b, 0xfc, 0xa8, 0x65, 0x44, 0x95, 0x9e, 0x2f, + 0xb1, 0xcc, 0x2, 0x16, 0xf7, 0x20, 0xf, 0x1c, + 0xc9, 0x84, 0x2, 0x39, 0xe8, 0x41, 0x0, 0xff, + 0xe1, 0x1c, 0x7b, 0x10, 0x4, 0x73, 0x66, 0x1, + 0x96, 0x58, 0x80, 0x32, 0xc3, 0x10, 0x7, 0xff, + 0x1c, 0xf5, 0x4, 0x2, 0x15, 0x50, 0x80, 0x13, + 0x10, 0x3, 0x93, 0xd0, 0x3, 0xff, 0x94, 0xbc, + 0x40, 0x18, 0xb8, 0x80, 0x4, 0x41, 0x0, 0xe4, + 0xaf, 0xff, 0xfe, 0x5f, 0x41, 0x80, 0x61, 0x26, + 0x1, 0x13, 0x80, 0x7f, 0xf6, 0x84, 0xc4, 0x4, + 0x4e, 0x1, 0xe4, 0xaf, 0xff, 0xfe, 0x97, 0x4a, + 0x0, 0x8, 0x80, 0x1e, 0x5c, 0x30, 0xf, 0xfe, + 0xb2, 0x62, 0x0, 0x70, 0xa5, 0x90, 0x7, 0xff, + 0x59, 0x7d, 0x84, 0x3, 0x13, 0xf3, 0x10, 0x7, + 0xff, 0x55, 0x22, 0xd4, 0x40, 0x31, 0xcf, 0xca, + 0x90, 0x7, 0xff, 0x14, 0x4d, 0x50, 0x40, 0x3f, + 0x85, 0x6e, 0xca, 0x20, 0x18, 0x9a, 0xb7, 0x57, + 0x30, 0xea, 0x89, 0x95, 0x9e, 0x26, 0xfb, 0x99, + 0x54, 0x84, 0x0, 0xff, 0xa, 0xd6, 0x53, 0x10, + 0x7, 0x12, 0x33, 0xc5, 0x5d, 0xea, 0x98, 0x76, + 0x41, 0x0, 0x9, 0x0, 0x90, 0x7, 0xff, 0x0, + 0x96, 0x77, 0xb2, 0xa1, 0x94, 0xc8, 0x44, 0x1, + 0x9, 0x19, 0x91, 0x59, 0xe6, 0xfb, 0x99, 0x2a, + 0x40, 0x10, + + /* U+0066 "f" */ + 0x0, 0xff, 0xe1, 0x92, 0xc5, 0x5e, 0x6f, 0x7f, + 0xdd, 0xb9, 0x72, 0xa4, 0x1, 0xff, 0xc3, 0x49, + 0xdd, 0x53, 0xaa, 0x19, 0x8, 0x4, 0x24, 0x68, + 0x46, 0x60, 0xf, 0xfe, 0x9, 0x44, 0xb1, 0x0, + 0x61, 0x37, 0x9a, 0xbb, 0x54, 0x3c, 0x7b, 0x88, + 0x7, 0xff, 0x0, 0xe9, 0x88, 0x3, 0x96, 0xf2, + 0x19, 0x51, 0xa, 0xf0, 0xe8, 0x20, 0x1f, 0xfc, + 0x16, 0x21, 0x0, 0xe4, 0xf5, 0x0, 0xff, 0xe6, + 0x9, 0x30, 0x7, 0x88, 0x40, 0x3f, 0xfa, 0xa2, + 0x1, 0xff, 0xed, 0x5a, 0xff, 0xdd, 0x6, 0x1, + 0xc2, 0xd7, 0xff, 0xfa, 0xd8, 0x3, 0xff, 0xc2, + 0xb7, 0xbb, 0xad, 0xc8, 0x3, 0xcb, 0x3b, 0xbf, + 0xa9, 0xc0, 0x3f, 0xc2, 0x45, 0x97, 0xc4, 0x3, + 0x84, 0xc8, 0xbf, 0x84, 0x40, 0x1f, 0xff, 0xf0, + 0xf, 0xff, 0xf8, 0x7, 0xff, 0xfc, 0x3, 0xff, + 0xfe, 0x1, 0xff, 0xff, 0x0, 0xff, 0xff, 0x80, + 0x7f, 0xf3, 0x40, + + /* U+0067 "g" */ + 0x0, 0xff, 0x84, 0xda, 0x2a, 0xf3, 0x75, 0xdf, + 0xff, 0xfc, 0xbd, 0x83, 0x0, 0xfc, 0x4b, 0x3b, + 0xf9, 0x2e, 0xa8, 0x64, 0x41, 0x0, 0xff, 0xea, + 0x1c, 0x75, 0x31, 0x8, 0x0, 0x51, 0xeb, 0x37, + 0xba, 0xdc, 0xb9, 0x52, 0x0, 0xf1, 0x35, 0xee, + 0xfb, 0x24, 0xc0, 0x30, 0xb7, 0xb9, 0x80, 0x64, + 0x9c, 0xb8, 0x53, 0x21, 0x18, 0x8d, 0x1a, 0xb6, + 0xd8, 0x40, 0x22, 0x6f, 0x43, 0x22, 0xc2, 0x20, + 0xe, 0x4c, 0x30, 0xe, 0x5f, 0x62, 0x0, 0xff, + 0xe1, 0x25, 0xc9, 0x0, 0x64, 0xc4, 0x0, 0xff, + 0x16, 0xb8, 0x7, 0x1e, 0xb0, 0x7, 0xff, 0x14, + 0x88, 0xe0, 0x1c, 0xc4, 0x40, 0xf, 0xe3, 0xe6, + 0x0, 0xe3, 0xe6, 0x0, 0xff, 0xe2, 0x91, 0x18, + 0x3, 0x98, 0xc8, 0x3, 0xf8, 0x5f, 0x50, 0x3, + 0x9f, 0xd4, 0x40, 0x3f, 0xf8, 0x47, 0x74, 0x60, + 0x18, 0xf1, 0x40, 0x3f, 0xe1, 0x69, 0x92, 0x8, + 0x0, 0x52, 0xb2, 0x58, 0xc4, 0x3, 0x84, 0x96, + 0x2f, 0x58, 0x80, 0x22, 0x7f, 0x61, 0x0, 0xff, + 0xe0, 0x93, 0x5d, 0x30, 0x80, 0x44, 0xd3, 0x9d, + 0xff, 0xdd, 0xb4, 0xe8, 0x20, 0x2, 0x5a, 0xf8, + 0x30, 0xf, 0xfe, 0x21, 0x37, 0xb8, 0x80, 0x9b, + 0x31, 0x4c, 0x84, 0x2, 0x12, 0x34, 0x56, 0x8b, + 0xed, 0xa5, 0x20, 0xf, 0xfe, 0x21, 0x3f, 0xca, + 0x8, 0x24, 0x6c, 0xca, 0xb3, 0x7b, 0xfe, 0xed, + 0xcb, 0xa9, 0x74, 0x10, 0xf, 0xfe, 0x39, 0x2d, + 0x90, 0x4, 0x58, 0x82, 0x1, 0xff, 0xe0, 0x3d, + 0x70, 0xf, 0xfe, 0xd1, 0x22, 0x4, 0x2, 0x15, + 0xad, 0xa8, 0x76, 0x55, 0xff, 0xe0, 0x22, 0xc, + 0xc4, 0x41, 0x0, 0xff, 0xe1, 0x9c, 0xd3, 0x90, + 0x6, 0x25, 0x78, 0x9a, 0xaf, 0xfe, 0x5, 0xdb, + 0x31, 0xba, 0xef, 0xec, 0xa7, 0x41, 0x0, 0xff, + 0xe0, 0x8, 0x80, 0x2, 0x46, 0x62, 0x11, 0x0, + 0x7f, 0xf1, 0xc4, 0xd6, 0x2f, 0x20, 0xc0, 0x30, + 0xa4, 0xe5, 0xb9, 0x81, 0xc6, 0xeb, 0x31, 0xbd, + 0xcf, 0xff, 0xfe, 0x7, 0x73, 0x6e, 0x54, 0x80, + 0x38, 0x9a, 0x90, 0x0, 0x73, 0x26, 0x20, 0x1, + 0x4f, 0x39, 0x80, 0x7f, 0xf1, 0x84, 0x44, 0x8d, + 0x52, 0xc2, 0x1, 0x85, 0x48, 0x44, 0x88, 0x20, + 0xc, 0xe6, 0x40, 0x1f, 0xfc, 0xe1, 0x31, 0x0, + 0xe6, 0x21, 0x11, 0xa8, 0x7, 0x27, 0x28, 0x80, + 0x7f, 0xf2, 0x85, 0x6a, 0x14, 0x3, 0xb, 0x4a, + 0x0, 0x13, 0x58, 0x40, 0x21, 0x5a, 0xcb, 0x86, + 0x42, 0x10, 0xf, 0xe1, 0x23, 0x57, 0xac, 0xfa, + 0x52, 0x0, 0x8e, 0x36, 0x4c, 0x3, 0x24, 0xe5, + 0x29, 0x0, 0x44, 0x8f, 0x37, 0xbd, 0xff, 0xbb, + 0xff, 0x76, 0xe5, 0x42, 0x98, 0x81, 0x23, 0xd6, + 0xe3, 0x98, 0x7, 0xe2, 0x5a, 0xde, 0xca, 0x86, + 0x54, 0x32, 0x20, 0x88, 0x0, 0x23, 0x11, 0x99, + 0x15, 0x9e, 0x2b, 0x7b, 0x6e, 0x14, 0x80, 0x3e, + + /* U+0068 "h" */ + 0x3, 0x8e, 0xff, 0xec, 0x72, 0x0, 0xff, 0xff, + 0x80, 0x7f, 0xff, 0xc0, 0x3f, 0xff, 0xe0, 0x1f, + 0xff, 0xf0, 0xf, 0xfe, 0x41, 0x2b, 0xcd, 0xe6, + 0xf7, 0xfb, 0xb7, 0x2e, 0xa5, 0x8c, 0x40, 0x3f, + 0xf8, 0xe2, 0x60, 0x4d, 0x5b, 0xaa, 0x86, 0x43, + 0x21, 0x0, 0x9, 0x1a, 0x2b, 0x4e, 0x62, 0x94, + 0x80, 0x3f, 0xf8, 0x63, 0xb7, 0x9b, 0x2a, 0x40, + 0x48, 0xae, 0xe8, 0x83, 0xb2, 0x10, 0x80, 0x71, + 0x2d, 0xd9, 0x0, 0x3f, 0xf8, 0x44, 0x8a, 0x62, + 0x91, 0x7d, 0xb7, 0x51, 0x7, 0x74, 0x4d, 0xee, + 0x42, 0x0, 0x70, 0xb7, 0xb0, 0x80, 0x7f, 0xf0, + 0x49, 0x6b, 0xed, 0xd0, 0x40, 0x3f, 0xe2, 0x7f, + 0x61, 0x0, 0xe5, 0xf2, 0x0, 0xff, 0xe0, 0x1d, + 0x42, 0x88, 0x7, 0xff, 0x15, 0x7d, 0x40, 0x38, + 0x4d, 0x80, 0x3f, 0xfa, 0xc2, 0x62, 0x1, 0xe6, + 0x21, 0x0, 0xff, 0xeb, 0x9, 0x80, 0x7f, 0xff, + 0xc0, 0x3f, 0xff, 0xe0, 0x1f, 0xff, 0xf0, 0xf, + 0xff, 0xf8, 0x7, 0xff, 0xfc, 0x3, 0xff, 0xba, + + /* U+0069 "i" */ + 0x0, 0xc6, 0xd5, 0x9d, 0xcd, 0xc9, 0x62, 0x0, + 0xf2, 0xcc, 0x94, 0xc4, 0x44, 0x6d, 0x30, 0x80, + 0x1c, 0xc4, 0x20, 0x1f, 0x11, 0x18, 0x3, 0x8e, + 0x32, 0xa1, 0xd9, 0xe2, 0xfe, 0x8, 0x3, 0xe2, + 0x57, 0x89, 0x87, 0x42, 0x0, 0xff, 0xf0, 0x1c, + 0x77, 0xff, 0x63, 0x90, 0x7, 0xff, 0xfc, 0x3, + 0xff, 0xfe, 0x1, 0xff, 0xff, 0x0, 0xff, 0xfb, + 0x0, + + /* U+006A "j" */ + 0x0, 0xff, 0xe0, 0x9b, 0x56, 0x6f, 0x6e, 0x4b, + 0x18, 0x7, 0xff, 0xd, 0x66, 0x4a, 0x64, 0x24, + 0x6d, 0x32, 0x50, 0xf, 0xfe, 0x13, 0x11, 0x0, + 0x3e, 0x22, 0x30, 0x7, 0xff, 0x8, 0xe3, 0xee, + 0x1d, 0x9e, 0x2f, 0xe0, 0xc0, 0x3f, 0xf8, 0x84, + 0x8f, 0x13, 0xe, 0x84, 0x1, 0xff, 0xfb, 0x38, + 0xdf, 0xfe, 0xd8, 0x20, 0xf, 0xff, 0xf8, 0x7, + 0xff, 0xfc, 0x3, 0xff, 0xfe, 0x1, 0xff, 0xff, + 0x0, 0xff, 0xff, 0x80, 0x7f, 0xff, 0xc0, 0x3f, + 0xf9, 0xe6, 0x1, 0xff, 0xcc, 0x71, 0x10, 0x7, + 0x37, 0x18, 0x7, 0xff, 0xc, 0xb1, 0x0, 0x3c, + 0x44, 0x10, 0xe, 0x14, 0x67, 0x65, 0x59, 0xeb, + 0xdc, 0x80, 0x30, 0xb6, 0xa0, 0x7, 0x9f, 0xe6, + 0x26, 0xaa, 0x85, 0x20, 0xc, 0x29, 0x16, 0x80, + 0x1e, 0x20, 0x13, 0x21, 0x0, 0x84, 0x8d, 0x15, + 0xeb, 0x2d, 0x88, 0x3, 0xc0, + + /* U+006B "k" */ + 0x3, 0x8e, 0xff, 0xec, 0x71, 0x0, 0xff, 0xff, + 0x80, 0x7f, 0xff, 0xc0, 0x3f, 0xff, 0xe0, 0x1f, + 0xff, 0xf0, 0xf, 0xfe, 0xa1, 0xc6, 0xff, 0xfb, + 0x1c, 0x80, 0x3f, 0xfa, 0x42, 0xb5, 0xae, 0x40, + 0x10, 0xad, 0x6b, 0x90, 0x7, 0xff, 0x40, 0x9a, + 0xa8, 0xa2, 0x1, 0x13, 0xed, 0x28, 0x80, 0x7f, + 0xf4, 0xe, 0x3e, 0x50, 0x2, 0x14, 0x9f, 0x83, + 0x0, 0xff, 0xe8, 0xa, 0xd6, 0xb9, 0x0, 0x44, + 0xd5, 0x46, 0x20, 0xf, 0xfe, 0x81, 0x3e, 0xd2, + 0x88, 0x4, 0x71, 0xf2, 0x82, 0x1, 0xff, 0xd0, + 0x38, 0xf8, 0x30, 0x8, 0x56, 0xb5, 0xc8, 0x3, + 0xff, 0x9e, 0x62, 0xb5, 0xae, 0x40, 0x1c, 0x2c, + 0x46, 0x1, 0xff, 0xd0, 0xea, 0xda, 0x51, 0x0, + 0xfc, 0x71, 0xcc, 0x40, 0x1f, 0xfc, 0xd3, 0x67, + 0x30, 0x8, 0x9a, 0xf2, 0x50, 0x3, 0x1c, 0xc9, + 0x44, 0x3, 0xff, 0xa0, 0x71, 0xf2, 0x86, 0xd3, + 0x6, 0x1, 0x92, 0xec, 0x82, 0x1, 0xff, 0xcb, + 0x16, 0xbd, 0x72, 0x0, 0xc4, 0xfe, 0xc2, 0x1, + 0xa, 0xd4, 0x18, 0x7, 0xff, 0x20, 0x9f, 0x65, + 0x4, 0x3, 0xf1, 0xc5, 0xa8, 0x80, 0x42, 0xdd, + 0x6, 0x1, 0xff, 0xc6, 0x1f, 0x20, 0xf, 0xfe, + 0x0, 0xad, 0xc2, 0x0, 0x62, 0x7f, 0x72, 0x0, + 0xff, 0xea, 0x8b, 0x4c, 0x10, 0x6, 0x38, 0x96, + 0x10, 0xf, 0xfe, 0xa9, 0x3c, 0xb1, 0x0, 0x64, + 0x8b, 0x51, 0x0, 0xff, 0xea, 0xa4, 0x41, 0x44, + 0x2, 0x15, 0xbb, 0x20, 0x0, + + /* U+006C "l" */ + 0x3, 0x8e, 0xff, 0xec, 0x72, 0x0, 0xff, 0xff, + 0x80, 0x7f, 0xff, 0xc0, 0x3f, 0xff, 0xe0, 0x1f, + 0xff, 0xf0, 0xf, 0xff, 0x68, 0xf8, 0x7, 0xe2, + 0xf2, 0x0, 0xe2, 0x58, 0x64, 0x31, 0x0, 0x85, + 0x6c, 0x80, 0x38, 0x96, 0x6e, 0x50, 0x3, 0x13, + 0xfd, 0x31, 0x90, 0x80, 0x42, 0x23, 0x20, + + /* U+006D "m" */ + 0x3, 0x8e, 0xff, 0xd6, 0xc0, 0x1e, 0x13, 0x68, + 0xac, 0xde, 0xff, 0xbb, 0x72, 0xe5, 0x8c, 0x40, + 0x3f, 0xe2, 0x47, 0x9b, 0xdd, 0x77, 0xfb, 0xb7, + 0x2e, 0x5d, 0x4, 0x3, 0xff, 0x88, 0xe2, 0x40, + 0x3, 0x7b, 0xfc, 0x97, 0x53, 0x21, 0x0, 0x84, + 0x8d, 0x1a, 0x73, 0x12, 0x82, 0x1, 0x89, 0x67, + 0x75, 0x70, 0xc8, 0x44, 0x10, 0x0, 0x91, 0xa3, + 0x45, 0xfd, 0xb9, 0x80, 0x7f, 0xf0, 0x4b, 0x6a, + 0x77, 0x21, 0x4, 0x44, 0xac, 0xf1, 0x7, 0x64, + 0x20, 0xf, 0x13, 0x54, 0x21, 0xb5, 0xe5, 0x31, + 0x0, 0x9a, 0xbc, 0x41, 0xd9, 0x4c, 0x40, 0x38, + 0x52, 0x20, 0xc2, 0x1, 0xff, 0xa, 0xbb, 0x11, + 0x16, 0x73, 0xf6, 0xa6, 0x1d, 0xd1, 0x37, 0xb8, + 0xe4, 0x1, 0xc2, 0xd7, 0x92, 0x82, 0x6d, 0x5b, + 0xd9, 0x50, 0xee, 0x89, 0xac, 0xfa, 0x51, 0x0, + 0xe4, 0xb6, 0x20, 0xf, 0xfe, 0x1, 0x35, 0xe5, + 0x31, 0x88, 0x7, 0xf8, 0xe6, 0xd0, 0x3, 0xf1, + 0xc6, 0x62, 0x54, 0x80, 0x3f, 0xc2, 0xb0, 0xc4, + 0x1, 0xc5, 0xae, 0x1, 0xff, 0x1d, 0x5a, 0x8, + 0x7, 0xff, 0xc, 0x50, 0xc8, 0x3, 0xcb, 0x2e, + 0x60, 0x1f, 0xfc, 0x42, 0xc7, 0x0, 0xf3, 0x10, + 0x80, 0x7f, 0xf4, 0xcf, 0x98, 0x3, 0xff, 0x9e, + 0xe4, 0x40, 0xe, 0x2f, 0x20, 0xf, 0xfe, 0x98, + 0x98, 0x7, 0xff, 0x40, 0x7c, 0x3, 0xff, 0xfe, + 0x1, 0xff, 0xff, 0x0, 0xff, 0xff, 0x80, 0x7f, + 0xff, 0xc0, 0x3f, 0xff, 0xe0, 0x1f, 0xff, 0xf0, + 0xf, 0xff, 0xf8, 0x7, 0xff, 0xfc, 0x3, 0xff, + 0xdc, + + /* U+006E "n" */ + 0x3, 0x8e, 0xff, 0xd6, 0xc0, 0x1f, 0x12, 0xbc, + 0xde, 0x6f, 0x7f, 0xbb, 0x72, 0xea, 0x58, 0xc4, + 0x3, 0xff, 0x8a, 0xe2, 0x40, 0x2, 0x6a, 0xdd, + 0x54, 0x32, 0x19, 0x8, 0x0, 0x48, 0xd1, 0x5a, + 0x73, 0x14, 0xa4, 0x1, 0xff, 0xc2, 0x2d, 0xa9, + 0xdd, 0x4a, 0x90, 0x12, 0x2b, 0xba, 0x20, 0xec, + 0x84, 0x20, 0x1c, 0x4b, 0x76, 0x40, 0xf, 0xfe, + 0x8, 0xab, 0xb1, 0xa, 0x45, 0xf6, 0xdd, 0x44, + 0x1d, 0xd1, 0x37, 0xb9, 0x8, 0x1, 0xc2, 0xde, + 0xc2, 0x1, 0xff, 0xc1, 0x25, 0xaf, 0xb7, 0x41, + 0x0, 0xff, 0x89, 0xfd, 0x84, 0x3, 0x97, 0xc8, + 0x3, 0xff, 0x80, 0x75, 0xa, 0x20, 0x1f, 0xfc, + 0x55, 0xf5, 0x0, 0xe1, 0x36, 0x0, 0xff, 0xeb, + 0x9, 0x88, 0x7, 0x98, 0x84, 0x3, 0xff, 0xac, + 0x26, 0x1, 0xff, 0xff, 0x0, 0xff, 0xff, 0x80, + 0x7f, 0xff, 0xc0, 0x3f, 0xff, 0xe0, 0x1f, 0xff, + 0xf0, 0xf, 0xfe, 0xe8, + + /* U+006F "o" */ + 0x0, 0xff, 0xe0, 0x89, 0xac, 0x4d, 0xe6, 0xf7, + 0x3f, 0xee, 0xe6, 0xe5, 0x4b, 0xa1, 0x0, 0x7f, + 0xf2, 0x89, 0x67, 0x7b, 0x29, 0xd9, 0xc, 0x84, + 0x40, 0x10, 0x88, 0x8d, 0x5a, 0x2f, 0x7a, 0xdc, + 0xc4, 0x3, 0xff, 0x84, 0x2b, 0x59, 0x4c, 0x40, + 0x18, 0x49, 0x19, 0xe2, 0x6a, 0x61, 0x94, 0xc8, + 0x3, 0xa, 0x46, 0x62, 0xc, 0x3, 0xfc, 0x29, + 0x76, 0x51, 0x0, 0xc4, 0xd5, 0x9b, 0x73, 0xe, + 0xca, 0xcf, 0x35, 0x9b, 0x90, 0x82, 0x1, 0x89, + 0xfd, 0xc8, 0x3, 0xe4, 0x8a, 0x51, 0x0, 0xc7, + 0x1f, 0x2a, 0x40, 0x1f, 0xfc, 0x13, 0x7b, 0xa6, + 0x10, 0xc, 0x71, 0xce, 0x40, 0x19, 0x79, 0x84, + 0x3, 0xb, 0x43, 0x90, 0x7, 0xff, 0x1d, 0x22, + 0x6, 0x1, 0xc7, 0x54, 0x20, 0x2, 0x62, 0x0, + 0x79, 0x35, 0x0, 0x3f, 0xf9, 0x42, 0xf6, 0x60, + 0x1c, 0x48, 0xa2, 0x4, 0x41, 0x0, 0xe2, 0x23, + 0x0, 0x7f, 0xf3, 0x4, 0x98, 0x3, 0xc5, 0xc4, + 0x22, 0x70, 0xf, 0x37, 0x18, 0x7, 0xff, 0x35, + 0x88, 0x40, 0x38, 0x4d, 0xc4, 0x4e, 0x1, 0xe6, + 0xe3, 0x0, 0xff, 0xe6, 0xb9, 0x8, 0x7, 0x9, + 0xb8, 0x11, 0x0, 0x3c, 0x44, 0x60, 0xf, 0xfe, + 0x60, 0x9b, 0x0, 0x78, 0xb8, 0x41, 0x31, 0x0, + 0x3c, 0x9a, 0x80, 0x1f, 0xfc, 0xa1, 0x7c, 0x30, + 0xe, 0x24, 0x41, 0x0, 0x17, 0xd8, 0x40, 0x30, + 0xb4, 0x30, 0x80, 0x7f, 0xf1, 0xce, 0x20, 0x80, + 0x1c, 0x75, 0x43, 0x0, 0xc9, 0x16, 0xa2, 0x1, + 0x8e, 0x72, 0x54, 0x40, 0x3f, 0xf8, 0x26, 0xd7, + 0xac, 0x20, 0x18, 0xa3, 0x9c, 0x80, 0x3c, 0x2b, + 0x76, 0x51, 0x0, 0xc4, 0xd5, 0xf9, 0x53, 0xe, + 0xca, 0xcf, 0x15, 0x7b, 0x92, 0x82, 0x1, 0x89, + 0xf9, 0xc8, 0x3, 0xfc, 0x2b, 0x59, 0x4c, 0x40, + 0x18, 0x4d, 0x59, 0xe2, 0x6a, 0x61, 0xd5, 0x8, + 0x3, 0xa, 0x3d, 0xe4, 0x18, 0x7, 0xff, 0xc, + 0x96, 0x77, 0xb2, 0x5d, 0x90, 0xc8, 0x40, 0x30, + 0x88, 0x8d, 0x5a, 0x2f, 0x7a, 0xe1, 0x4, 0x3, + 0xf0, + + /* U+0070 "p" */ + 0x3, 0x8e, 0xff, 0xd6, 0xc0, 0x1e, 0x24, 0x79, + 0xbc, 0xde, 0xff, 0xbb, 0x9b, 0x95, 0x2c, 0x82, + 0x1, 0xff, 0xc8, 0x61, 0x21, 0x37, 0xad, 0xd5, + 0xc3, 0x21, 0x90, 0x80, 0x42, 0x22, 0x35, 0x69, + 0xbe, 0xd9, 0x41, 0x0, 0xff, 0xe2, 0x14, 0xe7, + 0xe4, 0x29, 0x0, 0xa3, 0x3c, 0x4c, 0xd0, 0xea, + 0x84, 0x20, 0x1c, 0x4d, 0x7a, 0xe4, 0x1, 0xff, + 0xc3, 0x11, 0xc8, 0xf7, 0xdc, 0xb9, 0x87, 0x66, + 0x9e, 0x2a, 0xf7, 0x25, 0x44, 0x3, 0x8e, 0x6d, + 0x0, 0x3f, 0xf8, 0x42, 0xb5, 0xf7, 0x8, 0x20, + 0x1f, 0xfc, 0x12, 0x6a, 0xa2, 0x88, 0x6, 0x16, + 0xf6, 0x10, 0xf, 0xfe, 0x1, 0x6b, 0x88, 0x7, + 0xff, 0x21, 0x25, 0x84, 0x3, 0x93, 0x10, 0x3, + 0xff, 0xb2, 0x7a, 0xa0, 0x1e, 0x62, 0x10, 0xf, + 0xfe, 0xc8, 0x90, 0x80, 0x71, 0x71, 0x0, 0x7f, + 0xf6, 0x5c, 0x40, 0x3c, 0x26, 0xc0, 0x1f, 0xfd, + 0x96, 0x21, 0x0, 0xe1, 0x36, 0x0, 0xff, 0xec, + 0x11, 0x18, 0x3, 0xc5, 0xc4, 0x1, 0xff, 0xd7, + 0x25, 0xb3, 0x0, 0xe1, 0x44, 0x8, 0x7, 0xff, + 0x59, 0x2e, 0x4c, 0x3, 0x89, 0xac, 0xc0, 0x3f, + 0xf8, 0x7, 0x32, 0x84, 0x10, 0xf, 0xfe, 0x11, + 0xbd, 0xd3, 0x8, 0x7, 0x25, 0xc9, 0x80, 0x7f, + 0xf0, 0x85, 0x1e, 0xfb, 0x99, 0x53, 0xe, 0xca, + 0xcf, 0x13, 0x7b, 0x90, 0x82, 0x1, 0x85, 0x2a, + 0x8c, 0x20, 0x1f, 0xfc, 0x23, 0x69, 0x74, 0x11, + 0x1a, 0xb3, 0xc4, 0xd4, 0xc3, 0xb2, 0x10, 0x7, + 0x12, 0xce, 0x5a, 0x88, 0x7, 0xff, 0x17, 0x92, + 0x2f, 0xb2, 0x9d, 0x4c, 0x84, 0x3, 0x9, 0x1a, + 0xb4, 0x5e, 0xea, 0x98, 0x80, 0x3f, 0xf9, 0xa6, + 0xb1, 0x59, 0xbd, 0xff, 0xbb, 0x72, 0xa5, 0xd0, + 0x80, 0x3f, 0xff, 0xe0, 0x1f, 0xff, 0xf0, 0xf, + 0xff, 0xf8, 0x7, 0xff, 0xfc, 0x0, + + /* U+0071 "q" */ + 0x0, 0xff, 0xe0, 0x92, 0x3c, 0xde, 0x6f, 0x7f, + 0xdd, 0xb9, 0x75, 0xc, 0x82, 0x1, 0xb, 0x5f, + 0xfe, 0xc7, 0x20, 0xf, 0xf8, 0x9a, 0xbb, 0x6e, + 0x19, 0xc, 0x84, 0x2, 0x12, 0x34, 0x57, 0x9b, + 0xfc, 0x96, 0x7f, 0x50, 0xf, 0xfe, 0x18, 0xad, + 0xe4, 0xa8, 0x80, 0x71, 0x1a, 0xb4, 0x4c, 0xd0, + 0xec, 0x86, 0x22, 0x36, 0x99, 0x30, 0x80, 0x7f, + 0xf0, 0x92, 0xec, 0x82, 0x1, 0x85, 0x23, 0x37, + 0x2a, 0x5d, 0x9a, 0x78, 0x9b, 0xce, 0xda, 0x63, + 0x0, 0xff, 0xe1, 0x9c, 0x4a, 0x88, 0x6, 0x27, + 0xdb, 0x73, 0x0, 0xff, 0xe1, 0x12, 0xcc, 0x30, + 0x80, 0x7f, 0xf0, 0x12, 0x5c, 0x80, 0x39, 0x22, + 0x4c, 0x3, 0xff, 0x90, 0xe0, 0x1f, 0xfc, 0x13, + 0xc4, 0x0, 0xf2, 0x72, 0x88, 0x7, 0xff, 0x5d, + 0x88, 0x40, 0x38, 0x4d, 0x80, 0x3f, 0xfb, 0x26, + 0x20, 0x1e, 0x2e, 0x20, 0xf, 0xfe, 0xc9, 0x10, + 0x3, 0xc3, 0xc4, 0x1, 0xff, 0xd9, 0x6e, 0x20, + 0xe, 0x22, 0x38, 0x7, 0xff, 0x64, 0x88, 0xc0, + 0x1e, 0x7c, 0x30, 0xf, 0xfe, 0xca, 0x6a, 0x0, + 0x71, 0x3c, 0xa8, 0x7, 0xff, 0x20, 0x54, 0x84, + 0x3, 0xff, 0x80, 0x2d, 0xc, 0x20, 0x1c, 0xb7, + 0x67, 0x30, 0xf, 0xfe, 0x11, 0xb5, 0x64, 0xa0, + 0x7, 0xff, 0xc, 0xe2, 0x8, 0x1, 0xc2, 0x91, + 0x9b, 0x73, 0xe, 0xca, 0xa6, 0x78, 0xac, 0xec, + 0x95, 0x21, 0x10, 0x7, 0xff, 0x10, 0x5a, 0xb1, + 0xcc, 0x40, 0x38, 0x91, 0x9e, 0x26, 0xa9, 0x30, + 0xea, 0x62, 0x24, 0x8c, 0xd9, 0x30, 0xf, 0xfe, + 0x28, 0x9c, 0x67, 0xe4, 0xba, 0xa1, 0x8, 0x80, + 0x21, 0x11, 0x1a, 0xbd, 0x67, 0xdb, 0x98, 0xf8, + 0x80, 0x7f, 0xf2, 0x44, 0xda, 0x2a, 0xf7, 0xb9, + 0xff, 0x77, 0x37, 0x2a, 0x14, 0xc4, 0x2, 0x11, + 0x18, 0x7, 0xff, 0xfc, 0x3, 0xff, 0xfe, 0x1, + 0xff, 0xff, 0x0, 0xff, 0xfe, 0x80, + + /* U+0072 "r" */ + 0x3, 0x8e, 0xff, 0xd6, 0xa0, 0x1e, 0x24, 0x8a, + 0xcd, 0xef, 0xfd, 0xd2, 0x80, 0x1f, 0xf3, 0x90, + 0x80, 0x9c, 0x66, 0xdb, 0xa9, 0x90, 0x80, 0x62, + 0xf5, 0x0, 0xff, 0x87, 0xd5, 0x55, 0xae, 0x60, + 0x1, 0x35, 0x66, 0x95, 0x11, 0x6a, 0x20, 0x1f, + 0xf1, 0x35, 0x5a, 0x8, 0x96, 0x77, 0xb2, 0xa6, + 0x6a, 0xbb, 0x39, 0x80, 0x7f, 0xf0, 0x44, 0x63, + 0x8c, 0xa6, 0x20, 0xf, 0xfe, 0x68, 0xb7, 0xb9, + 0x0, 0x7f, 0xf3, 0xc9, 0xac, 0xc0, 0x3f, 0xfa, + 0x23, 0xe0, 0x1f, 0xff, 0xf0, 0xf, 0xff, 0xf8, + 0x7, 0xff, 0xfc, 0x3, 0xff, 0xfe, 0x1, 0xff, + 0xc7, + + /* U+0073 "s" */ + 0x0, 0xff, 0x84, 0xda, 0x2a, 0xf3, 0x75, 0xdf, + 0xf7, 0x73, 0x6e, 0xa1, 0x8c, 0x40, 0x3f, 0xf8, + 0xa9, 0x19, 0xf9, 0x2e, 0xa8, 0x64, 0x41, 0x0, + 0x84, 0x44, 0x8a, 0xf3, 0x9d, 0xb4, 0xe8, 0x20, + 0x1f, 0xc2, 0xb5, 0x47, 0x31, 0x0, 0x89, 0x5e, + 0x6e, 0xd9, 0x8b, 0xa9, 0x86, 0x42, 0x0, 0x89, + 0xf8, 0x3, 0xfe, 0x4e, 0x51, 0x0, 0x85, 0x6b, + 0x2a, 0x19, 0x10, 0x66, 0x45, 0x67, 0x9b, 0xde, + 0xb9, 0xae, 0x94, 0x10, 0xf, 0xc7, 0xaa, 0x1, + 0xc5, 0x88, 0x20, 0x1f, 0xfc, 0x21, 0x46, 0x53, + 0x0, 0xff, 0x8f, 0x54, 0x3, 0x8e, 0x98, 0x80, + 0x3f, 0xfa, 0x69, 0xca, 0x20, 0x18, 0xe3, 0x31, + 0x4e, 0xa6, 0x20, 0x1f, 0xfc, 0xd1, 0x5a, 0xc8, + 0x41, 0x0, 0x84, 0xd6, 0x2b, 0x3b, 0x99, 0x4e, + 0xa6, 0x20, 0x1f, 0xfc, 0x92, 0x7b, 0xed, 0xa7, + 0x53, 0x10, 0xc, 0x26, 0xb1, 0x59, 0xdc, 0xb8, + 0x52, 0x0, 0xff, 0xe4, 0x12, 0xc5, 0x67, 0x73, + 0x29, 0xd4, 0xc4, 0x3, 0xa, 0x3d, 0x6e, 0x39, + 0x80, 0x7f, 0xf2, 0xc4, 0xd6, 0x2b, 0x3b, 0x6d, + 0xd0, 0x40, 0x31, 0xc7, 0x41, 0x80, 0x7f, 0xf4, + 0x9, 0x22, 0xe9, 0x44, 0x3, 0x12, 0x20, 0x40, + 0x3f, 0xfa, 0x6b, 0x84, 0x1, 0xc5, 0xe4, 0x1, + 0xe2, 0x7c, 0xdb, 0x74, 0x20, 0xf, 0xfe, 0x20, + 0xbe, 0x98, 0x7, 0x26, 0x98, 0x6, 0x27, 0xe8, + 0x32, 0x48, 0xbd, 0xd5, 0xcb, 0xaa, 0x19, 0xf2, + 0x21, 0xa2, 0xf2, 0x50, 0x3, 0x13, 0x72, 0x80, + 0x71, 0x3e, 0xdc, 0x29, 0x0, 0x44, 0x8d, 0x15, + 0x79, 0x9d, 0x76, 0x97, 0x42, 0x0, 0x85, 0x27, + 0xa5, 0x0, 0x3f, 0xa, 0x3d, 0x6f, 0x65, 0x43, + 0x21, 0x90, 0x88, 0x2, 0x11, 0x11, 0xa2, 0xb4, + 0x5e, 0xf5, 0xb1, 0x80, 0x78, + + /* U+0074 "t" */ + 0x0, 0xff, 0x12, 0xbb, 0xf2, 0x90, 0x7, 0xff, + 0x3d, 0x3a, 0x23, 0xbd, 0x80, 0x3f, 0xf9, 0xc4, + 0x2e, 0x1, 0xff, 0xd5, 0x1f, 0x10, 0xf, 0xfe, + 0xab, 0x89, 0x80, 0x7f, 0xf3, 0x4a, 0x37, 0xff, + 0xad, 0x84, 0x3, 0x96, 0xff, 0xff, 0xeb, 0x50, + 0xf, 0xfe, 0xe9, 0x57, 0x5d, 0xea, 0x62, 0x0, + 0xf2, 0x45, 0xdf, 0xfd, 0x28, 0x1, 0xe2, 0x34, + 0x4e, 0xf1, 0x0, 0xf0, 0x9a, 0x27, 0xfc, 0x42, + 0x1, 0xff, 0xff, 0x0, 0xff, 0xff, 0x80, 0x7f, + 0xff, 0xc0, 0x3f, 0xff, 0xe2, 0x6c, 0x1, 0xe1, + 0x20, 0xf, 0xfe, 0x73, 0x11, 0x0, 0x39, 0x31, + 0x40, 0x3f, 0xf9, 0xa7, 0x6a, 0x40, 0x1c, 0xb5, + 0x92, 0xea, 0x88, 0x56, 0x78, 0x74, 0x10, 0xf, + 0xfe, 0x9, 0xcc, 0x29, 0x0, 0x71, 0xb4, 0x55, + 0xda, 0xa6, 0x1e, 0x39, 0x0, 0x3f, 0xf8, 0x42, + 0xb5, 0x98, 0x96, 0x43, 0x31, 0x8, 0x0, 0x44, + 0x46, 0x8d, 0xac, 0x20, 0x0, + + /* U+0075 "u" */ + 0x17, 0xcf, 0xff, 0x4a, 0x0, 0x7f, 0xf2, 0xe, + 0x7b, 0xff, 0xb1, 0xc8, 0x3, 0xff, 0xfe, 0x1, + 0xff, 0xff, 0x0, 0xff, 0xff, 0x80, 0x7f, 0xff, + 0xc0, 0x3f, 0xff, 0xe0, 0x1f, 0xfc, 0x3, 0x0, + 0xff, 0xea, 0x9, 0x30, 0x7, 0x84, 0x80, 0x3f, + 0xf9, 0xe, 0x1, 0xff, 0x31, 0x88, 0x7, 0x2f, + 0xa0, 0x7, 0xff, 0x14, 0xe2, 0x58, 0x40, 0x3f, + 0x8b, 0xd4, 0x3, 0x85, 0xbd, 0x84, 0x3, 0xfe, + 0x14, 0x8c, 0xc3, 0x90, 0x7, 0xfc, 0x2d, 0xea, + 0x20, 0x1c, 0x93, 0xf9, 0x50, 0xef, 0xa2, 0x6f, + 0x7a, 0xdc, 0xc5, 0x22, 0xa, 0x1, 0xff, 0x24, + 0x5a, 0x88, 0x7, 0x9, 0xab, 0xc4, 0x67, 0x64, + 0x20, 0x25, 0x9c, 0xb7, 0x43, 0x10, 0xf, 0xf8, + 0x96, 0xbf, 0x21, 0x90, 0xc8, 0x44, 0x0, 0x12, + 0x22, 0x34, 0x5e, 0xea, 0x98, 0x80, 0x2, 0x23, + 0x0, 0xf8, + + /* U+0076 "v" */ + 0x17, 0xcf, 0xff, 0x5b, 0x8, 0x7, 0xff, 0x31, + 0x27, 0xbf, 0xfa, 0xd8, 0x40, 0x5a, 0x8c, 0x3, + 0x93, 0x5c, 0x3, 0xff, 0x96, 0x9a, 0xe2, 0x1, + 0x93, 0x5c, 0x40, 0x2, 0xf4, 0x80, 0x1c, 0x9a, + 0xa0, 0x1f, 0xfc, 0x94, 0xd7, 0x10, 0xc, 0x9a, + 0xe2, 0x1, 0x85, 0xf5, 0x0, 0x39, 0x3d, 0x40, + 0x3f, 0xf8, 0xe7, 0xae, 0x20, 0x19, 0x39, 0xc4, + 0x3, 0xc2, 0xfa, 0x80, 0x1c, 0xbe, 0xa0, 0x1f, + 0xfc, 0x53, 0xa7, 0x10, 0xc, 0x9c, 0xa2, 0x1, + 0xf8, 0x5f, 0x50, 0x3, 0x97, 0xd0, 0x3, 0xff, + 0x86, 0x76, 0xe2, 0x1, 0x93, 0x94, 0x3, 0xfe, + 0x17, 0xe4, 0x0, 0xe5, 0xd4, 0x0, 0xff, 0xe0, + 0x9d, 0xa8, 0x80, 0x64, 0xe5, 0x0, 0xff, 0xe0, + 0x8a, 0xf2, 0x0, 0x73, 0xea, 0x0, 0x7f, 0xc5, + 0x6a, 0x40, 0x19, 0x79, 0x40, 0x3f, 0xf8, 0x8b, + 0xca, 0x1, 0x85, 0xf4, 0xc0, 0x3f, 0x89, 0x54, + 0x40, 0x19, 0x7d, 0x40, 0x3f, 0xf8, 0xcb, 0xea, + 0x1, 0x85, 0xe8, 0xc0, 0x3e, 0x25, 0xa2, 0x0, + 0xcb, 0xea, 0x1, 0xff, 0xc8, 0x5e, 0x50, 0xc, + 0x29, 0x66, 0x1, 0xc2, 0xb6, 0x40, 0x19, 0x7d, + 0x40, 0x3f, 0xf9, 0x49, 0xca, 0x20, 0x11, 0x2d, + 0x90, 0x4, 0x2f, 0x66, 0x1, 0x97, 0xd4, 0x3, + 0xff, 0x98, 0x9c, 0xe2, 0x1, 0x12, 0xa8, 0x80, + 0x5f, 0x4c, 0x3, 0x2f, 0x28, 0x7, 0xff, 0x39, + 0x35, 0xc4, 0x2, 0x2b, 0x52, 0x4d, 0x40, 0xc, + 0xbe, 0x80, 0x1f, 0xfd, 0x4, 0xd7, 0x10, 0x8, + 0xeb, 0xa5, 0x0, 0x32, 0xf2, 0x80, 0x7f, 0xf4, + 0x93, 0x5c, 0x40, 0x22, 0x33, 0x0, 0x42, 0xbc, + 0x80, 0x1f, 0xfd, 0x44, 0xa7, 0x10, 0xf, 0x85, + 0xf9, 0x0, 0x3f, 0xf8, 0xa0, + + /* U+0077 "w" */ + 0x1, 0x6b, 0xff, 0xf5, 0xb0, 0x7, 0xff, 0x1d, + 0x6f, 0xff, 0xdd, 0x26, 0x1, 0xff, 0xc6, 0x17, + 0xcf, 0xfe, 0xc7, 0x10, 0x0, 0xbe, 0x18, 0x7, + 0x26, 0x20, 0x7, 0xff, 0x15, 0x31, 0x40, 0x3c, + 0x28, 0x82, 0x0, 0xff, 0xe2, 0xa6, 0x18, 0x6, + 0x24, 0x40, 0x80, 0x42, 0x88, 0x20, 0xe, 0x4c, + 0x30, 0xf, 0xfe, 0x19, 0xe3, 0x88, 0x7, 0xc5, + 0x68, 0x20, 0x1f, 0xfc, 0x34, 0xc5, 0x0, 0xc2, + 0x98, 0x60, 0x1c, 0x78, 0x82, 0x1, 0x85, 0x10, + 0x40, 0x1f, 0xfc, 0x12, 0x44, 0x8, 0x0, 0xd9, + 0x86, 0x1, 0x1e, 0x20, 0x7, 0xff, 0x8, 0xb1, + 0x4, 0x3, 0x26, 0x20, 0x7, 0xc9, 0x88, 0x1, + 0xc7, 0x88, 0x1, 0xff, 0xc0, 0x14, 0xc3, 0x0, + 0xa, 0xed, 0x20, 0x80, 0x49, 0x88, 0x1, 0xff, + 0xc0, 0x14, 0x41, 0x0, 0x63, 0xc4, 0x0, 0xfe, + 0x4c, 0x40, 0xe, 0x4c, 0x40, 0xf, 0xf9, 0x31, + 0x0, 0x24, 0xc4, 0x3d, 0x40, 0x8, 0x53, 0xc, + 0x3, 0xfe, 0x4c, 0x30, 0xc, 0x48, 0x81, 0x0, + 0xfe, 0x14, 0xc3, 0x0, 0xe4, 0xc3, 0x0, 0xfe, + 0x3c, 0x40, 0x8, 0xf5, 0xc0, 0x9, 0x86, 0x1, + 0x12, 0x20, 0x40, 0x3f, 0x8f, 0x10, 0x3, 0xa, + 0x59, 0x0, 0x7f, 0xc4, 0x88, 0x20, 0xc, 0x28, + 0x81, 0x0, 0xf8, 0x91, 0x2, 0x0, 0x15, 0x42, + 0x0, 0xa, 0xa1, 0x0, 0x47, 0x8e, 0x20, 0x1f, + 0x12, 0x20, 0x40, 0x32, 0x61, 0x80, 0x7f, 0xf0, + 0x4f, 0x10, 0x40, 0x31, 0xe2, 0x0, 0x78, 0x53, + 0x8, 0x2, 0x4c, 0x30, 0xc, 0x78, 0x82, 0x1, + 0x26, 0x28, 0x7, 0x85, 0x30, 0x80, 0x32, 0x62, + 0x0, 0x7f, 0xf0, 0xd3, 0x10, 0x3, 0x93, 0x10, + 0x3, 0x93, 0x10, 0x2, 0x4c, 0x40, 0xf, 0x26, + 0x28, 0x6, 0x4d, 0x30, 0xe, 0x4c, 0x40, 0xc, + 0x78, 0x82, 0x1, 0xff, 0xc4, 0x4c, 0x40, 0xe, + 0x43, 0x20, 0x8, 0xf1, 0x0, 0x22, 0xc4, 0x10, + 0xf, 0x93, 0x4c, 0x2, 0x14, 0x41, 0x0, 0x47, + 0xa8, 0x1, 0x85, 0x10, 0x40, 0x1f, 0xfc, 0x51, + 0x7c, 0x30, 0xc, 0x58, 0xe0, 0x2, 0x45, 0x10, + 0x0, 0xa2, 0x8, 0x3, 0xf0, 0xa2, 0x8, 0x2, + 0x2c, 0x41, 0x1, 0x54, 0x10, 0xc, 0xf8, 0x60, + 0x1f, 0xfc, 0x71, 0x54, 0x20, 0xc, 0xb8, 0x60, + 0xf8, 0x60, 0x12, 0x61, 0x80, 0x7f, 0x8b, 0x10, + 0x40, 0x24, 0xf5, 0x5, 0xc3, 0x0, 0xc9, 0x88, + 0x1, 0xff, 0xc9, 0x2c, 0x41, 0x0, 0x85, 0x51, + 0x71, 0x40, 0x24, 0xc4, 0x0, 0xff, 0xe0, 0x26, + 0x20, 0x6, 0x4c, 0x6c, 0x70, 0xc, 0x78, 0x80, + 0x1f, 0xfc, 0xb4, 0xc4, 0x0, 0xc7, 0x50, 0xe2, + 0x0, 0x2c, 0x41, 0x0, 0xff, 0xe0, 0xa6, 0x18, + 0x4, 0x4b, 0x6a, 0x40, 0x11, 0x22, 0x88, 0x7, + 0xff, 0x31, 0x31, 0x0, 0x31, 0x10, 0x40, 0x2, + 0x88, 0x20, 0xf, 0xfe, 0x10, 0xa5, 0x90, 0x4, + 0x45, 0x0, 0x42, 0x98, 0x40, 0x1f, 0xfc, 0xd1, + 0x7c, 0x30, 0xf, 0xc9, 0x86, 0x1, 0xff, 0xc4, + 0x24, 0x40, 0x80, 0x7e, 0x4c, 0x40, 0xf, 0xfe, + 0x8, + + /* U+0078 "x" */ + 0x0, 0x13, 0xe7, 0xff, 0xb1, 0x88, 0x3, 0xff, + 0x8a, 0x2d, 0x7f, 0xfe, 0xc6, 0x20, 0xc, 0x4f, + 0xee, 0x40, 0x18, 0xe2, 0xa, 0x20, 0x1f, 0xfc, + 0x24, 0x88, 0x20, 0x6, 0x27, 0xf6, 0x20, 0xf, + 0x1c, 0x4b, 0x8, 0x4, 0x2b, 0x70, 0x80, 0x1f, + 0xf1, 0x3c, 0x30, 0x80, 0x42, 0xd3, 0x6, 0x1, + 0xfe, 0x48, 0xb5, 0x10, 0x8, 0x5a, 0x60, 0xc0, + 0x3f, 0x2c, 0x49, 0x80, 0x42, 0xb7, 0x8, 0x1, + 0xff, 0xc1, 0x15, 0xb8, 0x40, 0xc, 0x4f, 0xec, + 0x40, 0x18, 0xe2, 0xa, 0x20, 0x12, 0x44, 0x14, + 0x40, 0x3f, 0xf8, 0x82, 0xd3, 0x6, 0x1, 0x8e, + 0x20, 0xa2, 0x26, 0x87, 0x20, 0x8, 0x9e, 0x58, + 0x80, 0x3f, 0xf9, 0x4, 0xfe, 0xe4, 0x1, 0xa, + 0xde, 0xea, 0x10, 0x2, 0x16, 0x98, 0x20, 0xf, + 0xfe, 0x61, 0xc4, 0xb1, 0x0, 0x42, 0x66, 0x10, + 0x0, 0xad, 0xc2, 0x0, 0x7f, 0xf4, 0x17, 0xd8, + 0x3, 0xf0, 0xbf, 0x28, 0x80, 0x7f, 0xf3, 0xc5, + 0x6e, 0x10, 0x3, 0xf0, 0xb4, 0x39, 0x0, 0x7f, + 0xf3, 0x92, 0x2d, 0x44, 0x0, 0x2d, 0x52, 0x80, + 0x18, 0xe2, 0x58, 0x80, 0x3f, 0xf9, 0x47, 0x12, + 0xc2, 0x1, 0x25, 0xc2, 0xb4, 0xc1, 0x80, 0x64, + 0x99, 0x28, 0x80, 0x7f, 0xf1, 0x89, 0xfd, 0xc8, + 0x2, 0x38, 0x95, 0x10, 0x1, 0x3f, 0xb9, 0x0, + 0x64, 0xbb, 0x28, 0x80, 0x7f, 0xf0, 0x89, 0xba, + 0xc, 0x2, 0x16, 0x87, 0x20, 0xf, 0x1c, 0x4b, + 0x8, 0x4, 0x2b, 0x70, 0x82, 0x1, 0xfe, 0x15, + 0x99, 0x18, 0x6, 0x48, 0x82, 0x0, 0x7f, 0x92, + 0x2d, 0x4, 0x2, 0x16, 0xa8, 0x40, 0xf, 0xcb, + 0x76, 0x40, 0xc, 0x51, 0x2c, 0x20, 0x1f, 0xfc, + 0x1, 0x59, 0x84, 0x0, 0xc2, 0xd3, 0x6, 0x1, + 0x8e, 0x6d, 0x44, 0x2, 0x16, 0x97, 0x20, 0xf, + 0xfe, 0x21, 0x34, 0xc1, 0x80, 0x62, 0x7e, 0x72, + 0x0, + + /* U+0079 "y" */ + 0x16, 0xbf, 0xff, 0x5b, 0x8, 0x7, 0xff, 0x31, + 0x27, 0xbf, 0xfa, 0xd8, 0x40, 0x5f, 0x90, 0x3, + 0x92, 0x98, 0x40, 0x3f, 0xf9, 0x47, 0xae, 0x20, + 0x19, 0x35, 0xc4, 0x0, 0x2b, 0xea, 0x20, 0x18, + 0xed, 0x88, 0x3, 0xff, 0x90, 0x76, 0xe2, 0x1, + 0x93, 0x5c, 0x40, 0x39, 0x25, 0xc4, 0x3, 0x1d, + 0xa9, 0x0, 0x7f, 0xf1, 0x8e, 0xd4, 0x40, 0x32, + 0x6b, 0x88, 0x7, 0xc7, 0x4c, 0x40, 0x18, 0xea, + 0x84, 0x1, 0xff, 0xc4, 0x2b, 0x52, 0x0, 0xc9, + 0xae, 0x20, 0x1f, 0xc7, 0x54, 0x30, 0xc, 0x4b, + 0x46, 0x1, 0xff, 0xc2, 0x25, 0x51, 0x0, 0x64, + 0xe7, 0x10, 0xf, 0xf8, 0x9a, 0x8c, 0x3, 0x12, + 0xd9, 0x80, 0x7f, 0xf0, 0x9, 0x6c, 0x80, 0x32, + 0x72, 0x88, 0x7, 0xff, 0x4, 0x5a, 0x50, 0x3, + 0x13, 0x51, 0x80, 0x7f, 0x85, 0x6c, 0xc0, 0x32, + 0x72, 0x80, 0x7f, 0xf1, 0x57, 0xd4, 0x3, 0xb, + 0xd2, 0x0, 0x7e, 0x17, 0xb3, 0x0, 0xcb, 0xca, + 0x1, 0xff, 0xc7, 0x49, 0x61, 0x0, 0x85, 0xf5, + 0x0, 0x3c, 0x2f, 0xa6, 0x1, 0x93, 0xd4, 0x3, + 0xff, 0x92, 0x74, 0xc4, 0x1, 0xb, 0xea, 0x0, + 0x72, 0x62, 0x0, 0x65, 0xe5, 0x0, 0xff, 0xe5, + 0x9d, 0x50, 0xc0, 0x21, 0x7d, 0x40, 0x9, 0x3d, + 0x40, 0x32, 0xfa, 0x80, 0x7f, 0xf3, 0x49, 0xa9, + 0x0, 0x21, 0x7d, 0x40, 0x4d, 0x40, 0xc, 0xbe, + 0xa0, 0x1f, 0xfc, 0xf1, 0x7e, 0x50, 0x8, 0x5f, + 0x63, 0x5c, 0x40, 0x25, 0xf5, 0x0, 0xff, 0xe8, + 0x8a, 0xf2, 0x88, 0x0, 0x59, 0xd8, 0x40, 0x25, + 0xf5, 0x0, 0xff, 0xea, 0x27, 0x38, 0x80, 0x7e, + 0x5f, 0x50, 0xf, 0xfe, 0xb2, 0x53, 0x10, 0x7, + 0x97, 0xd4, 0x3, 0xff, 0xb0, 0xe2, 0x60, 0x1c, + 0xbe, 0xa0, 0x1f, 0xfd, 0x84, 0xd7, 0x10, 0x8, + 0x5b, 0x94, 0x3, 0xff, 0xae, 0x2d, 0xec, 0x20, + 0x11, 0x35, 0x20, 0x7, 0xff, 0x58, 0x9a, 0xa1, + 0x0, 0x32, 0x5c, 0x98, 0x7, 0xff, 0x34, 0xd5, + 0xd5, 0x66, 0x7a, 0xcc, 0x4a, 0x8, 0x4, 0x93, + 0x26, 0x10, 0xf, 0xfe, 0x6a, 0x55, 0xc5, 0x55, + 0x30, 0xa6, 0x20, 0x11, 0xb5, 0xd3, 0x10, 0x7, + 0xff, 0x38, 0x44, 0x4, 0x41, 0x0, 0x9, 0x1a, + 0x34, 0x5e, 0xe4, 0xa0, 0x80, 0x7f, 0xf3, 0x80, + + /* U+007A "z" */ + 0x0, 0xe5, 0xaf, 0xff, 0xfe, 0x9d, 0xb0, 0x80, + 0x7f, 0xf6, 0xc4, 0xc4, 0x3, 0xc9, 0x17, 0x7f, + 0xfc, 0x88, 0x41, 0x0, 0xf1, 0xcc, 0x28, 0x7, + 0xc2, 0x48, 0x9f, 0xfc, 0x67, 0xca, 0x41, 0x0, + 0xc7, 0x1c, 0xc4, 0x1, 0xff, 0xce, 0x27, 0xf7, + 0x20, 0xc, 0x71, 0xce, 0x40, 0x1f, 0xfc, 0xe2, + 0x7e, 0x83, 0x0, 0xc7, 0x1c, 0xe4, 0x1, 0xff, + 0xce, 0x27, 0xe8, 0x30, 0xc, 0x4f, 0xce, 0x40, + 0x1f, 0xfc, 0xe2, 0x7e, 0x83, 0x0, 0xc4, 0xfd, + 0x4, 0x1, 0xff, 0xce, 0x26, 0x98, 0x30, 0xc, + 0x4f, 0xd0, 0x60, 0x1f, 0xfc, 0xe1, 0x69, 0x92, + 0x0, 0x62, 0x7e, 0x83, 0x0, 0xff, 0xe7, 0xb, + 0x54, 0xa0, 0x6, 0x26, 0xe8, 0x30, 0xf, 0xfe, + 0x70, 0xad, 0x42, 0x0, 0x61, 0x69, 0x91, 0x80, + 0x7f, 0xf3, 0x85, 0x6e, 0xc8, 0x20, 0x10, 0xb5, + 0x4a, 0x0, 0x7f, 0xf3, 0x85, 0x6e, 0xca, 0x20, + 0x10, 0xb5, 0x42, 0x0, 0x7f, 0xf3, 0x85, 0x2e, + 0xca, 0x20, 0x18, 0xdf, 0x1, 0x51, 0x3f, 0xf9, + 0x24, 0x20, 0x11, 0xcc, 0x94, 0x40, 0x3c, 0x6d, + 0x57, 0x7f, 0xfc, 0xb9, 0x40, 0x9, 0xc4, 0x80, + 0x3f, 0xfb, 0x20, + + /* U+007B "{" */ + 0x0, 0xff, 0xe1, 0x12, 0xc5, 0xe6, 0xf7, 0xff, + 0x63, 0x88, 0x7, 0xff, 0x5, 0x27, 0x29, 0xd0, + 0xc8, 0xd, 0x15, 0x99, 0x66, 0x1, 0xff, 0xc1, + 0x5f, 0x61, 0x0, 0x92, 0x7f, 0x2e, 0xa6, 0x4e, + 0x82, 0x1, 0xff, 0x11, 0x18, 0x3, 0x26, 0xb8, + 0x80, 0x7f, 0xf1, 0xdb, 0x8c, 0x3, 0x9, 0x88, + 0x7, 0xff, 0x21, 0xc0, 0x3f, 0xfa, 0x42, 0x60, + 0x18, 0x40, 0x3f, 0xf9, 0x43, 0xe0, 0x1e, 0x30, + 0xf, 0xfe, 0x49, 0x80, 0x80, 0x67, 0x1, 0x0, + 0xff, 0xe4, 0x8b, 0x80, 0x7f, 0xf3, 0xc4, 0xc0, + 0x3c, 0x26, 0x1, 0xff, 0xd1, 0x30, 0xf, 0xfe, + 0x41, 0xea, 0x80, 0x67, 0x21, 0x0, 0xff, 0xe1, + 0x89, 0x23, 0x57, 0x38, 0x80, 0x49, 0xc8, 0x1, + 0xff, 0xc1, 0x28, 0xde, 0xdb, 0x95, 0x20, 0x25, + 0x8c, 0xa5, 0x10, 0xf, 0xfe, 0x17, 0x30, 0x88, + 0x3, 0x89, 0x31, 0x8, 0x3, 0xff, 0x86, 0x4d, + 0x7d, 0xd6, 0x42, 0x8, 0xa, 0x47, 0x39, 0x0, + 0x7f, 0xf1, 0x84, 0xde, 0x64, 0x40, 0x11, 0x62, + 0x8, 0x7, 0xff, 0x20, 0x88, 0xe0, 0x19, 0xc4, + 0xc0, 0x3f, 0xf9, 0x42, 0x1, 0xff, 0xcf, 0x13, + 0x70, 0xe, 0x13, 0x0, 0xff, 0xe4, 0x18, 0x80, + 0x73, 0x80, 0x7f, 0xf3, 0x4, 0x3, 0x8c, 0x40, + 0x3f, 0xf9, 0x3, 0xe6, 0x1, 0x84, 0x3, 0xff, + 0x94, 0xe2, 0x1, 0xe1, 0x0, 0xff, 0xe4, 0xb8, + 0x80, 0x78, 0x40, 0x3f, 0xf9, 0x25, 0xe4, 0x1, + 0x9c, 0x88, 0x1, 0xff, 0xc8, 0x14, 0x51, 0x0, + 0x8a, 0x64, 0xe6, 0x22, 0x0, 0xff, 0xe2, 0x9c, + 0x5a, 0x88, 0x0, 0x52, 0x33, 0xb9, 0xfe, 0xc7, + 0x10, 0xf, 0xfe, 0x8, 0xad, 0x76, 0xdc, 0xc4, + 0x1d, 0xcc, 0xd5, 0x98, 0x0, + + /* U+007C "|" */ + 0x0, 0x1c, 0xf7, 0xfd, 0x4a, 0x1, 0xff, 0xff, + 0x0, 0xff, 0xff, 0x80, 0x7f, 0xff, 0xc0, 0x3f, + 0xff, 0xe0, 0x1f, 0xff, 0xf0, 0xf, 0xfe, 0x58, + + /* U+007D "}" */ + 0x0, 0x25, 0x7f, 0xf7, 0x6e, 0xae, 0x58, 0xc4, + 0x3, 0xff, 0x86, 0xde, 0xec, 0xc5, 0x33, 0x11, + 0x11, 0xa7, 0x29, 0x84, 0x3, 0xff, 0x82, 0x4b, + 0x13, 0x2a, 0xcd, 0xb6, 0x10, 0x9, 0x2d, 0x88, + 0x3, 0xff, 0x90, 0x9a, 0xe2, 0x1, 0x17, 0x30, + 0x7, 0xff, 0x25, 0x84, 0xc0, 0x31, 0x10, 0x40, + 0x3f, 0xfa, 0x22, 0x1, 0xff, 0xc8, 0x10, 0xf, + 0x9, 0x80, 0x7f, 0xf2, 0x84, 0xc0, 0x38, 0x40, + 0x3f, 0xf9, 0x2e, 0x1, 0xe3, 0x0, 0xff, 0xe6, + 0x8, 0x4, 0x22, 0x70, 0xf, 0xfe, 0x51, 0x80, + 0x63, 0x1, 0x0, 0xff, 0xe5, 0x18, 0x7, 0xff, + 0x41, 0x84, 0x80, 0x22, 0x34, 0x10, 0xf, 0xfe, + 0x41, 0x5a, 0x90, 0x4, 0x91, 0xb0, 0xa6, 0x42, + 0x1, 0xff, 0xc4, 0x38, 0xfa, 0x63, 0x11, 0x1b, + 0xd6, 0x6f, 0x52, 0x80, 0x7f, 0xf0, 0xc5, 0xf1, + 0x8, 0x40, 0x38, 0x48, 0x82, 0x1, 0xff, 0xc2, + 0x5b, 0xa6, 0x21, 0x2, 0x6b, 0xef, 0xed, 0x84, + 0x0, 0xff, 0xe0, 0x9e, 0x20, 0x6, 0x59, 0x92, + 0x8, 0x7, 0xff, 0x19, 0xcc, 0x40, 0x22, 0x23, + 0x0, 0x7f, 0xf4, 0x44, 0x3, 0xff, 0x94, 0x60, + 0x18, 0xc4, 0x3, 0xff, 0x94, 0xe0, 0x20, 0x10, + 0x83, 0x80, 0x7f, 0xf4, 0xc, 0x40, 0x3f, 0xf9, + 0x42, 0x60, 0x1f, 0xfc, 0xf1, 0x0, 0xf0, 0x98, + 0x80, 0x7f, 0xf2, 0x4, 0x3, 0xe3, 0x10, 0xf, + 0xfe, 0x43, 0x19, 0x0, 0x42, 0x42, 0x1, 0xff, + 0xc5, 0x12, 0x59, 0x84, 0x0, 0xcb, 0x8a, 0x1, + 0xff, 0xc0, 0x4a, 0xff, 0xbb, 0x69, 0x88, 0x0, + 0x27, 0x10, 0x51, 0x0, 0xff, 0xe0, 0x36, 0x33, + 0x67, 0x88, 0x4d, 0x67, 0xe3, 0x98, 0x7, 0xff, + 0x0, + + /* U+007E "~" */ + 0x0, 0xfc, 0x26, 0xd3, 0x7b, 0xdf, 0xee, 0xcb, + 0xa7, 0x52, 0x0, 0xff, 0xe8, 0x8a, 0x4e, 0x62, + 0x59, 0x8, 0x40, 0x2, 0x68, 0xb1, 0x5b, 0xaa, + 0x63, 0x0, 0xff, 0x8e, 0x37, 0xb2, 0x10, 0x40, + 0x30, 0xb5, 0x5b, 0x10, 0xa, 0x45, 0xee, 0xd7, + 0x4e, 0xa4, 0x0, 0x25, 0x9c, 0xdb, 0x86, 0x43, + 0x23, 0x58, 0xbd, 0x72, 0x12, 0x31, 0x0, 0xf1, + 0x19, 0x84, 0xe3, 0x2d, 0xd0, 0x8a, 0x45, 0x8a, + 0xdc, 0x95, 0x20, 0x1, 0x23, 0xcd, 0xe6, 0xe5, + 0x3a, 0x8, 0x13, 0x55, 0x14, 0x40, 0x30, 0xa4, + 0x67, 0x63, 0x90, 0x7, 0xfc, 0x6d, 0x5b, 0xaa, + 0x75, 0x43, 0x10, 0x0, 0x92, 0x34, 0xe6, 0x25, + 0x4, 0x2, + + /* U+3002 "。" */ + 0x0, 0xff, 0xe0, 0x89, 0x1a, 0x2a, 0x19, 0x8, + 0x7, 0xff, 0x1c, 0xda, 0xb7, 0xfb, 0x72, 0xea, + 0xf3, 0x7b, 0xf6, 0x58, 0xc0, 0x3f, 0xe1, 0x6b, + 0xc9, 0x53, 0x47, 0x9b, 0xcc, 0xae, 0x5d, 0xd, + 0xa7, 0x2d, 0x88, 0x3, 0xe5, 0xb9, 0x40, 0x49, + 0xcb, 0x86, 0x43, 0x39, 0x1a, 0x2f, 0xe5, 0x1, + 0x26, 0x14, 0x3, 0x93, 0x10, 0x0, 0xde, 0xc4, + 0x1, 0xff, 0xb, 0x7b, 0x0, 0x13, 0xc, 0x3, + 0x9, 0x88, 0x10, 0xb0, 0x7, 0xff, 0xd, 0x84, + 0x80, 0x4d, 0x80, 0x33, 0xe9, 0x1, 0x1a, 0x8, + 0x7, 0xff, 0x4, 0x50, 0xc8, 0xb, 0x5c, 0x3, + 0x12, 0xd1, 0x82, 0x45, 0x31, 0x0, 0x7f, 0x13, + 0x54, 0x20, 0x1d, 0x29, 0x0, 0x71, 0x3f, 0x4a, + 0x2, 0x4e, 0xeb, 0x2a, 0x66, 0xac, 0xdd, 0x4a, + 0x1, 0xcf, 0x39, 0x0, 0x7e, 0x26, 0xbf, 0xb8, + 0x56, 0x7, 0x73, 0x3b, 0x81, 0x99, 0x17, 0xf8, + 0xc4, 0x1, 0x80, + + /* U+4E00 "一" */ + 0x0, 0x13, 0xe7, 0xff, 0xff, 0xff, 0xff, 0x52, + 0x80, 0x7f, 0xff, 0xc0, 0x3f, 0xf8, 0x66, 0x95, + 0x11, 0xff, 0xff, 0x88, 0xde, 0xe0, + + /* U+4E0A "上" */ + 0x0, 0xff, 0xeb, 0x12, 0xc4, 0x73, 0x18, 0x7, + 0xff, 0xfd, 0xb1, 0xdf, 0xa9, 0x44, 0x3, 0xff, + 0xfe, 0x1, 0xff, 0xff, 0x0, 0xff, 0xff, 0x80, + 0x7f, 0xff, 0xc0, 0x3f, 0xff, 0xe0, 0x1f, 0xff, + 0xf0, 0xf, 0xff, 0xf8, 0x7, 0xff, 0xfc, 0x3, + 0xff, 0xf2, 0x3e, 0x89, 0xff, 0xd4, 0x31, 0x0, + 0xff, 0xf2, 0x13, 0x55, 0xdf, 0xff, 0x4e, 0x1c, + 0x40, 0x3f, 0xff, 0xe0, 0x1f, 0xfe, 0xc3, 0x9e, + 0xff, 0xff, 0xe9, 0xdb, 0x8, 0x7, 0xff, 0xfc, + 0x3, 0xff, 0xfe, 0x1, 0xff, 0xff, 0x0, 0xff, + 0xff, 0x80, 0x7f, 0xff, 0xc0, 0x3f, 0xff, 0xe0, + 0x1f, 0xff, 0xf0, 0xf, 0xff, 0xf8, 0x7, 0xff, + 0xfc, 0x3, 0xff, 0xfe, 0x1, 0xff, 0xff, 0x0, + 0xff, 0xe5, 0x11, 0xa2, 0x7f, 0xf4, 0xcc, 0x80, + 0x38, 0x7d, 0x13, 0xff, 0xb2, 0x62, 0x0, 0x3a, + 0xeb, 0xbf, 0xfe, 0x9c, 0x20, 0x7, 0x13, 0x55, + 0xdf, 0xff, 0x62, 0x1c, 0x40, 0x3f, 0xff, 0xe0, + 0x1f, 0xe0, + + /* U+4E0B "下" */ + 0x1, 0x6b, 0xff, 0xff, 0xff, 0xff, 0xad, 0x84, + 0x3, 0xff, 0xfe, 0x1, 0xfe, 0x17, 0x8b, 0xbf, + 0xfe, 0xa4, 0x20, 0x7, 0x13, 0x55, 0xdf, 0xff, + 0x5e, 0x10, 0x40, 0x2, 0x68, 0x9f, 0xfd, 0x43, + 0x21, 0x0, 0xcd, 0xe8, 0x9f, 0xfd, 0x83, 0x20, + 0xf, 0xff, 0xf8, 0x7, 0xff, 0xfc, 0x3, 0xff, + 0xfe, 0x1, 0xff, 0xfb, 0x5b, 0xaa, 0x42, 0x90, + 0x7, 0xff, 0xfc, 0x0, 0x24, 0x8a, 0xf5, 0xbd, + 0x92, 0xc8, 0x20, 0x1f, 0xff, 0xb2, 0x44, 0x10, + 0x4, 0x26, 0xd3, 0x7d, 0xb7, 0xa, 0x42, 0x1, + 0xff, 0xf5, 0x6d, 0xad, 0xec, 0x96, 0x31, 0x0, + 0x89, 0x1e, 0xb7, 0xf2, 0x58, 0xc4, 0x3, 0xff, + 0xe8, 0x26, 0xd3, 0x9f, 0x92, 0xc6, 0x20, 0x10, + 0x9b, 0x4e, 0x7e, 0x4b, 0x18, 0x80, 0x7f, 0xfd, + 0x4, 0xda, 0x73, 0xf2, 0x98, 0xc4, 0x2, 0x13, + 0x69, 0xcf, 0xb8, 0x41, 0x0, 0xff, 0xfa, 0x89, + 0xac, 0xe7, 0xe4, 0x29, 0x0, 0x61, 0x47, 0xbf, + 0x93, 0x0, 0xff, 0xfc, 0x9, 0xbd, 0x6e, 0xa5, + 0x48, 0x0, 0x2b, 0x70, 0x60, 0x1f, 0xff, 0xd2, + 0x6a, 0xdd, 0x66, 0x29, 0x44, 0x3, 0xff, 0xfe, + 0x1, 0x11, 0x90, 0x7, 0xff, 0xfc, 0x3, 0xff, + 0xfe, 0x1, 0xff, 0xff, 0x0, 0xff, 0xff, 0x80, + 0x7f, 0xff, 0xc0, 0x3f, 0xff, 0xe0, 0x1f, 0xff, + 0xf0, 0xf, 0xff, 0xf8, 0x7, 0xff, 0xfc, 0x3, + 0xe0, + + /* U+4E0D "不" */ + 0x0, 0x1c, 0xf7, 0xff, 0xff, 0xfa, 0xd4, 0x3, + 0xff, 0xfe, 0x1, 0xff, 0xc2, 0x3b, 0xdc, 0xcf, + 0xfe, 0xbd, 0xca, 0x8, 0x7, 0xa, 0x45, 0xe6, + 0x7f, 0xf3, 0xa5, 0x0, 0x3c, 0x46, 0x7f, 0xfd, + 0x70, 0xcb, 0x41, 0x0, 0x85, 0x2e, 0x9d, 0xc, + 0xff, 0xf9, 0xc4, 0x20, 0x1f, 0xfd, 0xc3, 0x8e, + 0x72, 0x0, 0xc9, 0x14, 0xa2, 0x1, 0xff, 0xf8, + 0x49, 0xe7, 0x20, 0xc, 0x51, 0x2c, 0x20, 0x1f, + 0xff, 0x72, 0x6b, 0xa6, 0x20, 0xf, 0x30, 0x90, + 0x7, 0xff, 0xd8, 0x56, 0xb2, 0x50, 0x40, 0x3f, + 0xf8, 0x24, 0xd3, 0x27, 0x31, 0x0, 0xff, 0xf5, + 0xa, 0x4e, 0x52, 0x88, 0x4, 0x45, 0x0, 0x7c, + 0x4b, 0x59, 0x2c, 0xc8, 0xcf, 0xc8, 0x52, 0x0, + 0xff, 0xf1, 0x8a, 0x4e, 0xdb, 0x10, 0x4, 0x4d, + 0x79, 0xe, 0x1, 0xf1, 0x2d, 0xec, 0x29, 0x0, + 0x4, 0xde, 0xb7, 0x54, 0xc4, 0x1, 0xff, 0xdc, + 0x37, 0xbf, 0xb6, 0x30, 0x8, 0xda, 0xf2, 0x50, + 0x44, 0x1, 0xfe, 0x13, 0x7a, 0xdd, 0x4b, 0x10, + 0x4, 0x4b, 0x3b, 0xaa, 0x63, 0x10, 0xf, 0xfe, + 0x99, 0x2d, 0x6e, 0x42, 0x8, 0x4, 0x6f, 0x9b, + 0x28, 0x20, 0x1f, 0xfc, 0x72, 0x69, 0xdd, 0x53, + 0x10, 0x4, 0x4b, 0x39, 0xf6, 0xc6, 0x1, 0xff, + 0xcc, 0x25, 0x8c, 0xda, 0x52, 0x0, 0x84, 0xe3, + 0x31, 0x6, 0x20, 0x1f, 0xfc, 0xe2, 0x59, 0xdd, + 0x52, 0x90, 0x4, 0x29, 0x39, 0xb4, 0xc4, 0x1, + 0xff, 0xc3, 0x24, 0x8b, 0xdd, 0x53, 0x98, 0x6, + 0x25, 0x9c, 0xc3, 0x98, 0x7, 0xff, 0x58, 0x96, + 0xb3, 0x10, 0x82, 0x1, 0x12, 0xce, 0xe4, 0x20, + 0x80, 0x78, 0x96, 0x2f, 0xb6, 0xdd, 0x8, 0x3, + 0x13, 0x56, 0xea, 0x98, 0x80, 0x3f, 0xfb, 0x82, + 0x6f, 0x7f, 0x6c, 0x60, 0x18, 0xde, 0xf2, 0x94, + 0x80, 0x56, 0x6d, 0xd0, 0x40, 0x30, 0xa3, 0xd6, + 0xea, 0x54, 0x80, 0x3f, 0xfc, 0x82, 0x93, 0x98, + 0x83, 0x0, 0xc6, 0x6, 0x0, 0x15, 0xaa, 0x31, + 0xa, 0x3d, 0x6f, 0x5c, 0x29, 0x0, 0x7f, 0xfb, + 0xd, 0xf3, 0x13, 0x15, 0xf4, 0xc4, 0x1, 0xa, + 0x4e, 0xf5, 0xc2, 0x90, 0x7, 0xff, 0xd0, 0xd9, + 0xd4, 0x40, 0x3f, 0xff, 0xe0, 0x1f, 0xff, 0xf0, + 0xf, 0xff, 0xf8, 0x7, 0xff, 0xfc, 0x3, 0xff, + 0xfe, 0x1, 0xff, 0xff, 0x0, 0xff, 0xff, 0x80, + 0x7f, 0xfd, 0xc0, + + /* U+4E3B "主" */ + 0x0, 0xff, 0xea, 0xa, 0x45, 0xe5, 0xb9, 0x88, + 0x7, 0xff, 0xf4, 0x52, 0x25, 0xd0, 0xd2, 0x33, + 0x14, 0xc4, 0x1, 0xff, 0xfa, 0x14, 0x9c, 0xc4, + 0x20, 0x80, 0x9, 0x67, 0x75, 0x28, 0x20, 0x1f, + 0xff, 0x91, 0x37, 0xbf, 0xb6, 0x30, 0x8, 0x9a, + 0xfe, 0x94, 0x80, 0x3f, 0xff, 0x42, 0x93, 0x98, + 0x83, 0x10, 0x0, 0xad, 0x65, 0x28, 0x80, 0x7f, + 0xf6, 0x44, 0x8b, 0xff, 0xaa, 0x2b, 0xf6, 0xa2, + 0x2, 0x6f, 0xec, 0x64, 0x5f, 0xfc, 0xb1, 0x0, + 0xff, 0xe0, 0x2d, 0x6e, 0xff, 0xf5, 0xf2, 0x94, + 0x40, 0x4d, 0xab, 0x37, 0x7f, 0xf9, 0x79, 0x8, + 0x1, 0xff, 0xff, 0x0, 0xff, 0xe4, 0x2d, 0xff, + 0xff, 0xf4, 0x7a, 0x4c, 0x3, 0x96, 0xbf, 0xff, + 0xfa, 0x3d, 0x28, 0x1, 0xff, 0xe0, 0x70, 0xe, + 0x31, 0x0, 0xff, 0xff, 0x80, 0x7f, 0xff, 0xc0, + 0x3f, 0xff, 0xe0, 0x1f, 0xff, 0xf0, 0xf, 0xff, + 0xf8, 0x7, 0xe1, 0x23, 0x3f, 0xfe, 0x6a, 0xf3, + 0x80, 0x71, 0x19, 0xff, 0xf3, 0xc8, 0x40, 0x3f, + 0xf8, 0xeb, 0x19, 0x9f, 0xfc, 0xdb, 0x73, 0x0, + 0xe4, 0x8c, 0xcf, 0xfe, 0x74, 0xa0, 0x7, 0xff, + 0x20, 0xc0, 0x3f, 0xfe, 0x22, 0x1, 0xff, 0xc8, + 0x49, 0xff, 0xff, 0xe6, 0xf4, 0xa0, 0x7, 0x35, + 0xff, 0xff, 0xf3, 0xa9, 0x40, 0x3f, 0xff, 0xe0, + 0x1f, 0xff, 0xf0, 0xf, 0xff, 0xf8, 0x7, 0xff, + 0xfc, 0x3, 0xff, 0xfe, 0x1, 0xff, 0xff, 0x0, + 0xff, 0xfa, 0xb, 0x5f, 0xff, 0xff, 0x57, 0xa5, + 0x0, 0x39, 0xaf, 0xff, 0xff, 0xad, 0x6c, 0x20, + 0x1f, 0xff, 0xf0, 0xf, 0x38, 0x4, 0x2f, 0x39, + 0x9f, 0xff, 0xfc, 0xc7, 0x38, 0x80, + + /* U+4EA7 "产" */ + 0x0, 0xff, 0xed, 0x12, 0xbc, 0xde, 0x62, 0x50, + 0x40, 0x3f, 0xff, 0xe0, 0x3, 0xd, 0x74, 0x33, + 0x35, 0x5a, 0x88, 0x7, 0xff, 0xfc, 0x56, 0xe1, + 0x0, 0x21, 0x5b, 0x84, 0x0, 0xff, 0xf0, 0x89, + 0x1a, 0x27, 0xff, 0x41, 0x4b, 0x10, 0x40, 0x21, + 0x68, 0x82, 0xa2, 0x7f, 0xf3, 0xc8, 0x40, 0x3f, + 0xf8, 0x4b, 0x7b, 0x77, 0xff, 0xd2, 0x84, 0x10, + 0xe, 0x37, 0xab, 0xbf, 0xfe, 0x7c, 0x28, 0x7, + 0xff, 0x9, 0xc4, 0xc8, 0xbf, 0xff, 0x20, 0x1f, + 0xfc, 0x33, 0x8d, 0xdf, 0xfe, 0x6, 0x7c, 0x52, + 0x33, 0xd7, 0xee, 0xff, 0xf4, 0x3e, 0xd1, 0x6a, + 0x3b, 0xf7, 0x7f, 0xf8, 0x10, 0x80, 0x1f, 0xfd, + 0x1, 0x6c, 0x96, 0x45, 0x8f, 0x93, 0x0, 0xff, + 0xe6, 0xa5, 0xc3, 0x3c, 0x56, 0xcb, 0x8, 0x7, + 0xff, 0x75, 0x26, 0x98, 0x80, 0x4, 0xdd, 0x28, + 0x1, 0xff, 0xc9, 0x16, 0xf6, 0x10, 0x9, 0x22, + 0x98, 0x40, 0x3f, 0xfb, 0xe9, 0x30, 0xa2, 0x0, + 0x26, 0x97, 0x20, 0xf, 0xfe, 0x32, 0x44, 0x10, + 0x2, 0x49, 0x93, 0x8, 0x7, 0xff, 0x8d, 0x62, + 0x50, 0xd5, 0xed, 0xc, 0x3, 0xff, 0x88, 0x51, + 0x2c, 0x20, 0x3, 0x89, 0x62, 0x0, 0xff, 0xe9, + 0xa4, 0xff, 0xff, 0xf1, 0x76, 0x10, 0xd5, 0xe7, + 0x3b, 0xff, 0xff, 0x89, 0xae, 0x40, 0x18, 0xe3, + 0x7f, 0xff, 0xf8, 0xd6, 0xc2, 0x1, 0xff, 0xc1, + 0x30, 0xf, 0xff, 0xf8, 0x7, 0xff, 0x14, 0x9a, + 0xf3, 0x3f, 0xfe, 0x52, 0xe2, 0x1, 0xff, 0xc7, + 0x1e, 0x53, 0x3f, 0xff, 0x91, 0x8, 0x7, 0xff, + 0x4, 0x40, 0x3e, 0x10, 0xf, 0xff, 0xf8, 0x7, + 0xf9, 0xc0, 0x3f, 0xff, 0xe0, 0x1f, 0xfc, 0x3, + 0x10, 0xf, 0xff, 0xf8, 0x9, 0xb0, 0x6, 0x12, + 0x10, 0xf, 0xff, 0xf8, 0x0, 0xb8, 0x40, 0x31, + 0x72, 0x80, 0x7f, 0xff, 0xc0, 0xc, 0x44, 0x0, + 0xcc, 0x42, 0x1, 0xff, 0xff, 0x3, 0xc4, 0x0, + 0xc7, 0xae, 0x1, 0xff, 0xff, 0x2, 0x44, 0x8, + 0x4, 0x48, 0xa4, 0x1, 0xff, 0xff, 0x25, 0xb2, + 0x0, 0x85, 0x2c, 0x80, 0x3f, 0xff, 0xc2, 0xb3, + 0x6, 0x1, 0xb, 0xd1, 0x80, 0x7f, 0xff, 0x8e, + 0x2d, 0x0, 0x32, 0x44, 0xc, 0x3, 0xff, 0xfe, + 0x77, 0xa, 0x40, 0x4f, 0xc, 0x20, 0x1f, 0xff, + 0xf0, 0x1, 0x35, 0x66, 0xfc, 0x98, 0x7, 0xff, + 0xfc, + + /* U+4EE5 "以" */ + 0x0, 0xff, 0xe1, 0x12, 0x3c, 0x46, 0x52, 0x0, + 0xff, 0xf0, 0x8a, 0x3b, 0x99, 0x8a, 0x84, 0x20, + 0x1f, 0xfc, 0xe6, 0xd8, 0x77, 0xde, 0xc0, 0x1f, + 0xfe, 0x15, 0xe8, 0x84, 0xca, 0xa1, 0x4c, 0x3, + 0xff, 0xc8, 0x26, 0x62, 0x0, 0xff, 0xe7, 0x89, + 0xb0, 0x7, 0x31, 0x10, 0x3, 0xff, 0xc0, 0x2b, + 0x3b, 0xd9, 0x95, 0x28, 0x80, 0x7f, 0xf3, 0xb, + 0x88, 0x3, 0x9, 0x30, 0x7, 0xff, 0x84, 0x53, + 0x18, 0x40, 0x2, 0xb5, 0x46, 0x20, 0xf, 0xfe, + 0x53, 0x10, 0x80, 0x65, 0xe2, 0x0, 0xff, 0xf1, + 0xa, 0xd5, 0x14, 0x40, 0x24, 0x9f, 0x83, 0x0, + 0xff, 0xe3, 0x9e, 0xb0, 0x6, 0x12, 0x51, 0x0, + 0xff, 0xf2, 0xa, 0x55, 0x18, 0x80, 0x22, 0x7e, + 0x93, 0x0, 0xff, 0xe2, 0xa, 0x99, 0x0, 0x65, + 0xf3, 0x0, 0xff, 0xf4, 0x24, 0xf3, 0x90, 0x4, + 0x4d, 0xd0, 0x60, 0x1f, 0xfc, 0x25, 0xf5, 0x0, + 0xc4, 0x68, 0x1, 0xff, 0xeb, 0x38, 0x82, 0x88, + 0x4, 0x4f, 0xc, 0x20, 0x1f, 0xf1, 0x1a, 0x8, + 0x6, 0x4c, 0x20, 0xf, 0xff, 0x6a, 0xdc, 0x18, + 0x6, 0x4b, 0x92, 0x0, 0xfe, 0x14, 0xc2, 0x0, + 0xc9, 0xea, 0x1, 0xff, 0xef, 0x16, 0x86, 0x46, + 0x8b, 0xc8, 0x20, 0xf, 0xe4, 0xd4, 0x0, 0xc7, + 0x8e, 0x20, 0x1f, 0xff, 0x14, 0x9b, 0x97, 0x41, + 0x0, 0xff, 0x2f, 0xa0, 0x6, 0x3b, 0x51, 0x0, + 0xff, 0xff, 0x80, 0x4b, 0xea, 0x1, 0x89, 0x14, + 0x80, 0x3f, 0xff, 0xe0, 0x1, 0x69, 0x50, 0xc, + 0x75, 0x42, 0x0, 0xff, 0xff, 0x80, 0xe, 0x60, + 0xc0, 0x32, 0x4b, 0x10, 0x7, 0xff, 0xb8, 0x48, + 0x82, 0x1, 0xff, 0xc2, 0x16, 0x87, 0x10, 0x8, + 0x5b, 0xd4, 0x40, 0x3f, 0xfd, 0x4, 0x8d, 0x17, + 0xbd, 0xcd, 0x97, 0x0, 0xff, 0xe0, 0xa, 0xdc, + 0x20, 0x7, 0x18, 0x38, 0x80, 0x7f, 0xf8, 0x4, + 0x46, 0xaf, 0x37, 0xbf, 0xb7, 0x2e, 0x84, 0x20, + 0x5, 0xf4, 0x0, 0xfe, 0x15, 0xab, 0x51, 0x0, + 0xf1, 0x36, 0x6b, 0x98, 0x7, 0xff, 0x75, 0x6b, + 0xb2, 0xa1, 0x90, 0x80, 0x30, 0x9a, 0xc5, 0x67, + 0xca, 0x0, 0x7c, 0x4d, 0x54, 0x41, 0x0, 0x89, + 0x59, 0x4, 0x2, 0x38, 0xdb, 0x62, 0x0, 0xff, + 0xe7, 0x9, 0xb4, 0x54, 0xb0, 0x7, 0xfc, 0x26, + 0xaf, 0x59, 0xdc, 0xca, 0x75, 0x31, 0x0, 0xf1, + 0x35, 0xe4, 0xa0, 0x6, 0x38, 0xfa, 0x9b, 0xd8, + 0x30, 0x8, 0x52, 0x72, 0xd8, 0x80, 0x3f, 0xf8, + 0xa4, 0xb1, 0x59, 0xdc, 0xc9, 0x75, 0x20, 0xe, + 0x12, 0x57, 0x9c, 0xee, 0x65, 0x42, 0x98, 0x80, + 0x7f, 0x89, 0xef, 0x25, 0x4, 0x2, 0x15, 0xad, + 0x72, 0x0, 0x8d, 0xf6, 0xd8, 0x80, 0x21, 0x49, + 0xfa, 0x51, 0x0, 0xff, 0xe1, 0xe, 0xaa, 0x8c, + 0x40, 0x30, 0x92, 0x3c, 0xdf, 0x73, 0x6a, 0x18, + 0xc4, 0x3, 0xff, 0x80, 0x26, 0xd5, 0xba, 0x84, + 0x10, 0x8, 0x96, 0xb2, 0x94, 0x40, 0x3e, 0x14, + 0x9c, 0xa5, 0x10, 0x8, 0x96, 0xb6, 0xc, 0x3, + 0xff, 0x80, 0x75, 0x43, 0x24, 0x79, 0xbd, 0xed, + 0xb8, 0x64, 0x10, 0xf, 0xfe, 0x19, 0x2c, 0xe7, + 0xe4, 0xa9, 0x0, 0x63, 0x6b, 0xca, 0x52, 0x0, + 0xff, 0xe0, 0x8a, 0xd6, 0x41, 0x80, 0x63, 0x7d, + 0xb6, 0x20, 0xf, 0xf1, 0x3e, 0x6d, 0xc3, 0x21, + 0x0, 0x7f, 0xf0, 0xc4, 0xda, 0x2b, 0x7b, 0x69, + 0x8c, 0x40, 0x21, 0x37, 0xad, 0xc9, 0x41, 0x0, + 0xff, 0xe3, 0x93, 0xed, 0x28, 0x80, 0x42, 0x93, + 0xf0, 0x60, 0x1f, 0xfd, 0x1, 0x49, 0xee, 0x64, + 0xba, 0x90, 0x80, 0x62, 0x58, 0xcf, 0xc8, 0x52, + 0x0, 0xff, 0xe6, 0x8a, 0xd6, 0xb9, 0x0, 0x62, + 0x7e, 0x83, 0x0, 0xff, 0xe7, 0xa, 0x45, 0x31, + 0x0, 0x4, 0xd6, 0x2b, 0x7b, 0x69, 0xcc, 0x40, + 0x3f, 0xfa, 0x87, 0x1f, 0x26, 0x2, 0x6f, 0xd2, + 0x60, 0x1f, 0xfd, 0x1, 0x49, 0xcd, 0xd7, 0x65, + 0x3a, 0x90, 0x80, 0x7f, 0xf6, 0xc9, 0xb7, 0xbf, + 0x20, 0xc4, 0x2, + + /* U+4EF6 "件" */ + 0x0, 0xff, 0xe5, 0x88, 0x80, 0x3f, 0xff, 0xe0, + 0x1f, 0x85, 0x6f, 0xbf, 0xb6, 0x94, 0x40, 0x3f, + 0xf9, 0x24, 0xf9, 0xff, 0xad, 0x84, 0x3, 0xff, + 0xc2, 0x2f, 0xca, 0x0, 0x10, 0x26, 0x10, 0xf, + 0x24, 0x5d, 0x4b, 0xa9, 0x80, 0x7f, 0xfc, 0x49, + 0xa9, 0x0, 0x23, 0xaa, 0x18, 0x7, 0x8f, 0x19, + 0x15, 0xa3, 0xd8, 0x3, 0xff, 0xe0, 0x77, 0x46, + 0x1, 0x25, 0x31, 0x0, 0x78, 0x91, 0x2, 0x1, + 0x1e, 0xa0, 0x7, 0xff, 0xb8, 0x5a, 0x18, 0x80, + 0x2, 0xbe, 0xc2, 0x1, 0xe1, 0x4c, 0x30, 0x8, + 0x51, 0x2, 0x1, 0xff, 0xed, 0x38, 0x82, 0x0, + 0x42, 0xf2, 0x80, 0x1f, 0x97, 0x10, 0x3, 0x26, + 0x98, 0x7, 0xff, 0xb0, 0x9b, 0xd8, 0x40, 0x22, + 0x9b, 0x30, 0xf, 0xc7, 0x88, 0x1, 0xcb, 0x5f, + 0xff, 0xdb, 0x6, 0x1, 0x92, 0x7b, 0xff, 0xff, + 0x8b, 0xd2, 0x60, 0x1f, 0xfc, 0x41, 0x69, 0x91, + 0x80, 0x61, 0x54, 0x20, 0xf, 0xc7, 0x4c, 0x20, + 0x1f, 0xff, 0x1, 0x5b, 0x84, 0x0, 0xff, 0xe2, + 0xa5, 0x38, 0x80, 0x49, 0x19, 0x9f, 0xfc, 0xa, + 0x62, 0x0, 0xc6, 0xf7, 0x99, 0xff, 0xc6, 0x83, + 0x0, 0xff, 0xe0, 0xa, 0xd5, 0xa8, 0x80, 0x7f, + 0xf1, 0x5, 0xbd, 0x84, 0x0, 0x2d, 0xee, 0x67, + 0xff, 0xc0, 0x7e, 0x10, 0xc, 0xfc, 0xa6, 0x7f, + 0xfc, 0x52, 0x10, 0xf, 0xf8, 0x9f, 0x69, 0x4, + 0x2, 0x11, 0x0, 0x7f, 0xf0, 0x12, 0x20, 0x80, + 0x11, 0x35, 0x20, 0x7, 0xff, 0x98, 0x52, 0x7e, + 0xc, 0x2, 0x14, 0xab, 0x71, 0x0, 0xfe, 0x15, + 0xe7, 0x10, 0x0, 0xac, 0x49, 0x80, 0x7f, 0xf9, + 0xc5, 0xc4, 0x3, 0x13, 0x55, 0xab, 0x0, 0x7f, + 0xc2, 0xb5, 0xf9, 0xf, 0x70, 0xa2, 0x1, 0xff, + 0xe9, 0x38, 0x96, 0x48, 0xf9, 0x40, 0xf, 0xfe, + 0x28, 0x9b, 0xc2, 0x90, 0x7, 0xff, 0xb5, 0x26, + 0xdc, 0x80, 0x3f, 0xf8, 0xa2, 0x46, 0x7f, 0xfc, + 0xb7, 0xe1, 0x0, 0xcf, 0xca, 0x67, 0xff, 0xca, + 0x10, 0xf, 0xfe, 0x8a, 0x46, 0x67, 0xff, 0x2e, + 0x98, 0x80, 0x31, 0xbd, 0xe6, 0x7f, 0xf2, 0x7a, + 0x4c, 0x3, 0xff, 0xfe, 0x1, 0xff, 0xdc, 0x5a, + 0xff, 0xff, 0xe5, 0xec, 0x18, 0x6, 0x49, 0xef, + 0xff, 0xfe, 0x4e, 0xc1, 0x80, 0x7f, 0xff, 0xc0, + 0x3f, 0xff, 0xe0, 0x1f, 0xff, 0xf0, 0xf, 0xff, + 0xf8, 0x7, 0xff, 0xfc, 0x3, 0xff, 0xfe, 0x1, + 0xff, 0xff, 0x0, 0xff, 0xff, 0x80, 0x7f, 0xff, + 0xc0, 0x3f, 0xff, 0xe0, 0x1f, 0xfe, 0x43, 0x9e, + 0xff, 0xba, 0xc, 0x3, 0xff, 0xa2, 0x4f, 0x9f, + 0xfa, 0xd8, 0x40, 0x3f, 0xf9, 0xa0, + + /* U+4F7F "使" */ + 0x0, 0xff, 0xe6, 0x11, 0x98, 0x80, 0x3f, 0xf9, + 0xa2, 0x46, 0x78, 0x84, 0x3, 0xff, 0xce, 0x2b, + 0x39, 0x8d, 0xfe, 0x94, 0x0, 0xff, 0xe4, 0xa4, + 0xe6, 0x6e, 0x62, 0x0, 0xff, 0xf2, 0x93, 0x42, + 0x0, 0x42, 0xfa, 0x80, 0x1f, 0xff, 0xf0, 0x9, + 0x2e, 0x48, 0x2, 0x39, 0xb4, 0x0, 0xff, 0xff, + 0x80, 0x9, 0xe1, 0x84, 0x0, 0x2b, 0x5, 0x7d, + 0xff, 0xff, 0xca, 0xa4, 0x0, 0xc7, 0x1b, 0xff, + 0xff, 0xcb, 0xc7, 0x20, 0xf, 0xfe, 0x30, 0xb4, + 0xc1, 0x80, 0x49, 0x16, 0x82, 0x2, 0x1, 0xff, + 0xfd, 0x15, 0xb8, 0x40, 0x8, 0x9e, 0x58, 0x41, + 0x27, 0xbb, 0xff, 0x95, 0xb2, 0x80, 0x18, 0x9f, + 0x3b, 0xbf, 0xf9, 0x7a, 0xe4, 0x1, 0xff, 0xc2, + 0x14, 0xbb, 0x28, 0x80, 0x4b, 0x10, 0x20, 0xe, + 0x11, 0xff, 0xe5, 0x11, 0x80, 0x70, 0xf8, 0x8f, + 0xff, 0x34, 0x3, 0xff, 0x84, 0x2b, 0x54, 0x51, + 0x0, 0xc4, 0x46, 0x0, 0xff, 0xff, 0x93, 0xed, + 0x20, 0x80, 0x7f, 0xf1, 0x5, 0x6b, 0x77, 0xff, + 0x91, 0x68, 0x1, 0x8e, 0x7f, 0x77, 0xff, 0x91, + 0x6c, 0x40, 0x1f, 0xe1, 0x49, 0xf8, 0x30, 0xf, + 0xfe, 0x41, 0x89, 0x17, 0xff, 0x20, 0x40, 0x3c, + 0x24, 0x5f, 0xfc, 0x96, 0x10, 0xf, 0xe4, 0x8d, + 0xb6, 0x20, 0x8, 0x99, 0xd4, 0x40, 0x3f, 0xf9, + 0xb, 0x5f, 0xff, 0xfc, 0x1e, 0x94, 0x0, 0xc5, + 0x1b, 0xff, 0xff, 0xc2, 0xa5, 0x0, 0xff, 0xe0, + 0xa4, 0xd3, 0x98, 0x6, 0x38, 0xf9, 0xb3, 0x0, + 0xff, 0xe5, 0x8, 0x7, 0xff, 0x4, 0x4c, 0x3, + 0x84, 0x3, 0xff, 0x88, 0x20, 0x1f, 0xfc, 0x24, + 0xb6, 0x20, 0x1, 0x3d, 0xeb, 0x90, 0x7, 0xff, + 0xfc, 0x3, 0x14, 0x75, 0x5e, 0x42, 0x8, 0x7, + 0xff, 0xfc, 0x3, 0xf1, 0xaa, 0x8, 0x7, 0xff, + 0x45, 0x22, 0xab, 0xff, 0x83, 0x72, 0xa0, 0x18, + 0xea, 0x6a, 0xbf, 0xf8, 0x50, 0x80, 0x1f, 0xfe, + 0x51, 0x35, 0x5f, 0xfe, 0xa, 0x18, 0x80, 0x71, + 0x22, 0xaf, 0xff, 0x8, 0xc4, 0x3, 0xff, 0xbc, + 0x2f, 0x39, 0x95, 0xdb, 0x33, 0xff, 0x85, 0x2a, + 0x1, 0xcb, 0x39, 0x9f, 0xfc, 0x9f, 0x62, 0x0, + 0xff, 0xec, 0x1a, 0x46, 0xe5, 0xd5, 0x1c, 0x8c, + 0xff, 0xc2, 0x26, 0x0, 0xc9, 0x8e, 0x67, 0xff, + 0xc9, 0x21, 0x0, 0xff, 0xec, 0x93, 0xfb, 0x88, + 0xb, 0x55, 0x18, 0x40, 0x3e, 0x14, 0xc3, 0x0, + 0x88, 0xd4, 0x40, 0x3f, 0xfe, 0x22, 0x93, 0xae, + 0x40, 0x29, 0x3f, 0x4c, 0x40, 0x11, 0x4d, 0xa0, + 0x4, 0x4b, 0x66, 0x1, 0xff, 0xf5, 0x38, 0xca, + 0x62, 0x1, 0x59, 0xdd, 0x4c, 0xcc, 0x40, 0x12, + 0x5c, 0x98, 0x7, 0xff, 0xe0, 0x56, 0x73, 0xe, + 0x60, 0x2, 0x66, 0x20, 0x80, 0x5, 0xa1, 0x84, + 0x3, 0xff, 0xf8, 0x25, 0x88, 0x60, 0x1f, 0x85, + 0xb7, 0x25, 0xd4, 0x84, 0x3, 0xff, 0xe8, 0x28, + 0xd3, 0x9f, 0x6e, 0x60, 0x11, 0xb3, 0xb1, 0x88, + 0x9, 0xb4, 0x56, 0xf7, 0x32, 0xe5, 0xd5, 0x8, + 0x40, 0x3f, 0xfc, 0x62, 0x6a, 0xd1, 0x5b, 0xdc, + 0xb9, 0x63, 0x10, 0x13, 0x6a, 0xdc, 0x98, 0x9c, + 0xed, 0xb8, 0x64, 0x20, 0x0, 0x9a, 0x34, 0x55, + 0xef, 0x7f, 0xbb, 0x72, 0xea, 0x61, 0xd9, 0x50, + 0xc8, 0x40, 0x3f, 0xfa, 0x4, 0xf9, 0xd9, 0x52, + 0xea, 0x42, 0x0, 0x24, 0x69, 0xcf, 0xc9, 0x52, + 0x0, 0xf1, 0x23, 0xcd, 0xef, 0xf6, 0x54, 0x32, + 0xa1, 0x8, 0x4, 0x24, 0x68, 0xac, 0xf1, 0x35, + 0x7b, 0x8, 0x20, 0x1f, 0xfc, 0xf2, 0x7d, 0x95, + 0x23, 0x57, 0x9a, 0xde, 0xdb, 0x96, 0x31, 0x0, + 0xff, 0xe2, 0x89, 0xab, 0xcd, 0x5e, 0xf7, 0xfb, + 0x72, 0xea, 0x5d, 0x95, 0xc, 0x96, 0xec, 0xa2, + 0x0, + + /* U+5019 "候" */ + 0x0, 0xff, 0xff, 0x80, 0x7f, 0xf5, 0x8e, 0x7b, + 0xfb, 0x29, 0x88, 0x3, 0xff, 0xfe, 0x1, 0xc9, + 0x4e, 0x20, 0x26, 0x6, 0x40, 0x1f, 0xfc, 0x11, + 0x6a, 0xdd, 0xff, 0xe8, 0xe4, 0x18, 0x7, 0xff, + 0x4d, 0x35, 0xc4, 0x0, 0x2d, 0xca, 0x1, 0xff, + 0xc2, 0x31, 0x62, 0x2f, 0xfe, 0x90, 0xb8, 0x7, + 0xff, 0x49, 0x79, 0x84, 0x0, 0x2f, 0xa8, 0x4f, + 0x7b, 0xb5, 0xb0, 0x80, 0x78, 0x9f, 0x7b, 0xbf, + 0xf9, 0x7b, 0x6, 0x1, 0xff, 0xd6, 0x17, 0x95, + 0x0, 0x85, 0xe9, 0x0, 0x1e, 0xc4, 0x53, 0x89, + 0x80, 0x7e, 0x11, 0xff, 0xe6, 0x18, 0xb8, 0x7, + 0xff, 0x54, 0xe6, 0x46, 0x1, 0xb, 0x51, 0x80, + 0x7f, 0xff, 0xc0, 0x2, 0xb0, 0xe2, 0x1, 0x9f, + 0xc, 0x3, 0xff, 0x82, 0x23, 0xff, 0xd3, 0x21, + 0x70, 0x8, 0x4c, 0x47, 0xf8, 0x3, 0xff, 0x88, + 0x71, 0x68, 0x1, 0xc2, 0xe, 0x1, 0xff, 0xc1, + 0x38, 0xfe, 0xef, 0xfe, 0x8e, 0x41, 0x80, 0x65, + 0xae, 0xef, 0xb5, 0x84, 0x3, 0xff, 0x80, 0x51, + 0xcc, 0x20, 0x1f, 0xfc, 0xbe, 0x53, 0x3f, 0xc2, + 0x1, 0x9, 0x19, 0xff, 0xf4, 0xd4, 0xc0, 0x3f, + 0xe2, 0x69, 0x72, 0x0, 0xff, 0xe6, 0x1b, 0xde, + 0x67, 0xd2, 0x80, 0x10, 0x82, 0x7e, 0x67, 0xff, + 0x46, 0x54, 0x40, 0x3f, 0x13, 0xf4, 0xa0, 0x4, + 0x24, 0x41, 0x0, 0xff, 0xe7, 0x8b, 0x4a, 0x80, + 0x44, 0xb4, 0x60, 0x1f, 0xfd, 0xa3, 0x8f, 0x83, + 0x0, 0x85, 0x6a, 0x54, 0x3, 0xff, 0x9e, 0x53, + 0x66, 0x1, 0x84, 0x4a, 0xef, 0xff, 0xd1, 0x53, + 0x0, 0xf8, 0x95, 0x8, 0x2, 0x15, 0xab, 0x47, + 0x0, 0xff, 0xe7, 0xa4, 0x31, 0x0, 0x71, 0xb4, + 0x47, 0xff, 0x4a, 0x50, 0x40, 0x3c, 0x4d, 0xd2, + 0x86, 0xfb, 0x48, 0x20, 0x1f, 0xfc, 0xf4, 0x99, + 0x28, 0x80, 0x9, 0x62, 0x67, 0xe6, 0x30, 0xe, + 0x36, 0x99, 0xff, 0xe3, 0x20, 0x80, 0x7e, 0x26, + 0xbc, 0x83, 0x0, 0xff, 0xe7, 0x8a, 0x4d, 0x31, + 0x0, 0x5, 0xa6, 0x9d, 0x9b, 0xea, 0x51, 0x0, + 0x85, 0x75, 0x9b, 0xff, 0x8a, 0xa6, 0x1, 0xff, + 0xdd, 0x39, 0x93, 0x8, 0x0, 0x9a, 0xa1, 0x0, + 0x3f, 0xff, 0xe0, 0x11, 0xc6, 0xe4, 0xbc, 0xf4, + 0xa0, 0x80, 0x7f, 0xff, 0xc0, 0x31, 0x3d, 0xfd, + 0x25, 0x7e, 0x67, 0xff, 0x7, 0x9c, 0x40, 0x21, + 0x79, 0xcc, 0xff, 0xe4, 0x53, 0x8, 0x7, 0xff, + 0x64, 0x7d, 0x4c, 0xff, 0xf8, 0xc4, 0x20, 0x1c, + 0x24, 0x67, 0xff, 0xc8, 0x61, 0x30, 0xf, 0xfe, + 0xc9, 0xce, 0x6e, 0xff, 0xf1, 0x32, 0x10, 0x3, + 0xe3, 0x7b, 0xdd, 0xff, 0xe3, 0x73, 0x10, 0x7, + 0xff, 0x68, 0x48, 0xbf, 0xf8, 0x86, 0xd8, 0x80, + 0x1f, 0x1a, 0xe0, 0x11, 0x7f, 0xf1, 0x84, 0x3, + 0xff, 0xd4, 0x2b, 0x76, 0x40, 0x8, 0x95, 0x8c, + 0x0, 0x4f, 0xd0, 0x60, 0x1f, 0xfe, 0x22, 0x9f, + 0xdd, 0xb9, 0x88, 0x3, 0xff, 0x84, 0x71, 0xb4, + 0xa2, 0x0, 0x27, 0xea, 0x9f, 0x72, 0x0, 0x1b, + 0xed, 0x31, 0x0, 0x7f, 0xf8, 0x4, 0x8b, 0x84, + 0x3, 0xfc, 0x26, 0xd5, 0xb8, 0xe6, 0x0, 0x15, + 0xaf, 0x83, 0x0, 0x1c, 0x7c, 0x18, 0x0, 0x56, + 0x77, 0x52, 0xc4, 0x1, 0xff, 0xe8, 0x25, 0x7a, + 0xcf, 0xc9, 0x52, 0x0, 0x1b, 0x56, 0x52, 0x90, + 0x7, 0x89, 0xf7, 0x1c, 0xc4, 0x0, 0x4d, 0x3b, + 0xd7, 0x2c, 0x84, 0x20, 0x1f, 0xfd, 0xb1, 0x48, + 0xce, 0xfd, 0xa8, 0x53, 0x10, 0x14, 0x7b, 0xec, + 0x95, 0x20, 0xf, 0xf8, 0x4e, 0x33, 0xed, 0xcc, + 0x40, 0x2, 0x8d, 0x37, 0xbd, 0xcb, 0x62, 0x0, + 0xff, 0xeb, 0x8a, 0x55, 0x14, 0x40, 0x91, 0xe6, + 0xfb, 0x97, 0x8, 0x20, 0x1f, 0xfc, 0x71, 0x48, + 0xcf, 0xdb, 0x86, 0x42, 0x0, 0x13, 0x43, 0x10, + 0x7, 0xff, 0xc, 0xe3, 0xbf, 0xee, 0x93, 0x0, + 0xff, 0xe0, 0x93, 0x5f, 0x7e, 0xdc, 0x32, 0x8, + 0x7, 0xff, 0x40, 0x49, 0x1e, 0x6f, 0x7f, 0xb2, + 0xc, 0x3, 0x0, + + /* U+505C "停" */ + 0x0, 0xff, 0xe5, 0x1b, 0xd5, 0x25, 0xd8, 0xc4, + 0x3, 0xff, 0x94, 0xb3, 0x99, 0xad, 0x88, 0x3, + 0xff, 0xca, 0x93, 0x25, 0x53, 0x46, 0xa8, 0x7, + 0xff, 0x2c, 0xc8, 0xcf, 0x37, 0x0, 0x7f, 0xf9, + 0x5, 0xbd, 0x44, 0x0, 0x2d, 0xee, 0x20, 0x1f, + 0xfc, 0x91, 0x0, 0xfc, 0x20, 0x1f, 0xfe, 0x22, + 0x9b, 0x40, 0x8, 0x9b, 0xf3, 0x1f, 0xff, 0xfc, + 0xae, 0x94, 0x0, 0xc4, 0xf9, 0xff, 0xff, 0xcb, + 0xb6, 0x10, 0xf, 0xfe, 0x30, 0xb4, 0xb9, 0x0, + 0x4b, 0x12, 0xbe, 0x23, 0xff, 0xed, 0x0, 0xff, + 0xe3, 0xa4, 0x41, 0x0, 0x23, 0x88, 0x28, 0x9b, + 0xe7, 0x77, 0xff, 0xae, 0x98, 0x40, 0x3f, 0xf8, + 0x67, 0x12, 0xc2, 0x0, 0x16, 0x87, 0x20, 0xf, + 0xe1, 0x47, 0x99, 0xff, 0xee, 0xb1, 0x80, 0x7f, + 0xf2, 0x4e, 0x39, 0xc8, 0x3, 0x26, 0xa0, 0x7, + 0xfc, 0x66, 0xb6, 0x6f, 0xfe, 0xee, 0xb0, 0x7, + 0xff, 0x1c, 0xe3, 0x9c, 0x80, 0x3c, 0x60, 0x1f, + 0xfc, 0x83, 0x9e, 0xff, 0xff, 0xe7, 0xeb, 0x90, + 0x7, 0xff, 0x28, 0x52, 0x75, 0xc8, 0x3, 0xff, + 0xa2, 0xe0, 0x1f, 0xfe, 0x83, 0x7d, 0xb6, 0x10, + 0x8, 0x88, 0x20, 0x1f, 0xfc, 0xd7, 0x0, 0xff, + 0xe8, 0x88, 0x7, 0xff, 0x1c, 0x96, 0xf6, 0xc, + 0x2, 0x15, 0xbe, 0xa2, 0x0, 0xff, 0xe6, 0x9c, + 0xf7, 0xff, 0xff, 0x3f, 0x1c, 0x80, 0x3f, 0xf8, + 0xa2, 0x4e, 0x20, 0x11, 0xc6, 0x52, 0x8, 0x7, + 0xff, 0x20, 0xd2, 0x9d, 0xff, 0xfb, 0xbc, 0xc0, + 0x1f, 0xf1, 0xbf, 0x42, 0xb5, 0xeb, 0x90, 0x7, + 0xff, 0x2c, 0x4d, 0xa2, 0x3f, 0xfb, 0xaa, 0x60, + 0x1f, 0xfc, 0x12, 0x7a, 0x94, 0x10, 0xf, 0xfe, + 0x2a, 0xce, 0xef, 0xff, 0xb7, 0x20, 0xc0, 0x3f, + 0xfa, 0x6, 0x45, 0xff, 0xee, 0x31, 0x70, 0xf, + 0xfe, 0xb3, 0x5f, 0xff, 0xff, 0x87, 0xa4, 0xc0, + 0x3f, 0xff, 0xe0, 0x1f, 0xfe, 0xf1, 0x7c, 0xff, + 0xff, 0xec, 0xf4, 0x98, 0x7, 0xff, 0x65, 0x3e, + 0xab, 0x94, 0x2, 0x25, 0x33, 0xff, 0xe1, 0x10, + 0x7, 0x84, 0x8c, 0xff, 0xf8, 0x4b, 0xc0, 0x29, + 0xf7, 0x7a, 0x94, 0x3, 0xff, 0xa0, 0x48, 0xab, + 0x8c, 0x40, 0x2, 0xb3, 0x99, 0xff, 0xc2, 0xb4, + 0x0, 0xc4, 0xdf, 0x99, 0xff, 0xc2, 0xb7, 0x30, + 0x23, 0x44, 0xc6, 0x20, 0x1f, 0xff, 0xf0, 0xf, + 0xff, 0xf8, 0x7, 0xff, 0xfc, 0x3, 0xff, 0xfe, + 0x1, 0xff, 0xc1, 0x11, 0xc0, 0x1e, 0x12, 0x17, + 0x0, 0xff, 0xff, 0xa4, 0x7f, 0x73, 0xff, 0xdd, + 0xb0, 0x60, 0x19, 0xb4, 0x80, 0x3f, 0xff, 0x9, + 0xae, 0x20, 0x1f, 0x84, 0x8d, 0x15, 0xee, 0x54, + 0x3, 0xff, 0xa2, + + /* U+507F "偿" */ + 0x0, 0xff, 0xf4, 0x9, 0x22, 0xae, 0x31, 0x0, + 0xff, 0xf2, 0xa5, 0x77, 0x32, 0xe1, 0x44, 0x3, + 0xc2, 0x6c, 0xea, 0x40, 0x1f, 0xf1, 0x54, 0xd5, + 0x68, 0x40, 0xf, 0xfe, 0x1, 0x34, 0x41, 0x90, + 0x80, 0x3f, 0xfa, 0x2b, 0xca, 0x22, 0x35, 0x16, + 0x10, 0xc, 0x93, 0xf9, 0x31, 0x5f, 0x28, 0x20, + 0x1f, 0xfc, 0xf2, 0x7e, 0x97, 0x74, 0xdf, 0xc1, + 0x80, 0x7f, 0xf3, 0x97, 0xd4, 0x2, 0x26, 0xb3, + 0x0, 0xe4, 0x9a, 0x62, 0x0, 0x13, 0x5e, 0xb1, + 0x0, 0x7f, 0xf2, 0xc9, 0xa6, 0xc, 0x2, 0x38, + 0xf8, 0x30, 0xf, 0xfe, 0x60, 0xb7, 0x28, 0x4, + 0x77, 0x24, 0x1, 0xf9, 0x27, 0xe0, 0x80, 0x23, + 0x99, 0x31, 0x0, 0x7f, 0xf1, 0xcd, 0xfa, 0x50, + 0x0, 0x2b, 0x5a, 0xe4, 0x1, 0xff, 0xcd, 0x29, + 0xb4, 0x0, 0x92, 0x9c, 0x40, 0x3f, 0xe2, 0x7e, + 0x72, 0x1, 0x32, 0x30, 0xf, 0xfe, 0x39, 0x37, + 0xb9, 0x11, 0x23, 0x29, 0x44, 0x3, 0xff, 0x9c, + 0x90, 0xc4, 0x0, 0x15, 0xf6, 0x10, 0x8, 0xe3, + 0x7b, 0xbf, 0x6b, 0x10, 0x0, 0x9e, 0xf3, 0xbb, + 0x6b, 0x90, 0x6, 0x4b, 0xee, 0xec, 0xb6, 0x53, + 0x32, 0xce, 0x77, 0x7e, 0xd8, 0x40, 0xf, 0xfe, + 0x20, 0xb7, 0xa8, 0x80, 0x49, 0xc8, 0x1, 0xce, + 0x26, 0x23, 0xfe, 0x0, 0x8, 0xff, 0x80, 0x3e, + 0x11, 0xff, 0xe5, 0x90, 0x80, 0x7f, 0xf1, 0x12, + 0xe1, 0x0, 0x30, 0x9b, 0x80, 0x7f, 0xf0, 0x5, + 0xaf, 0xff, 0xff, 0xb9, 0x4a, 0x1, 0xff, 0xc8, + 0x38, 0x95, 0x10, 0xf, 0xfe, 0x48, 0xb8, 0x7, + 0xff, 0x70, 0x4c, 0x3, 0xff, 0x8c, 0x4f, 0xee, + 0x40, 0x1f, 0xff, 0xf0, 0xf, 0xc7, 0x1d, 0x6, + 0x1, 0xff, 0xc6, 0x71, 0x22, 0xef, 0x73, 0x44, + 0xff, 0xed, 0x19, 0x1, 0x17, 0xb, 0x80, 0x7c, + 0x73, 0xce, 0x60, 0x10, 0xb3, 0xb0, 0x80, 0x7f, + 0xf0, 0xe, 0x33, 0x76, 0xc7, 0x28, 0xbb, 0xff, + 0xed, 0x6f, 0xd6, 0xef, 0x41, 0x80, 0x78, 0x58, + 0xcc, 0x1, 0x13, 0xec, 0xd8, 0x80, 0x7f, 0xf2, + 0x48, 0x86, 0x7f, 0xfd, 0xa5, 0xe1, 0x0, 0xff, + 0xe0, 0x8a, 0xc4, 0x99, 0x3f, 0x41, 0x80, 0x7f, + 0xf3, 0x12, 0x73, 0x3f, 0xfb, 0x56, 0xe4, 0x1, + 0xff, 0xc3, 0x27, 0xdc, 0x83, 0x0, 0xff, 0xff, + 0x80, 0x7f, 0xc2, 0x20, 0xf, 0xfe, 0x28, 0xac, + 0xe6, 0x7f, 0xfb, 0x6d, 0xc8, 0x3, 0xff, 0xa0, + 0x64, 0x67, 0xff, 0xed, 0x6f, 0x10, 0xf, 0xfe, + 0x78, 0xa4, 0x5d, 0xff, 0xf0, 0xea, 0x14, 0x40, + 0x3c, 0x8f, 0x57, 0x7f, 0xfd, 0x19, 0xa2, 0x0, + 0xff, 0xe8, 0x11, 0xa2, 0x7f, 0xf0, 0x98, 0xf1, + 0x44, 0x2, 0x14, 0xaa, 0x42, 0xa2, 0x7f, 0x95, + 0xc4, 0xc5, 0xd1, 0x3f, 0xf8, 0x44, 0x20, 0x1f, + 0xfd, 0xe2, 0x6e, 0x94, 0x0, 0x85, 0x6e, 0x94, + 0x40, 0x3f, 0xc7, 0x19, 0x8a, 0x8a, 0xd9, 0x41, + 0x0, 0xff, 0xf4, 0x93, 0xf4, 0x98, 0x4, 0x2b, + 0x76, 0x51, 0x0, 0xff, 0xe0, 0x1c, 0x73, 0x90, + 0x0, 0x5a, 0xa8, 0xc4, 0x1, 0xff, 0xe5, 0x38, + 0xf8, 0x30, 0x8, 0x9f, 0x69, 0x44, 0x3, 0xff, + 0x88, 0x71, 0xf0, 0x60, 0x1, 0x49, 0xf8, 0x30, + 0xf, 0xff, 0x1, 0x35, 0xeb, 0x90, 0x0, 0x52, + 0xbe, 0xc, 0x3, 0xff, 0x84, 0x22, 0x22, 0x19, + 0x91, 0x8a, 0xd4, 0x40, 0x22, 0x7d, 0x94, 0x0, + 0xff, 0xed, 0xa, 0x3d, 0xe4, 0xa0, 0x80, 0x44, + 0xa7, 0xb7, 0x35, 0x55, 0xdb, 0x31, 0xba, 0xee, + 0x7f, 0xee, 0xe6, 0xeb, 0x31, 0x76, 0xa8, 0x51, + 0x0, 0xe1, 0x6a, 0xa2, 0x8, 0x7, 0xff, 0x5c, + 0xb6, 0x50, 0x40, 0x3c, 0x48, 0xee, 0x66, 0x2a, + 0xc8, 0x83, 0x31, 0x10, 0x44, 0x1, 0x84, 0x44, + 0x66, 0x44, 0x2a, 0x99, 0x8e, 0xe8, 0x64, 0x10, + 0x0, 0xad, 0x42, 0x0, 0x7f, 0xf5, 0x8e, 0x9c, + 0x40, 0x2, 0x46, 0x8a, 0xa6, 0x63, 0xc4, 0x26, + 0x55, 0x4b, 0xcc, 0x6e, 0xbb, 0x9f, 0xfb, 0xb9, + 0xb9, 0x8b, 0xb5, 0x52, 0x65, 0x10, 0x79, 0xa8, + 0x30, 0x8, 0x5a, 0x1c, 0x80, 0x3f, 0xfa, 0xa7, + 0x3d, 0xfe, 0xed, 0xcb, 0xaa, 0x4c, 0xa1, 0xdc, + 0xcc, 0x55, 0x21, 0x98, 0x88, 0x22, 0x0, 0xff, + 0xe3, 0x8b, 0x7c, 0x33, 0xd6, 0x6b, 0x90, 0x4, + + /* U+5165 "入" */ + 0x0, 0xff, 0xe4, 0x9, 0x9f, 0xff, 0x40, 0x84, + 0x3, 0xff, 0xd6, 0x4d, 0xf9, 0x9f, 0xfc, 0xf9, + 0x40, 0xf, 0xff, 0xf8, 0x7, 0xff, 0xdc, 0x9f, + 0x3f, 0xff, 0xf9, 0x12, 0x80, 0x1e, 0x31, 0x0, + 0xff, 0xff, 0x80, 0x8, 0x80, 0x1c, 0xe2, 0x60, + 0x1f, 0xff, 0xf0, 0x3, 0x89, 0x0, 0x61, 0xf1, + 0x0, 0xff, 0xff, 0x12, 0x2b, 0x8, 0x7, 0x11, + 0x18, 0x3, 0xff, 0xfa, 0xb1, 0x75, 0x46, 0x20, + 0xe, 0x72, 0x20, 0x7, 0xff, 0xed, 0x31, 0x40, + 0x3f, 0xc5, 0xac, 0x1, 0xff, 0xfa, 0x4d, 0x70, + 0xe, 0x11, 0x80, 0x32, 0x61, 0x80, 0x7f, 0xfe, + 0xf, 0x1c, 0x40, 0x31, 0xcd, 0xb8, 0x80, 0x42, + 0xa8, 0x40, 0x1f, 0xff, 0x63, 0xb5, 0x10, 0xc, + 0x94, 0xcb, 0xae, 0x20, 0x11, 0x5a, 0x8, 0x7, + 0xff, 0xd0, 0xed, 0x48, 0x3, 0x27, 0x38, 0x82, + 0x6b, 0x88, 0x4, 0x74, 0xc4, 0x1, 0xff, 0xf1, + 0x15, 0x87, 0x20, 0xc, 0xbc, 0xa2, 0x1, 0x26, + 0xb8, 0x80, 0x47, 0x36, 0x60, 0x1f, 0xfe, 0xf3, + 0x98, 0x40, 0xc, 0x2d, 0xca, 0x1, 0xe4, 0xa6, + 0x20, 0x8, 0x5a, 0x54, 0x40, 0x3f, 0xfd, 0x62, + 0xd0, 0xe4, 0x1, 0x8e, 0x6d, 0x0, 0x3f, 0x1c, + 0xda, 0x0, 0x65, 0x89, 0x30, 0xf, 0xff, 0x49, + 0xc5, 0xa0, 0x6, 0x27, 0xf7, 0x20, 0xf, 0xf0, + 0xb4, 0x31, 0x0, 0x44, 0xfd, 0x6, 0x1, 0xff, + 0xe5, 0x27, 0xf6, 0x20, 0x8, 0x56, 0x24, 0xc0, + 0x3f, 0xf8, 0x47, 0x10, 0x51, 0x0, 0x89, 0xfa, + 0xc, 0x3, 0xff, 0xc0, 0x2b, 0x59, 0x6, 0x1, + 0x8e, 0x2d, 0x44, 0x3, 0xff, 0x88, 0x2b, 0x76, + 0x41, 0x0, 0x89, 0xfa, 0x50, 0x40, 0x3f, 0xfb, + 0x67, 0x1b, 0x4a, 0x20, 0x18, 0xe3, 0x98, 0x40, + 0x3f, 0xf9, 0x2, 0xb5, 0x45, 0x10, 0x8, 0x9a, + 0xf2, 0x50, 0x40, 0x3f, 0xfa, 0xa4, 0xd7, 0xae, + 0x60, 0x18, 0x96, 0xf5, 0xc8, 0x3, 0xff, 0x98, + 0x29, 0x5a, 0xe4, 0x1, 0x89, 0xaf, 0x60, 0xc4, + 0x3, 0xff, 0x9e, 0x4b, 0x3f, 0x28, 0x20, 0x10, + 0xa4, 0xfd, 0x20, 0x80, 0x7f, 0xf4, 0x4e, 0x32, + 0x94, 0x80, 0x31, 0xbe, 0x6c, 0x20, 0x80, 0x7f, + 0xf2, 0x5, 0x23, 0x31, 0x4c, 0x40, 0x18, 0x9f, + 0x6d, 0x88, 0x3, 0xff, 0xac, 0x2b, 0x5f, 0x2a, + 0x20, 0x18, 0xde, 0xfe, 0xdd, 0x4, 0x3, 0xfe, + 0x13, 0x69, 0xcf, 0xb7, 0x31, 0x0, 0x84, 0xde, + 0xf2, 0xc, 0x3, 0xff, 0xb8, 0x4d, 0x5f, 0x6e, + 0x60, 0x18, 0x52, 0x2f, 0xf2, 0x58, 0x80, 0x38, + 0xe3, 0x31, 0x2c, 0x62, 0x1, 0xa, 0x3d, 0xfe, + 0x42, 0x8, 0x7, 0xff, 0x84, 0x52, 0x33, 0x65, + 0x48, 0x3, 0x9, 0xb4, 0x41, 0x44, 0x2, 0x38, + 0xca, 0x62, 0x1, 0x48, 0xbf, 0xb8, 0x41, 0x0, + 0xff, 0xf4, 0x93, 0x56, 0xea, 0x9c, 0xc4, 0xe3, + 0x29, 0x44, 0x3, 0x85, 0x67, 0x3b, 0xed, 0xd0, + 0x40, 0x3f, 0xfe, 0x24, 0xb1, 0x9d, 0x8e, 0x40, + 0x10, + + /* U+5173 "关" */ + 0x0, 0xff, 0xe1, 0x8a, 0x33, 0xc, 0x40, 0x3f, + 0xfa, 0x22, 0xd5, 0x72, 0xe8, 0x42, 0x1, 0xff, + 0xcd, 0x15, 0xbe, 0xb9, 0x96, 0xda, 0x88, 0x7, + 0xff, 0x38, 0xe6, 0x15, 0x1a, 0x2e, 0x5c, 0x40, + 0x3f, 0xf9, 0x82, 0xb3, 0x6, 0x0, 0x15, 0xba, + 0x61, 0x0, 0xff, 0xe5, 0xa, 0xcb, 0x88, 0x4, + 0x71, 0x2c, 0x20, 0x1f, 0xfc, 0xe2, 0x7e, 0x82, + 0x0, 0xa, 0x45, 0xa8, 0x7, 0xff, 0x20, 0xe6, + 0x14, 0x2, 0x27, 0xf7, 0x20, 0xf, 0xfe, 0x91, + 0x3c, 0xb0, 0x80, 0x5, 0x62, 0x4, 0x1, 0xff, + 0xc4, 0x28, 0xe7, 0x20, 0x1, 0x3f, 0x41, 0x80, + 0x7f, 0xf5, 0x92, 0xe4, 0xc0, 0x23, 0x32, 0x10, + 0x7, 0xff, 0x9, 0x21, 0x88, 0x0, 0x4f, 0xd0, + 0x60, 0x1f, 0xfc, 0xf1, 0x22, 0xfe, 0x4, 0xa8, + 0x85, 0x6c, 0xa0, 0x11, 0x7f, 0xf0, 0x9a, 0x2a, + 0x8f, 0x10, 0xb1, 0x22, 0xfe, 0x10, 0xf, 0xfe, + 0x31, 0x37, 0x6e, 0xff, 0x64, 0xc4, 0x2b, 0x37, + 0x7f, 0xf8, 0xf7, 0x4f, 0x15, 0x9b, 0xbf, 0xeb, + 0x50, 0xf, 0xff, 0xf8, 0x7, 0xff, 0x8, 0x9f, + 0x3f, 0xff, 0xf9, 0x14, 0x80, 0x18, 0x5f, 0x3f, + 0xff, 0xf9, 0x34, 0xa0, 0x1f, 0xff, 0xf0, 0xf, + 0xff, 0xf8, 0x7, 0xff, 0xfc, 0x3, 0xc2, 0x3f, + 0xfc, 0xc2, 0x20, 0x7, 0x85, 0x84, 0x7f, 0xf9, + 0xa0, 0x1f, 0xfc, 0x3, 0x8f, 0xee, 0xff, 0xe5, + 0x6c, 0x20, 0x6, 0x16, 0xae, 0xef, 0xfe, 0x66, + 0xb8, 0x80, 0x7f, 0xff, 0xc0, 0x3e, 0x39, 0xef, + 0xff, 0xfe, 0x54, 0xa0, 0x7, 0xe5, 0xaf, 0xff, + 0xfe, 0x56, 0x38, 0x80, 0x7f, 0xf5, 0x93, 0x10, + 0x3, 0xf2, 0xcb, 0x90, 0x7, 0xff, 0xb1, 0x35, + 0x0, 0x31, 0x14, 0x1, 0x1c, 0xd9, 0x80, 0x7f, + 0xfa, 0x49, 0xe1, 0x84, 0x2, 0x48, 0xce, 0x71, + 0x0, 0xb, 0x7b, 0x90, 0x7, 0xff, 0x94, 0x9f, + 0xa0, 0xc0, 0x21, 0x78, 0x51, 0x39, 0x84, 0x0, + 0x8e, 0x3e, 0xc, 0x3, 0xff, 0xc0, 0x2b, 0x3f, + 0x6, 0x1, 0x13, 0xec, 0x18, 0x4, 0x2d, 0x30, + 0x60, 0x11, 0x3f, 0x4a, 0x8, 0x7, 0xff, 0x68, + 0xda, 0xb2, 0x98, 0x80, 0x24, 0x9f, 0x83, 0x0, + 0xf8, 0x9f, 0xa5, 0x4, 0x0, 0x4d, 0x79, 0x2a, + 0x40, 0x1f, 0xfd, 0x21, 0x47, 0xad, 0xc9, 0x52, + 0x0, 0x9, 0xbe, 0x53, 0x10, 0x7, 0xfc, 0x4d, + 0x54, 0x62, 0x0, 0x89, 0xab, 0x31, 0x8, 0x20, + 0x1f, 0xfc, 0x81, 0x35, 0x8a, 0xde, 0xb8, 0x52, + 0x0, 0x8d, 0xab, 0x31, 0x6, 0x20, 0x1f, 0xfc, + 0x31, 0x49, 0xcb, 0x73, 0x10, 0x0, 0x9b, 0xdf, + 0x6d, 0xc3, 0x20, 0x80, 0x7f, 0x8d, 0xef, 0xb9, + 0x94, 0xea, 0x40, 0x11, 0x24, 0x5e, 0xe4, 0xa9, + 0x0, 0x7f, 0xf2, 0x85, 0x23, 0x31, 0x4c, 0x40, + 0x18, 0x91, 0xe6, 0xfb, 0x94, 0xa2, 0x1, 0xe3, + 0x6f, 0x72, 0x0, 0x12, 0x34, 0xdf, 0x6d, 0xba, + 0x10, 0x7, 0xff, 0x48, 0x96, 0x77, 0xb2, 0x5d, + 0x8, 0x2, 0x39, 0x85, 0x10, 0xf, 0x85, 0x27, + 0x3b, 0x9b, 0x72, 0xc8, 0x20, 0x1f, 0xfd, 0xb1, + 0x36, 0x8b, 0xde, 0xdd, 0x9c, 0x80, 0x38, + + /* U+5185 "内" */ + 0x0, 0xff, 0xec, 0x8, 0xf8, 0x3, 0xff, 0xf4, + 0x2d, 0x5d, 0xdb, 0x5c, 0x80, 0x3f, 0xff, 0xe0, + 0x1f, 0xff, 0xf0, 0xf, 0xff, 0xf8, 0x7, 0xff, + 0xfc, 0x3, 0xff, 0xc8, 0x93, 0xdf, 0xff, 0xfd, + 0x1e, 0x94, 0x0, 0xc7, 0x1b, 0xff, 0xff, 0xd2, + 0xa4, 0x0, 0xff, 0xff, 0x80, 0x7f, 0xf0, 0x96, + 0x73, 0x3f, 0xf9, 0x76, 0xe4, 0x1, 0x89, 0xef, + 0x33, 0xff, 0x97, 0x2a, 0x20, 0x1f, 0xfc, 0x41, + 0x35, 0x33, 0xff, 0xe5, 0xb8, 0x7, 0x9b, 0x90, + 0xcf, 0xff, 0x96, 0xa4, 0x1, 0xff, 0xdf, 0x71, + 0x20, 0xc, 0x44, 0x0, 0xff, 0xfc, 0x9, 0x28, + 0x6, 0x3f, 0x50, 0xf, 0xff, 0xc2, 0x69, 0x80, + 0x62, 0xa6, 0x31, 0x0, 0xff, 0xfa, 0xb, 0x72, + 0x0, 0x70, 0x9c, 0x66, 0x25, 0x4, 0x3, 0xff, + 0xe0, 0x73, 0x68, 0x1, 0x23, 0xc2, 0x88, 0x0, + 0x9a, 0xf2, 0x94, 0x80, 0x3f, 0xfd, 0x64, 0xfc, + 0xe4, 0x0, 0x27, 0x88, 0x3d, 0x65, 0x29, 0x0, + 0x9, 0x6b, 0x2d, 0x88, 0x3, 0xff, 0xca, 0x29, + 0x3f, 0x4, 0x0, 0x15, 0x89, 0x30, 0x8, 0x96, + 0xb2, 0x98, 0x80, 0x2, 0x93, 0x98, 0x73, 0x0, + 0xff, 0xef, 0x89, 0xc6, 0xdb, 0x10, 0x0, 0x9a, + 0xa8, 0xa2, 0x1, 0xf0, 0xac, 0xe5, 0xb1, 0x0, + 0x4, 0xe3, 0x71, 0xcc, 0x3, 0xff, 0xb2, 0x4d, + 0x59, 0x87, 0x30, 0x0, 0xa4, 0xfc, 0xa0, 0x7, + 0xff, 0x4, 0x52, 0x72, 0xd8, 0x80, 0x2, 0x71, + 0xb6, 0xe4, 0x1, 0xff, 0xd1, 0x24, 0x8b, 0xdd, + 0x4a, 0x90, 0x0, 0x56, 0x72, 0xd8, 0x80, 0x3f, + 0xf8, 0xc2, 0x93, 0x94, 0xa2, 0x0, 0x14, 0x8c, + 0xa5, 0x10, 0xf, 0xfe, 0x58, 0xa5, 0x65, 0xba, + 0x10, 0x0, 0x51, 0xef, 0xe9, 0x88, 0x3, 0xff, + 0x98, 0x2b, 0x59, 0x8, 0x1, 0xb, 0xe2, 0x88, + 0x7, 0xff, 0x28, 0x52, 0xb6, 0x10, 0xd6, 0x73, + 0xee, 0x10, 0x40, 0x3f, 0xfa, 0x44, 0xf5, 0x93, + 0x5b, 0xa9, 0x41, 0x0, 0xff, 0xe6, 0x9b, 0xde, + 0x53, 0x18, 0x80, 0x7f, 0xf6, 0x4, 0xd9, 0x48, + 0x3, 0xff, 0xfe, 0x1, 0xff, 0xff, 0x0, 0xff, + 0xfe, 0x9, 0xa2, 0xa2, 0x7f, 0xcb, 0x48, 0x20, + 0x10, 0x93, 0x80, 0x7f, 0xfa, 0x45, 0xba, 0xae, + 0xff, 0xea, 0x63, 0x0, 0x85, 0x34, 0xc0, 0x3f, + 0xfd, 0x4b, 0xea, 0x23, 0xf8, 0x8a, 0x33, 0x23, + 0x3d, 0x65, 0x28, 0x4, + + /* U+5199 "写" */ + 0x0, 0x84, 0x8c, 0xff, 0xff, 0xa4, 0x20, 0x1f, + 0x24, 0xe6, 0x7f, 0xff, 0x65, 0x0, 0x3f, 0xf8, + 0x42, 0x45, 0xff, 0xf1, 0x10, 0xf, 0xfe, 0x41, + 0x37, 0xee, 0xff, 0xbe, 0x84, 0xcc, 0x0, 0x78, + 0xcd, 0xdf, 0xfe, 0xdf, 0xc9, 0x0, 0x7f, 0xf5, + 0x1f, 0xc, 0x44, 0x46, 0x4c, 0x20, 0x1f, 0xff, + 0xd3, 0xc5, 0x0, 0xc9, 0xa6, 0x1, 0xff, 0xfd, + 0x14, 0x51, 0x0, 0xc9, 0x7b, 0xbf, 0xfd, 0x7c, + 0x73, 0x0, 0xff, 0xe3, 0xa4, 0x5d, 0xe9, 0xa2, + 0x0, 0xfc, 0x9a, 0x60, 0x1c, 0x22, 0x22, 0xff, + 0xec, 0x70, 0x6, 0x25, 0xeb, 0xbd, 0x8, 0x1, + 0xf0, 0x9a, 0x27, 0x10, 0x7, 0xe3, 0xd4, 0x0, + 0xc9, 0x3b, 0xdd, 0xff, 0xd8, 0xf8, 0x30, 0xc, + 0x46, 0x89, 0x8c, 0x40, 0x3f, 0xf9, 0x44, 0x88, + 0x10, 0x8, 0xf1, 0xc8, 0x47, 0xff, 0xb4, 0x1, + 0xff, 0xd7, 0x4c, 0x30, 0x8, 0x51, 0x2, 0x1, + 0xff, 0xfd, 0x4c, 0x40, 0xc, 0xbc, 0x40, 0x1f, + 0xff, 0xd3, 0xc4, 0x0, 0xe4, 0x9e, 0xff, 0xff, + 0xec, 0xec, 0x10, 0x7, 0xff, 0x50, 0x91, 0x44, + 0x3, 0xff, 0xc2, 0xdc, 0x60, 0x1f, 0xfd, 0x46, + 0xe0, 0x21, 0x1, 0x6b, 0xff, 0xff, 0xea, 0xdb, + 0x8, 0x6, 0x13, 0x10, 0xf, 0xfe, 0xa2, 0x4e, + 0xeb, 0xbf, 0xa5, 0x0, 0x3f, 0xfa, 0xa4, 0x41, + 0x0, 0x88, 0x8c, 0x1, 0xff, 0xfe, 0x21, 0x60, + 0xc, 0xdc, 0x40, 0x1f, 0xfc, 0x61, 0x59, 0xcc, + 0xff, 0xf4, 0xfc, 0x90, 0x6, 0x48, 0xcc, 0xff, + 0xe1, 0xca, 0x88, 0x0, 0xc8, 0xcf, 0xff, 0xd2, + 0x42, 0x1, 0xe1, 0x23, 0x3f, 0xfe, 0x11, 0x18, + 0x0, 0x5e, 0x73, 0x3f, 0xfc, 0xf7, 0x8, 0x1, + 0xc9, 0x17, 0x99, 0xff, 0xc3, 0x97, 0x10, 0x0, + 0x91, 0x9f, 0xff, 0x9d, 0x45, 0xc0, 0x31, 0x62, + 0xa1, 0x9f, 0xff, 0xc, 0x84, 0x3, 0xff, 0xd8, + 0x98, 0x60, 0x19, 0xcc, 0x80, 0x3f, 0xff, 0xa9, + 0xe8, 0x1, 0x93, 0x14, 0x3, 0xff, 0xf8, 0x71, + 0x5, 0x10, 0x9, 0x35, 0xc4, 0x3, 0xff, 0xd2, + 0x4f, 0x9f, 0xfd, 0xdd, 0xb7, 0x77, 0x73, 0xf1, + 0xcc, 0x2, 0x27, 0x86, 0x10, 0xf, 0xff, 0x51, + 0x2d, 0xa0, 0x80, 0x42, 0x38, 0x8b, 0x8, 0x80, + 0x44, 0x6b, 0x17, 0x90, 0x60, 0x1f, 0xfe, 0xd2, + 0x7b, 0xef, 0xff, 0xfe, 0x17, 0x73, 0x29, 0xd0, + 0x40, 0x3f, 0xf9, 0xc0, + + /* U+51FA "出" */ + 0x0, 0xff, 0xea, 0x88, 0xf8, 0x3, 0xff, 0xe8, + 0x2d, 0xbd, 0xdb, 0x1c, 0x80, 0x3f, 0xff, 0xe0, + 0x1f, 0xfd, 0x52, 0x33, 0xe2, 0x10, 0xf, 0xff, + 0x19, 0x19, 0xf1, 0x8, 0x7, 0xe3, 0xad, 0xcc, + 0xd2, 0x80, 0x1f, 0xfe, 0x23, 0xbd, 0xcc, 0xd2, + 0xe0, 0x1f, 0xff, 0xf0, 0xf, 0xff, 0xf8, 0x7, + 0xff, 0xfc, 0x3, 0xff, 0xfe, 0x1, 0xff, 0xff, + 0x0, 0xff, 0xfe, 0x98, 0x8f, 0xff, 0x18, 0xc4, + 0x3, 0xde, 0x23, 0xff, 0xc7, 0x63, 0x0, 0xff, + 0xe5, 0x24, 0xf7, 0x7f, 0xf1, 0xb6, 0xc, 0x3, + 0x13, 0xe7, 0x77, 0xff, 0x1a, 0x94, 0x40, 0x3f, + 0xff, 0xe0, 0x1f, 0xf1, 0xc7, 0xf7, 0x7f, 0xf3, + 0x36, 0xc, 0x3, 0x13, 0xe7, 0x77, 0xff, 0x36, + 0x98, 0x3, 0x89, 0x19, 0xa7, 0x71, 0x0, 0x8f, + 0xff, 0x24, 0xc4, 0x3, 0xde, 0x23, 0xff, 0xcb, + 0x35, 0x77, 0x33, 0x48, 0x40, 0xfd, 0x33, 0xa2, + 0xc8, 0x3, 0xff, 0xd2, 0xdb, 0x33, 0xda, 0xc0, + 0x1f, 0xff, 0xf0, 0xf, 0xff, 0xf8, 0x7, 0xff, + 0xfc, 0x3, 0xff, 0xfe, 0x1, 0xff, 0xff, 0x0, + 0xff, 0xff, 0x80, 0x7f, 0xfc, 0x45, 0xf3, 0xff, + 0xff, 0x93, 0xd2, 0x60, 0x18, 0xa3, 0x7f, 0xff, + 0xf9, 0x56, 0xc0, 0x1f, 0xff, 0xf0, 0xf, 0xf8, + 0x56, 0x73, 0x3f, 0xfd, 0x30, 0x80, 0x1f, 0xfc, + 0x32, 0x53, 0x3f, 0xff, 0x59, 0x17, 0x8, 0x0, + + /* U+51FB "击" */ + 0x0, 0xff, 0xed, 0x2d, 0x6e, 0xec, 0x73, 0x0, + 0xff, 0xff, 0x98, 0x91, 0x77, 0x80, 0x7f, 0xff, + 0xc0, 0x3f, 0xff, 0xe0, 0x1f, 0xff, 0x51, 0x23, + 0x3f, 0xfe, 0x72, 0x73, 0x80, 0x71, 0x29, 0x9f, + 0xff, 0x3c, 0x84, 0x3, 0xff, 0x88, 0x2f, 0x39, + 0x9f, 0xfc, 0xeb, 0x73, 0x0, 0xc2, 0xb3, 0x99, + 0xff, 0xcf, 0xb5, 0x0, 0xff, 0xff, 0x80, 0x78, + 0x40, 0x3f, 0xf8, 0xc2, 0xd7, 0xff, 0xff, 0xcf, + 0x94, 0x0, 0xc2, 0xf9, 0xff, 0xff, 0xce, 0xe9, + 0x40, 0xf, 0xff, 0xf8, 0x7, 0xff, 0xfc, 0x3, + 0xff, 0xfe, 0x1, 0xff, 0xd9, 0x13, 0x55, 0xff, + 0xea, 0xb7, 0xb0, 0x7, 0x1a, 0x2a, 0xff, 0xf5, + 0x4c, 0x40, 0x32, 0xd5, 0xd5, 0x7f, 0xf5, 0x25, + 0x88, 0x3, 0xa, 0x45, 0x57, 0xff, 0x56, 0x50, + 0x3, 0x38, 0x99, 0x17, 0xff, 0x50, 0x44, 0x1, + 0xf0, 0x91, 0x7f, 0xf5, 0x4c, 0x40, 0x31, 0xc6, + 0xef, 0xff, 0x57, 0xa1, 0x0, 0x30, 0xbe, 0xef, + 0xff, 0x5a, 0x50, 0x3, 0xff, 0x80, 0x48, 0xab, + 0x90, 0x80, 0x3f, 0xfc, 0x84, 0x8a, 0xb9, 0x8, + 0x3, 0xff, 0x8e, 0x4b, 0x15, 0x5a, 0x54, 0x80, + 0x3f, 0xfc, 0x42, 0xb1, 0x55, 0xa1, 0x48, 0x3, + 0xff, 0xfe, 0x1, 0xff, 0xff, 0x0, 0xff, 0xff, + 0x80, 0x7f, 0xff, 0xc0, 0x3f, 0xff, 0xe0, 0x1f, + 0xff, 0xf0, 0xf, 0xff, 0xf8, 0x6, 0x3d, 0x55, + 0xff, 0xe3, 0xb7, 0xb0, 0x7, 0x1a, 0x2a, 0xff, + 0xf1, 0x9f, 0x44, 0x3, 0xff, 0xa8, 0x2b, 0x15, + 0x5f, 0xfc, 0x69, 0x62, 0x0, 0xc2, 0x91, 0x55, + 0xff, 0xc6, 0x95, 0x20, 0xf, 0xfe, 0x70, 0xb1, + 0x9f, 0xff, 0xa4, 0x84, 0x3, 0xff, 0x9c, 0x4d, + 0x59, 0x9f, 0xfe, 0xa9, 0x30, 0xf, 0xfe, 0x20, + + /* U+5206 "分" */ + 0x0, 0xff, 0xe8, 0x1b, 0x3b, 0x21, 0x88, 0x7, + 0xff, 0x24, 0x91, 0x9d, 0x4c, 0x3, 0xff, 0xd4, + 0x2f, 0xf3, 0x13, 0x79, 0xf2, 0x60, 0x1f, 0xfc, + 0x41, 0x6b, 0xdb, 0x98, 0xaf, 0x72, 0x0, 0xff, + 0xf3, 0xa4, 0x49, 0x80, 0x64, 0x88, 0x18, 0x7, + 0xff, 0x10, 0x5a, 0x5c, 0x80, 0x23, 0x88, 0x28, + 0x80, 0x7f, 0xf8, 0xc9, 0xe1, 0x84, 0x2, 0x27, + 0x86, 0x10, 0xf, 0xfe, 0x39, 0x44, 0xb0, 0x80, + 0x4b, 0x76, 0x41, 0x0, 0xff, 0xef, 0x93, 0x4c, + 0x18, 0x6, 0x4b, 0x93, 0x0, 0xff, 0xe5, 0xa4, + 0x5a, 0x0, 0x42, 0xb5, 0x45, 0x10, 0xf, 0xfe, + 0xd9, 0x37, 0x4a, 0x0, 0x64, 0x99, 0x30, 0x80, + 0x7f, 0xf3, 0x45, 0x6a, 0x88, 0x20, 0x1, 0x4a, + 0xd7, 0x20, 0xf, 0xfe, 0xb9, 0x3f, 0x49, 0x80, + 0x64, 0x99, 0x31, 0x0, 0x7f, 0xf4, 0x45, 0x6a, + 0xd4, 0x40, 0x23, 0x8f, 0x83, 0x0, 0xff, 0xe9, + 0xa, 0xd7, 0xc1, 0x80, 0x64, 0x9a, 0x62, 0x0, + 0xff, 0xea, 0x8a, 0xdd, 0x28, 0x80, 0x44, 0xf9, + 0x87, 0x30, 0xf, 0xfe, 0x60, 0xa4, 0xe5, 0x29, + 0x0, 0x42, 0xb5, 0x46, 0x10, 0xf, 0xfe, 0xc8, + 0xa5, 0x6b, 0x90, 0x6, 0x38, 0xdb, 0x62, 0x0, + 0xff, 0xe3, 0x9, 0xc6, 0xdb, 0x10, 0x4, 0x29, + 0x19, 0x4a, 0x20, 0x1f, 0xfd, 0xe3, 0x8c, 0xa5, + 0x10, 0x8, 0x52, 0x72, 0xd8, 0xc0, 0x3f, 0xf8, + 0x6, 0xd5, 0x98, 0x73, 0x0, 0xc4, 0xfb, 0x6e, + 0x40, 0x1f, 0xfe, 0x31, 0x5a, 0xd8, 0x30, 0xc, + 0x29, 0x39, 0xb2, 0xa4, 0x1, 0xc9, 0x1b, 0x92, + 0xa4, 0x1, 0x8d, 0xee, 0xc5, 0x9f, 0xff, 0xfe, + 0x8d, 0x45, 0xdc, 0x73, 0x0, 0xe2, 0x68, 0xb3, + 0x0, 0xc9, 0x50, 0xa4, 0x0, 0x14, 0x9d, 0xc8, + 0x43, 0x0, 0xff, 0xf5, 0x39, 0x10, 0x4e, 0x33, + 0x10, 0x82, 0x25, 0xac, 0x93, 0x0, 0xe2, 0x5a, + 0xcc, 0xbe, 0xd8, 0x80, 0x24, 0x8c, 0xcf, 0xfe, + 0x24, 0x20, 0x7, 0x1b, 0xde, 0x67, 0xff, 0x22, + 0x10, 0x3, 0xff, 0x80, 0x6f, 0x7f, 0xea, 0x51, + 0x0, 0xff, 0x9, 0x98, 0x40, 0x3c, 0x24, 0x67, + 0xff, 0xc3, 0x10, 0x60, 0xc, 0x2b, 0x68, 0x67, + 0xff, 0xc8, 0x21, 0x0, 0xf0, 0x80, 0x7e, 0x11, + 0x0, 0x7f, 0xf7, 0x1f, 0x8, 0x3, 0x2e, 0x18, + 0x7, 0xff, 0xfc, 0x3, 0x1e, 0x28, 0x6, 0x2c, + 0x70, 0xf, 0xfe, 0x89, 0x80, 0x7f, 0xf9, 0x4e, + 0xd0, 0x40, 0x21, 0x43, 0x20, 0xf, 0xfe, 0x51, + 0x88, 0x6, 0x10, 0x70, 0xf, 0xff, 0x19, 0xd3, + 0x10, 0x4, 0x2f, 0xa8, 0x1, 0xff, 0xca, 0x10, + 0xf, 0x84, 0x3, 0xff, 0xc4, 0x2d, 0xc, 0x20, + 0x10, 0xb5, 0x20, 0x7, 0xff, 0x2c, 0xc5, 0xc0, + 0x31, 0xf8, 0x80, 0x7f, 0xf7, 0xc5, 0x2e, 0x10, + 0x3, 0x24, 0x49, 0x80, 0x7f, 0xf3, 0x7, 0xc8, + 0x3, 0x8, 0x18, 0x7, 0xff, 0x74, 0x5a, 0xa8, + 0xa2, 0x1, 0x13, 0xc3, 0x8, 0x7, 0xff, 0x35, + 0x88, 0x40, 0x33, 0x10, 0x80, 0x7f, 0xf6, 0x89, + 0x6b, 0x25, 0x4, 0x2, 0x38, 0xf8, 0x30, 0xf, + 0xfe, 0x70, 0x93, 0x0, 0x61, 0x26, 0x0, 0xff, + 0xeb, 0x92, 0x45, 0xe5, 0x29, 0x0, 0x44, 0xb5, + 0xae, 0x40, 0x1f, 0xfd, 0x4, 0xc3, 0x0, 0xcb, + 0xc4, 0x1, 0xff, 0xd1, 0x13, 0x57, 0xbd, 0xd5, + 0xba, 0x8, 0x4, 0x4d, 0x79, 0x4a, 0x20, 0x1f, + 0xf0, 0x91, 0x4, 0x60, 0xf, 0xf0, 0x9c, 0x4a, + 0x0, 0x62, 0xc4, 0x10, 0xf, 0xfe, 0x69, 0xbe, + 0x77, 0x32, 0xa1, 0x8, 0x2, 0x13, 0x7a, 0xdd, + 0x4a, 0x8, 0x7, 0xff, 0x9, 0x6f, 0x3b, 0xaf, + 0xff, 0xf7, 0x63, 0x98, 0x4, 0x29, 0xc, 0x40, + 0x1f, 0xfc, 0xe3, 0x6a, 0x50, 0xc, 0x4a, 0xf3, + 0x9f, 0x90, 0xa4, 0x1, 0xff, 0xc6, 0x4d, 0x71, + 0x0, 0xff, 0xe0, 0x89, 0x1a, 0x35, 0x65, 0xa8, + 0x80, 0x7f, 0xf4, 0x5, 0xab, 0x31, 0xbf, 0xb5, + 0xc, 0x62, 0x1, 0xff, 0xcb, 0x49, 0xef, 0xff, + 0xfe, 0xf, 0x6e, 0x5c, 0xa9, 0x0, 0x7f, 0xf2, + 0xc0, + + /* U+5207 "切" */ + 0x0, 0xff, 0xff, 0x80, 0x7f, 0xf3, 0x52, 0x7f, + 0xf7, 0x49, 0x80, 0x7f, 0xff, 0xc0, 0x3f, 0xf9, + 0xc2, 0x67, 0xff, 0xe2, 0x21, 0x0, 0xff, 0xec, + 0x93, 0x76, 0x67, 0xff, 0x86, 0x10, 0x3, 0xff, + 0xb4, 0x2c, 0x45, 0xff, 0xc0, 0x10, 0xf, 0xc2, + 0x45, 0xff, 0xc4, 0x10, 0xf, 0xff, 0x9, 0x35, + 0xee, 0xff, 0xf0, 0x29, 0x80, 0x38, 0xa3, 0x37, + 0x7f, 0xf8, 0xac, 0x20, 0x1f, 0xfe, 0xf3, 0x0, + 0xe1, 0x0, 0xff, 0xf6, 0x89, 0x1a, 0xb3, 0xc4, + 0xd5, 0xef, 0x63, 0x90, 0x7, 0xc2, 0x1, 0xf0, + 0x98, 0x7, 0xff, 0x74, 0xc0, 0x30, 0xa4, 0x55, + 0xef, 0x7f, 0xbb, 0x72, 0xa6, 0x1d, 0x95, 0x8, + 0x4f, 0x1c, 0x3, 0xff, 0x84, 0xe0, 0x20, 0x1f, + 0xfc, 0x47, 0x0, 0xff, 0xe0, 0x9a, 0xbc, 0x4d, + 0x66, 0xf7, 0xda, 0x80, 0x71, 0x22, 0xa1, 0x8, + 0x6, 0x13, 0x45, 0x67, 0x89, 0xbc, 0xda, 0x50, + 0xf, 0xc2, 0x1, 0xc2, 0x60, 0x1f, 0xfd, 0x36, + 0xe8, 0x76, 0x53, 0x21, 0x0, 0xfc, 0x6d, 0x13, + 0x79, 0xbd, 0xfe, 0xec, 0xba, 0x98, 0x76, 0x43, + 0x21, 0x0, 0xff, 0xec, 0x8, 0x7, 0x8, 0x7, + 0x27, 0x3b, 0x3c, 0x4d, 0x66, 0xca, 0x80, 0x61, + 0x5a, 0x76, 0x43, 0x21, 0x0, 0xff, 0xe4, 0x89, + 0xb8, 0x7, 0x18, 0x80, 0x7f, 0xf4, 0xc5, 0x62, + 0x61, 0xd9, 0x4c, 0x88, 0x60, 0x1f, 0xfd, 0x63, + 0xe1, 0x0, 0xc4, 0x2c, 0x1, 0xff, 0xc6, 0x30, + 0xe, 0x30, 0xf, 0xff, 0x43, 0x9, 0x0, 0x66, + 0xe2, 0x0, 0xff, 0xe2, 0x88, 0x7, 0x8, 0x7, + 0xff, 0xa0, 0x48, 0x80, 0x1c, 0x44, 0x0, 0xff, + 0xe7, 0x38, 0x7, 0xff, 0x5c, 0x90, 0xc4, 0x3, + 0xfe, 0x5f, 0x50, 0xc, 0x7e, 0xa0, 0x1f, 0xfc, + 0x63, 0x10, 0xc, 0x62, 0x1, 0xff, 0xd7, 0x14, + 0xfc, 0xee, 0x5b, 0x10, 0x7, 0x88, 0xd4, 0x40, + 0x22, 0x45, 0x10, 0xf, 0xfe, 0x28, 0x83, 0x80, + 0x78, 0x40, 0x3f, 0xfb, 0xe, 0x0, 0x15, 0xe1, + 0x0, 0xe1, 0x4c, 0x30, 0xc, 0xf8, 0x60, 0x1f, + 0xfc, 0x63, 0x10, 0xe, 0x1f, 0x0, 0xff, 0xe6, + 0x38, 0x7, 0xf8, 0xf8, 0x40, 0x23, 0xf1, 0x0, + 0xc2, 0xf4, 0x80, 0x19, 0x7d, 0x0, 0x3f, 0xf8, + 0xe3, 0xe2, 0x1, 0x9c, 0x4c, 0x3, 0xff, 0x86, + 0xe2, 0x20, 0x8, 0x53, 0x99, 0x57, 0xf3, 0x42, + 0x90, 0x4, 0xe6, 0x40, 0x11, 0x35, 0x18, 0x4, + 0x2d, 0xca, 0x1, 0xff, 0xc8, 0x71, 0x30, 0xe, + 0x31, 0x0, 0xff, 0xe1, 0x9e, 0x20, 0x80, 0x44, + 0xb3, 0x55, 0xfa, 0x54, 0x80, 0x25, 0xf5, 0x0, + 0xa, 0xc4, 0x98, 0x4, 0x2f, 0x48, 0x1, 0xff, + 0xc9, 0x12, 0x10, 0xc, 0x42, 0x1, 0xff, 0xc5, + 0x4b, 0xd9, 0x75, 0x44, 0x8c, 0xff, 0x22, 0x15, + 0xa7, 0x2d, 0x44, 0x12, 0x2d, 0x44, 0x2, 0x48, + 0x81, 0x80, 0x7f, 0xf2, 0x48, 0x8e, 0x1, 0x88, + 0x5c, 0x3, 0xff, 0x8c, 0x26, 0xd1, 0x57, 0x76, + 0x67, 0xeb, 0xb5, 0x4b, 0x18, 0x93, 0x5d, 0x30, + 0x80, 0x47, 0x12, 0xc2, 0x1, 0xff, 0xca, 0x6d, + 0x30, 0xc, 0xdc, 0x40, 0x1f, 0xfd, 0xa1, 0x5a, + 0xc9, 0x41, 0x0, 0x8e, 0x3d, 0xc8, 0x3, 0xff, + 0x96, 0x78, 0x80, 0x18, 0x4d, 0x44, 0x3, 0xff, + 0xac, 0x4b, 0x39, 0xf4, 0xa2, 0x1, 0x13, 0x5e, + 0xb9, 0x80, 0x7f, 0x11, 0x9e, 0x22, 0xfe, 0x48, + 0xf7, 0x10, 0xc, 0x98, 0x60, 0x1f, 0xfd, 0x31, + 0x59, 0xdd, 0x53, 0x18, 0x80, 0x44, 0xb5, 0x92, + 0x82, 0x1, 0xff, 0x34, 0xee, 0x63, 0x77, 0xfa, + 0xdc, 0xc0, 0x31, 0xc4, 0x10, 0x3, 0xff, 0xa8, + 0x2b, 0x54, 0x30, 0x8, 0x96, 0x77, 0x54, 0xa2, + 0x1, 0xff, 0xc2, 0x4f, 0x40, 0xf, 0xfe, 0x0, + 0x92, 0x2c, 0x66, 0x1c, 0x80, 0x3f, 0xfa, 0xe6, + 0xfb, 0x98, 0xdd, 0x53, 0x10, 0x7, 0xff, 0x1d, + 0x6b, 0xff, 0xff, 0x81, 0xdb, 0x74, 0xe6, 0x1, + 0xfc, + + /* U+5230 "到" */ + 0x0, 0xff, 0xff, 0x89, 0x17, 0x8, 0x7, 0xc2, + 0x3f, 0xfe, 0x10, 0xf, 0xfe, 0x61, 0xc6, 0x6e, + 0xd9, 0x8, 0x1, 0xcb, 0x5d, 0xdf, 0xfe, 0xa, + 0x40, 0xf, 0xfe, 0xc9, 0x17, 0xff, 0x4, 0x40, + 0x3f, 0x8, 0x88, 0xbf, 0xf9, 0x26, 0x0, 0x14, + 0x67, 0x79, 0x8c, 0x40, 0x3f, 0xf9, 0xcb, 0x3b, + 0xbf, 0xfc, 0xb, 0x40, 0xe, 0x38, 0xfe, 0xdd, + 0xff, 0xe4, 0xca, 0x1, 0x6c, 0x46, 0xbb, 0x10, + 0x7, 0xff, 0x68, 0x57, 0x90, 0x3, 0x24, 0xb0, + 0x80, 0x7c, 0x28, 0xc8, 0x40, 0x1f, 0xfe, 0xf1, + 0x7e, 0x40, 0x8, 0x5b, 0xd4, 0x40, 0x38, 0x56, + 0xbe, 0xe6, 0xfe, 0xc, 0x3, 0xff, 0xd8, 0x2f, + 0x48, 0x1, 0x13, 0x52, 0x0, 0x7c, 0x2b, 0x10, + 0x40, 0x1, 0x3e, 0xd2, 0x88, 0x7, 0xff, 0xa0, + 0xa6, 0xcc, 0x2, 0x3a, 0xa1, 0x80, 0x7f, 0x89, + 0xaa, 0x8a, 0x20, 0x2b, 0x5a, 0xc4, 0x1, 0xff, + 0xe2, 0x11, 0x96, 0xd8, 0x80, 0x23, 0x43, 0x14, + 0x49, 0x57, 0x33, 0x4e, 0xf3, 0x69, 0xa8, 0x80, + 0x47, 0x3c, 0xe4, 0x1, 0xff, 0xda, 0x16, 0xbf, + 0xfb, 0xba, 0xa6, 0x10, 0xc, 0x6f, 0x79, 0x77, + 0x55, 0x69, 0x9a, 0x23, 0x3b, 0x20, 0x80, 0x71, + 0xc7, 0x39, 0x0, 0x7f, 0xf6, 0x4, 0x88, 0x1, + 0xfc, 0x23, 0x11, 0x63, 0x39, 0x12, 0x55, 0x99, + 0xa7, 0x7a, 0x22, 0x99, 0xa1, 0x44, 0x0, 0x71, + 0x2c, 0x2e, 0x1, 0xff, 0xd6, 0x49, 0xee, 0xbf, + 0xfd, 0xdd, 0x6e, 0xec, 0xdf, 0xd3, 0x31, 0x13, + 0x2a, 0x65, 0x11, 0x3b, 0xcc, 0xd3, 0xdd, 0x94, + 0x49, 0x71, 0x40, 0x3f, 0xfb, 0x42, 0x30, 0x7, + 0xff, 0x8, 0xd2, 0x9d, 0xf6, 0xa8, 0x80, 0x7f, + 0xc2, 0xb5, 0xdb, 0x4e, 0x62, 0xe0, 0x1f, 0xff, + 0xf0, 0xf, 0xff, 0xf8, 0x7, 0xff, 0xa8, 0x9f, + 0x3b, 0xbf, 0xf8, 0x5b, 0x6, 0x1, 0x92, 0x7b, + 0xbf, 0xf8, 0x78, 0xe4, 0x1, 0xff, 0xde, 0x11, + 0xff, 0xe1, 0x80, 0x7f, 0x84, 0x7f, 0xf8, 0x40, + 0x1f, 0xfd, 0xf2, 0x7c, 0xee, 0xff, 0xe1, 0x63, + 0x90, 0x6, 0x38, 0xde, 0xef, 0xfe, 0x16, 0xb9, + 0x0, 0x7f, 0xf7, 0x84, 0x7f, 0xf8, 0x9e, 0x20, + 0x19, 0xc4, 0xc4, 0x7f, 0xf8, 0x60, 0x1f, 0xff, + 0xf0, 0xf, 0xfe, 0x11, 0xcf, 0x7f, 0xdb, 0x6, + 0x1, 0xff, 0xff, 0x0, 0xff, 0xf8, 0xbf, 0x29, + 0xa2, 0x15, 0x98, 0xf1, 0x9, 0xaa, 0x5e, 0x63, + 0x7a, 0x50, 0x3, 0xff, 0xb2, 0x24, 0x43, 0x32, + 0x2a, 0x99, 0x8f, 0x10, 0x9a, 0xa5, 0xe7, 0xc9, + 0x80, 0x63, 0x7b, 0xcb, 0xb5, 0x4c, 0xa1, 0xdc, + 0xca, 0xa4, 0x33, 0x10, 0x98, 0x7, 0xff, 0x2d, + 0xc0, 0x3f, 0xf8, 0x9, 0x3d, 0xba, 0xcc, 0x5d, + 0x52, 0x65, 0xe, 0xe6, 0x55, 0x21, 0x90, 0x80, + 0x78, 0x48, 0x86, 0x8a, 0xa6, 0x78, 0x84, 0xd5, + 0xdb, 0x37, 0xb9, 0x48, 0x1, 0xf0, 0x9a, 0xae, + 0x44, 0xf9, 0x5b, 0x50, 0x40, 0x30, 0xb8, 0x6, + 0x6e, 0x30, 0x8, 0x44, 0x46, 0x88, 0x56, 0x77, + 0x44, 0xd5, 0x2f, 0x31, 0xbd, 0xff, 0x76, 0xeb, + 0x2e, 0xa9, 0x30, 0xee, 0x65, 0x44, 0x19, 0x8, + 0x80, 0x3f, 0xcb, 0xd5, 0x55, 0xdf, 0xd5, 0x2c, + 0x40, 0x10, 0xa6, 0x98, 0x6, 0x27, 0xde, 0xff, + 0x77, 0x37, 0x2e, 0xd5, 0x31, 0x7, 0x65, 0x52, + 0x19, 0x88, 0x40, 0x3f, 0xfa, 0x62, 0xfa, 0x80, + 0x1f, 0xc2, 0x22, 0x34, 0x7a, 0xca, 0x50, 0xf, + 0x84, 0x40, 0x1f, 0xfe, 0x91, 0x6b, 0xff, 0xfe, + 0xee, 0x6e, 0x5c, 0x29, 0x0, 0x60, + + /* U+5272 "割" */ + 0x0, 0xff, 0xe5, 0xa, 0xcd, 0xdd, 0x4c, 0x40, + 0x1f, 0xfd, 0xe1, 0x34, 0x55, 0x90, 0xc4, 0x3, + 0xff, 0x98, 0x64, 0x89, 0xde, 0x20, 0x1f, 0xfd, + 0xe5, 0xaa, 0xf8, 0x80, 0x3f, 0xf9, 0x83, 0xe0, + 0x1e, 0x70, 0xf, 0xff, 0x50, 0xb6, 0x7f, 0xff, + 0xf1, 0xb1, 0xc8, 0x2, 0x16, 0xbf, 0xff, 0xfe, + 0x2f, 0x41, 0x80, 0x5, 0x22, 0xab, 0x39, 0x80, + 0x7f, 0xf4, 0x84, 0x8c, 0xff, 0xfa, 0xa4, 0x1, + 0xfe, 0x34, 0x55, 0xda, 0xc0, 0x1f, 0xfd, 0x11, + 0x7e, 0xcc, 0xff, 0xe0, 0x75, 0x38, 0x8c, 0x9, + 0xf9, 0x9f, 0xf6, 0xda, 0x0, 0x7f, 0xfc, 0x85, + 0x88, 0xb0, 0x80, 0x7f, 0xfb, 0xd, 0x4c, 0xf2, + 0x7d, 0xdf, 0xff, 0x3, 0xa8, 0x80, 0x21, 0x7f, + 0xbb, 0xff, 0xaa, 0xd8, 0x8c, 0xcb, 0xe2, 0x1, + 0xff, 0xd6, 0x15, 0x9c, 0xc6, 0xd8, 0x9a, 0x27, + 0xff, 0x0, 0xc8, 0x3, 0x84, 0xd1, 0x3f, 0xf8, + 0x4, 0xf1, 0x98, 0xb7, 0x20, 0xf, 0xfe, 0xd8, + 0xb6, 0x7f, 0xff, 0xf0, 0x76, 0x8, 0x2, 0x16, + 0xcf, 0xff, 0xfe, 0xd, 0x28, 0x7, 0xff, 0xc0, + 0x7c, 0x3, 0xce, 0x1, 0xff, 0xf0, 0x49, 0xef, + 0xff, 0xfe, 0x6, 0x39, 0x0, 0x42, 0xd7, 0xff, + 0xff, 0xc0, 0xa5, 0x0, 0xff, 0xf1, 0x36, 0x33, + 0xbf, 0xff, 0x1, 0x4c, 0x40, 0x31, 0x2b, 0xbf, + 0xff, 0x3, 0x18, 0x3, 0xff, 0xc4, 0x4b, 0x11, + 0xff, 0xc2, 0xb3, 0x0, 0x85, 0x26, 0x23, 0xff, + 0x80, 0xc6, 0x1, 0xff, 0xdd, 0x37, 0x99, 0xff, + 0xe3, 0xd9, 0x0, 0x42, 0x91, 0x33, 0xff, 0xc5, + 0x52, 0x0, 0xff, 0xec, 0x2e, 0x33, 0x7f, 0xf1, + 0x90, 0xc0, 0x38, 0x91, 0x9b, 0xff, 0x88, 0xf8, + 0x20, 0x1f, 0xfd, 0x87, 0x9d, 0xdf, 0xfe, 0xfe, + 0x41, 0x80, 0x7f, 0xf6, 0x4, 0x8b, 0xff, 0xc2, + 0x20, 0x1f, 0xfd, 0xe4, 0x9e, 0xff, 0xff, 0xea, + 0xf4, 0xa0, 0x7, 0xff, 0x8c, 0x40, 0x30, 0x91, + 0x9f, 0xff, 0x24, 0x84, 0x3, 0x8, 0x7, 0xf0, + 0xa5, 0x3b, 0xef, 0x70, 0xf, 0xfe, 0xb9, 0xcf, + 0xe6, 0x7f, 0xf2, 0x7e, 0x4c, 0x3, 0xff, 0x84, + 0x6d, 0x11, 0x94, 0x80, 0x3f, 0xff, 0xe0, 0x1f, + 0xff, 0xf0, 0xf, 0xff, 0x48, 0xf8, 0x7, 0xff, + 0x30, 0x40, 0x3f, 0xfd, 0xa4, 0xfb, 0xff, 0xff, + 0xc9, 0xd8, 0x20, 0xf, 0xfe, 0x31, 0x1a, 0x27, + 0xe3, 0x32, 0x21, 0x75, 0x44, 0x2, 0x31, 0x0, + 0xff, 0xe2, 0x92, 0x2a, 0xff, 0xf2, 0x50, 0x80, + 0x3f, 0xf8, 0xe3, 0x54, 0xbb, 0xfb, 0x31, 0x76, + 0xa6, 0x30, 0xc, 0xfa, 0x60, 0x1f, 0xfc, 0x33, + 0xa9, 0xaa, 0xff, 0xe4, 0xcd, 0x18, 0x7, 0xff, + 0x18, 0xf5, 0xc4, 0x3, 0xfc, 0x24, 0x68, 0xd3, + 0xb4, 0xa0, 0x1f, 0xe4, 0x9f, 0xfd, 0x8e, 0x40, + 0x1f, 0xfc, 0x92, 0x7c, 0xff, 0xd2, 0x80, 0x1f, + 0xfc, 0x14, 0x9e, 0xff, 0xff, 0x76, 0xe5, 0xcb, + 0x10, 0x7, 0x0, + + /* U+529F "功" */ + 0x0, 0xff, 0xf3, 0x12, 0xbb, 0xf2, 0x10, 0x7, + 0xff, 0xfd, 0xbe, 0x23, 0x4e, 0xb0, 0x7, 0xff, + 0xfc, 0x3, 0xff, 0xb0, 0x48, 0xab, 0xff, 0xd2, + 0x42, 0x0, 0xff, 0xf2, 0x8a, 0xc5, 0x57, 0xff, + 0x4a, 0x14, 0x40, 0x3f, 0xfc, 0xa4, 0xa6, 0x7f, + 0xf1, 0x0, 0x78, 0x4c, 0xff, 0xe5, 0x20, 0xf, + 0xff, 0x28, 0xac, 0xe6, 0x7f, 0xb6, 0xd0, 0x3, + 0x1c, 0x6e, 0x67, 0xfa, 0x50, 0xcf, 0xff, 0x86, + 0x20, 0x18, 0x4c, 0x8c, 0xff, 0xf9, 0x44, 0x20, + 0x1f, 0xfd, 0x84, 0x8c, 0xcf, 0xfe, 0xc, 0x20, + 0x7, 0x2c, 0xe6, 0x7f, 0xf2, 0x7a, 0x88, 0x3, + 0xff, 0xfe, 0x1, 0xe6, 0xe3, 0x0, 0xff, 0xec, + 0x2d, 0x7f, 0xff, 0xf0, 0x29, 0x0, 0x31, 0x3e, + 0xff, 0xff, 0xf0, 0xf6, 0xc, 0x3, 0xff, 0xd8, + 0x24, 0xe0, 0x18, 0x78, 0xc0, 0x3f, 0xf9, 0x66, + 0x1, 0xff, 0xe6, 0x3f, 0x10, 0xc, 0xe6, 0x20, + 0x1f, 0xfc, 0x51, 0x0, 0xff, 0xf6, 0x30, 0x98, + 0x6, 0x11, 0x0, 0x7f, 0xff, 0xc4, 0xc4, 0x2, + 0x12, 0x70, 0xf, 0xfe, 0x58, 0x80, 0x7f, 0xf9, + 0x84, 0x98, 0x3, 0x17, 0x88, 0x7, 0xff, 0x10, + 0x7c, 0x3, 0xff, 0xd8, 0x9a, 0x60, 0x19, 0x4c, + 0x80, 0x3f, 0xf8, 0xc6, 0x1, 0xc2, 0x1, 0xff, + 0xd5, 0x12, 0x35, 0x64, 0x20, 0xf, 0xc7, 0x88, + 0x1, 0x8f, 0xd4, 0x3, 0xff, 0x8a, 0xe2, 0x1, + 0xc6, 0x1, 0xff, 0xcc, 0x1f, 0x77, 0x44, 0xde, + 0x77, 0xf6, 0xe5, 0x4f, 0xb8, 0x7, 0xc9, 0x4e, + 0x20, 0x11, 0x22, 0x4, 0x3, 0xff, 0x8c, 0x62, + 0x1, 0x8, 0x38, 0x7, 0xf8, 0x48, 0xd1, 0x9e, + 0x29, 0x40, 0x31, 0x34, 0xc3, 0xb2, 0x18, 0x80, + 0x42, 0x68, 0x62, 0x20, 0xe, 0x4d, 0x71, 0x0, + 0x8a, 0xa8, 0x40, 0x1f, 0xfc, 0x61, 0x0, 0xe3, + 0x10, 0x8, 0x51, 0xea, 0xf7, 0xbf, 0xb7, 0x2e, + 0x61, 0x8c, 0x40, 0x38, 0x48, 0xd5, 0xa2, 0x6f, + 0x3b, 0xfb, 0x2e, 0x10, 0x40, 0x22, 0x78, 0x61, + 0x0, 0x8a, 0x94, 0x80, 0x3f, 0xf8, 0xc2, 0x6c, + 0x1, 0x87, 0xc4, 0x0, 0x21, 0xca, 0x84, 0x20, + 0x1c, 0x26, 0x8c, 0xf3, 0x59, 0xbd, 0xcd, 0xca, + 0x97, 0x64, 0x31, 0x0, 0xfc, 0x2b, 0x12, 0x60, + 0x10, 0xac, 0x39, 0x0, 0x7f, 0xf1, 0xcf, 0x84, + 0x3, 0x38, 0x98, 0x4, 0x9b, 0xc, 0xf1, 0x57, + 0xbd, 0xfd, 0x97, 0x30, 0xca, 0x64, 0x20, 0x1f, + 0xfc, 0x41, 0x6a, 0xb5, 0x10, 0x8, 0xe6, 0x14, + 0x3, 0xff, 0x92, 0xc4, 0x40, 0xc, 0x24, 0x20, + 0x19, 0x1e, 0x61, 0xd5, 0x8, 0x40, 0x3f, 0xf9, + 0x82, 0x71, 0xb2, 0x82, 0x1, 0x1c, 0x73, 0x90, + 0x7, 0xff, 0x24, 0x8d, 0x80, 0x31, 0x11, 0xc0, + 0x3f, 0xfa, 0xe2, 0xb3, 0x98, 0x73, 0x0, 0x85, + 0x27, 0x5c, 0x80, 0x3f, 0xf9, 0x42, 0x98, 0x60, + 0x19, 0xf4, 0xc0, 0x3f, 0xfa, 0x64, 0xb1, 0x9f, + 0x4c, 0x40, 0x10, 0xa4, 0x6d, 0xb0, 0x80, 0x7c, + 0x26, 0x89, 0x19, 0xc4, 0x5e, 0x34, 0x6b, 0xb2, + 0x0, 0x63, 0xc4, 0x0, 0xff, 0xe8, 0x9c, 0x6e, + 0xa9, 0xcc, 0x40, 0x22, 0x5a, 0xcb, 0x73, 0x0, + 0xff, 0x96, 0x2e, 0xd9, 0x96, 0xef, 0xb2, 0xe5, + 0x48, 0x2, 0x15, 0x87, 0x10, 0xf, 0xfe, 0x89, + 0xc7, 0x39, 0x0, 0x9b, 0xd6, 0xea, 0x94, 0x80, + 0x3f, 0xf8, 0x22, 0x96, 0x84, 0x23, 0x80, 0x3c, + 0x22, 0x24, 0x58, 0xbf, 0xa4, 0x10, 0xf, 0xfe, + 0xa1, 0xc6, 0x77, 0xe4, 0x29, 0x0, 0x7f, 0xf1, + 0x89, 0xef, 0x7b, 0xb7, 0xff, 0xbb, 0x9b, 0x74, + 0xe8, 0x20, 0x1f, 0x80, + + /* U+52A8 "动" */ + 0x0, 0xff, 0xf5, 0xa, 0x3c, 0xce, 0x63, 0x0, + 0xff, 0xff, 0x99, 0xad, 0x9b, 0x6a, 0x80, 0x7f, + 0xf3, 0x45, 0xab, 0x77, 0xff, 0xa9, 0x4a, 0x20, + 0x1f, 0xfe, 0x46, 0x22, 0xff, 0xea, 0x9, 0x80, + 0x7f, 0xf8, 0xc5, 0xb7, 0x7f, 0xfa, 0xb4, 0xc2, + 0x1, 0xff, 0xe4, 0x12, 0x2f, 0xfe, 0xa0, 0x80, + 0x7f, 0xff, 0xc0, 0x3f, 0xe2, 0x46, 0x6f, 0xf5, + 0x61, 0x0, 0x66, 0xc7, 0x66, 0xff, 0xe2, 0x29, + 0x88, 0x7, 0xff, 0x7d, 0xfa, 0x67, 0xfc, 0xe8, + 0x20, 0x18, 0x96, 0x26, 0x7f, 0xf8, 0x90, 0x86, + 0x1, 0xff, 0xdf, 0x6d, 0x55, 0xfe, 0x42, 0x10, + 0xc, 0x26, 0x8a, 0xbf, 0xe4, 0x31, 0x0, 0xfe, + 0x26, 0xac, 0xcf, 0xfe, 0xc5, 0xb8, 0x3d, 0x57, + 0xf4, 0xd1, 0x0, 0x64, 0x9b, 0xaa, 0xff, 0x5c, + 0xa8, 0x7, 0xfb, 0x9c, 0xcf, 0xff, 0xb0, 0xbc, + 0x1, 0xff, 0xf, 0x88, 0x7, 0x8, 0x7, 0xff, + 0x2c, 0xab, 0xae, 0xff, 0xa5, 0x88, 0x3, 0xa, + 0xcd, 0xdf, 0xff, 0x16, 0xac, 0x80, 0x3f, 0xe1, + 0x30, 0x8, 0x4d, 0xc0, 0x3f, 0xf8, 0x6, 0x1, + 0xc2, 0x1, 0xc4, 0x68, 0x9f, 0xc6, 0x62, 0x0, + 0x85, 0xe5, 0x91, 0x3f, 0xf8, 0xc4, 0x20, 0x1f, + 0xe7, 0x31, 0x0, 0x8c, 0x40, 0x3f, 0xf9, 0x26, + 0x1, 0xff, 0xc1, 0x4c, 0x40, 0xc, 0x9a, 0x60, + 0x1f, 0xfd, 0x31, 0x10, 0x7, 0x78, 0x80, 0x7f, + 0xc2, 0x1, 0xf0, 0x80, 0x7f, 0xf0, 0x4f, 0x10, + 0x40, 0x25, 0xf4, 0x0, 0xf8, 0xde, 0xf7, 0xb9, + 0x28, 0x1, 0xff, 0xc4, 0x22, 0x30, 0x6, 0x61, + 0x20, 0xf, 0xfe, 0xb, 0x80, 0x7f, 0xf1, 0x89, + 0x14, 0x80, 0x24, 0xc4, 0x0, 0xfc, 0x44, 0x2, + 0x11, 0x37, 0x28, 0x7, 0xff, 0xd, 0xf4, 0x80, + 0x22, 0x35, 0x0, 0xff, 0xe0, 0x88, 0x7, 0x38, + 0x7, 0xff, 0x0, 0x96, 0xc8, 0x2, 0x4d, 0x71, + 0x0, 0xfc, 0x2b, 0xca, 0x1, 0x2f, 0x30, 0x80, + 0x7f, 0xf0, 0xf, 0x5c, 0x3, 0x3e, 0x98, 0x7, + 0xff, 0x0, 0xc0, 0x40, 0x38, 0xc4, 0x3, 0xf8, + 0x56, 0xcc, 0x2, 0x4e, 0x71, 0x0, 0xff, 0x97, + 0x98, 0x40, 0x9, 0x4c, 0x40, 0x1f, 0xe1, 0x53, + 0x20, 0x8, 0x88, 0xe0, 0x1f, 0xfc, 0x2f, 0x0, + 0xe1, 0x0, 0xff, 0x13, 0x59, 0x80, 0x4b, 0xca, + 0x20, 0x1f, 0xfc, 0x14, 0xa7, 0x10, 0x1, 0xd5, + 0xc, 0x3, 0xf9, 0x71, 0x40, 0x33, 0xe9, 0x0, + 0x7f, 0xf0, 0x44, 0xc, 0x3, 0x84, 0x3, 0xf1, + 0xd5, 0xc, 0x0, 0x2b, 0xca, 0x1, 0xe1, 0x23, + 0x45, 0x67, 0x9a, 0xbf, 0x71, 0x0, 0x89, 0x6c, + 0xc0, 0x3e, 0x5e, 0x51, 0x0, 0x93, 0x10, 0x3, + 0xff, 0x84, 0xe2, 0x20, 0x8, 0x4d, 0xc0, 0x3e, + 0x59, 0x62, 0x0, 0x88, 0xcd, 0x13, 0x79, 0xbd, + 0xfd, 0xb9, 0x75, 0x30, 0xca, 0x86, 0x20, 0x1c, + 0x4d, 0x66, 0x1, 0x85, 0xa5, 0x40, 0x32, 0xf3, + 0x8, 0x7, 0xff, 0x8, 0x48, 0x3, 0x18, 0x80, + 0x79, 0x6a, 0xd4, 0x40, 0x31, 0xb4, 0x3b, 0x21, + 0x90, 0x80, 0x42, 0x46, 0xac, 0xf1, 0x37, 0x9b, + 0x4a, 0x20, 0x1, 0x5b, 0x30, 0x1, 0x35, 0x98, + 0x4, 0x2d, 0xca, 0x1, 0xff, 0xc3, 0x22, 0x38, + 0x6, 0x1f, 0x20, 0xe, 0x7d, 0x30, 0xf, 0x9, + 0xa2, 0xbc, 0x4d, 0xe6, 0xf7, 0xf6, 0xe5, 0x4c, + 0x3b, 0x21, 0x92, 0xfa, 0x9, 0x22, 0x38, 0x5, + 0x2e, 0x48, 0x2, 0x16, 0xa4, 0x0, 0xff, 0xe2, + 0x37, 0x18, 0x6, 0x62, 0x10, 0xe, 0x25, 0x88, + 0x4d, 0xef, 0x7f, 0x65, 0xd4, 0x3b, 0x21, 0x90, + 0x80, 0x7f, 0xf0, 0x56, 0xbb, 0x6e, 0x58, 0x22, + 0x58, 0x40, 0x23, 0x9a, 0x30, 0xf, 0xfe, 0x21, + 0x62, 0x0, 0x62, 0x23, 0x80, 0x7c, 0x4a, 0xec, + 0x84, 0x20, 0x1f, 0xfd, 0x11, 0x5a, 0xd6, 0x20, + 0x8, 0x9b, 0xdc, 0x80, 0x48, 0xcc, 0x45, 0x8, + 0xf8, 0x8d, 0xa5, 0x88, 0x3, 0x26, 0x10, 0x7, + 0xff, 0x74, 0xe3, 0x29, 0x44, 0x2, 0x26, 0x99, + 0x18, 0x4, 0xb7, 0xb9, 0xbb, 0x77, 0x7b, 0x72, + 0x50, 0x40, 0x22, 0x7a, 0x40, 0xf, 0xfe, 0xf1, + 0xcc, 0x9c, 0xc0, 0x52, 0x7e, 0x50, 0x3, 0x93, + 0x5c, 0x40, 0x3f, 0xf8, 0x2, 0x6a, 0xf7, 0x90, + 0x60, 0x1f, 0xfe, 0x1, 0x48, 0xdd, 0x65, 0xb1, + 0x0, 0x7e, 0x49, 0xef, 0xff, 0xfe, 0x7, 0x65, + 0x42, 0x8, 0x7, 0xc0, + + /* U+5355 "单" */ + 0x0, 0xff, 0xe3, 0x92, 0x3c, 0xe6, 0x25, 0x4, + 0x3, 0xff, 0xa6, 0x4f, 0x79, 0x72, 0xea, 0x62, + 0x1, 0xff, 0xd6, 0x1c, 0xa6, 0x33, 0x35, 0xd3, + 0x10, 0x7, 0xff, 0x3c, 0x56, 0x25, 0xd, 0x1a, + 0x39, 0x40, 0x3f, 0xfa, 0xe7, 0x1f, 0x28, 0x1, + 0x24, 0xfc, 0x18, 0x7, 0xff, 0x30, 0xe6, 0x14, + 0x40, 0x2, 0x95, 0x46, 0x10, 0xf, 0xfe, 0xc1, + 0x35, 0x4a, 0x0, 0x44, 0xfd, 0x6, 0x1, 0xff, + 0xc8, 0x38, 0xe7, 0x20, 0x0, 0xad, 0xd2, 0x88, + 0x7, 0xff, 0x70, 0x5a, 0x64, 0x60, 0x11, 0x99, + 0xc, 0x3, 0xff, 0x8a, 0x6f, 0xce, 0x40, 0x1, + 0x5b, 0xb2, 0x88, 0x7, 0xff, 0x44, 0xe3, 0x7b, + 0xbf, 0xf8, 0x19, 0x6, 0x1, 0xa, 0xce, 0xf7, + 0x7f, 0xf1, 0x72, 0x8, 0x3, 0xa, 0xdf, 0xf7, + 0x7f, 0xd2, 0x80, 0x1f, 0xfc, 0x67, 0x13, 0x11, + 0xff, 0xe1, 0x0, 0x70, 0x8f, 0xff, 0x20, 0x3, + 0xf8, 0x47, 0xff, 0x82, 0x1, 0xff, 0xce, 0x16, + 0xbf, 0xff, 0xfe, 0x3d, 0xa8, 0x6, 0x16, 0xbf, + 0xff, 0xfe, 0x45, 0xb0, 0x7, 0xff, 0xfc, 0x3, + 0xff, 0xfe, 0x1, 0xff, 0xe5, 0x16, 0xad, 0xdf, + 0xfe, 0x3d, 0x28, 0x6, 0x17, 0xad, 0xdf, 0xfe, + 0x45, 0x30, 0x7, 0xff, 0x54, 0x48, 0xbf, 0xf8, + 0xe2, 0x1, 0xe1, 0x11, 0x17, 0xff, 0x20, 0x40, + 0x3f, 0xfa, 0x82, 0xd7, 0xff, 0xff, 0xc7, 0xb5, + 0x0, 0xc2, 0xd7, 0xff, 0xff, 0xc8, 0xb6, 0x0, + 0xff, 0xff, 0x80, 0x7f, 0xff, 0xc0, 0x3f, 0xfc, + 0xa2, 0xd5, 0xbb, 0xff, 0xc7, 0xa5, 0x0, 0xc2, + 0xd5, 0xbb, 0xff, 0xc8, 0xa6, 0x0, 0xff, 0xea, + 0x89, 0x17, 0xff, 0x1c, 0x40, 0x3e, 0x12, 0x2f, + 0xfe, 0x40, 0x80, 0x7f, 0xf3, 0x92, 0x7b, 0xff, + 0xff, 0x9b, 0x4a, 0x1, 0xcd, 0x7f, 0xff, 0xfc, + 0xf9, 0x40, 0xf, 0xff, 0x10, 0x80, 0x70, 0x80, + 0x7f, 0xf7, 0x84, 0x7f, 0xfa, 0xe4, 0x20, 0x18, + 0x4c, 0x47, 0xff, 0xb0, 0x1, 0xb, 0x57, 0x77, + 0xff, 0x5a, 0x50, 0x3, 0x96, 0xbb, 0xbf, 0xfa, + 0xd9, 0x6, 0x1, 0xff, 0xff, 0x0, 0xff, 0xb, + 0x5f, 0xff, 0xff, 0x5a, 0xd4, 0x3, 0xb, 0x5f, + 0xff, 0xff, 0x5b, 0x60, 0xc0, 0x3f, 0xff, 0xe0, + 0x1f, 0xff, 0xf0, 0xf, 0xff, 0xf8, 0x7, 0xff, + 0xfc, 0x3, 0xff, 0xb0, + + /* U+5361 "卡" */ + 0x0, 0xff, 0xec, 0x11, 0xa2, 0x63, 0x20, 0xf, + 0xff, 0xf9, 0x57, 0x5d, 0xee, 0x52, 0x0, 0xff, + 0xff, 0x80, 0x7f, 0xff, 0xc0, 0x3f, 0xff, 0xe0, + 0x1f, 0xff, 0xf0, 0xf, 0xfe, 0xa9, 0x46, 0xff, + 0xff, 0xf3, 0xb1, 0xc8, 0x3, 0xff, 0xfe, 0x1, + 0xe1, 0x0, 0xff, 0xf5, 0x13, 0x56, 0x67, 0xff, + 0x3b, 0xd8, 0x80, 0x3f, 0xfd, 0x3c, 0xe6, 0x7f, + 0xfc, 0xe2, 0x10, 0xf, 0xff, 0xf8, 0x7, 0xff, + 0xfc, 0x3, 0xff, 0xa4, 0x23, 0xff, 0xd6, 0x61, + 0x30, 0xe, 0xf6, 0x11, 0xff, 0xec, 0x0, 0x47, + 0x39, 0xdd, 0xff, 0xd4, 0xb6, 0x10, 0xc, 0x4f, + 0x7d, 0xdf, 0xfd, 0x7a, 0x61, 0x0, 0xff, 0xff, + 0x80, 0x7f, 0x8e, 0x33, 0xbb, 0xff, 0xa9, 0x6c, + 0x40, 0x18, 0x9f, 0x3b, 0xbf, 0xfa, 0xf4, 0xc2, + 0x1, 0x8, 0xff, 0xf5, 0x58, 0x40, 0x3d, 0xe2, + 0x3f, 0xfd, 0x90, 0xf, 0xff, 0x17, 0x22, 0xa9, + 0x8, 0x40, 0x3f, 0xff, 0xe0, 0x4d, 0x35, 0x4b, + 0xde, 0xfd, 0xca, 0x87, 0x53, 0x20, 0xf, 0xff, + 0xb8, 0x9a, 0xa8, 0xc4, 0x2, 0x23, 0x57, 0x8a, + 0xcd, 0xfe, 0xca, 0x87, 0x53, 0x10, 0xf, 0xff, + 0x71, 0xdc, 0x56, 0x77, 0xf6, 0x54, 0x3a, 0x98, + 0x80, 0x42, 0x6a, 0xf1, 0x59, 0xdc, 0xdb, 0x86, + 0x42, 0x0, 0xff, 0xf7, 0x9, 0xab, 0xc5, 0x67, + 0x7f, 0x65, 0x43, 0x18, 0x80, 0x42, 0x48, 0xf3, + 0x56, 0x60, 0x1f, 0xff, 0x61, 0x35, 0x79, 0xce, + 0xfd, 0xb8, 0x63, 0x25, 0xb8, 0x30, 0xf, 0xff, + 0xf1, 0x23, 0xce, 0x6d, 0x28, 0x80, 0x7f, 0xff, + 0xc0, 0x3f, 0xff, 0xe0, 0x1f, 0xff, 0xf0, 0xf, + 0xff, 0xf8, 0x7, 0xff, 0xfc, 0x3, 0xff, 0xd4, + + /* U+5370 "印" */ + 0x0, 0xff, 0xff, 0x80, 0x7f, 0xf4, 0x9, 0x1e, + 0xb3, 0x6d, 0xcc, 0x3, 0xff, 0xe2, 0x24, 0x8d, + 0x37, 0xbf, 0xb7, 0xa, 0x64, 0x91, 0x98, 0x72, + 0x0, 0xff, 0xef, 0x89, 0x19, 0x0, 0x42, 0x6a, + 0xf3, 0x7b, 0xdc, 0xdb, 0x96, 0x42, 0x0, 0xc4, + 0x8d, 0x15, 0x9a, 0xe4, 0x1, 0x24, 0xff, 0xff, + 0xf5, 0x65, 0x0, 0x22, 0xbd, 0xd7, 0xfd, 0xd9, + 0x50, 0xc8, 0x42, 0x1, 0x11, 0xab, 0xcd, 0xef, + 0xed, 0xcb, 0xa9, 0x88, 0x7, 0xff, 0xa4, 0x49, + 0x19, 0xe6, 0xf7, 0xbf, 0x72, 0xa1, 0x90, 0x80, + 0x3f, 0xf9, 0xb, 0x39, 0x9f, 0xfc, 0x79, 0x50, + 0xf, 0xfe, 0x2a, 0xde, 0xdc, 0xc3, 0x21, 0x8, + 0x7, 0xff, 0x3c, 0x4d, 0x4c, 0xff, 0xf8, 0xea, + 0x62, 0x1, 0xff, 0xff, 0x0, 0xff, 0xff, 0x80, + 0x7f, 0xff, 0xc0, 0x3f, 0xff, 0xe0, 0x1f, 0xfd, + 0x5, 0xbe, 0xef, 0xfe, 0x5d, 0xb1, 0x0, 0x7f, + 0xf9, 0xc4, 0x7f, 0xf9, 0x8e, 0x20, 0x1f, 0xfe, + 0x74, 0x7b, 0xbf, 0xfe, 0x5f, 0xa9, 0x0, 0x7f, + 0xf9, 0x87, 0x51, 0x3f, 0xf9, 0x66, 0x40, 0x1f, + 0xff, 0xf0, 0xf, 0xff, 0xf8, 0x7, 0xff, 0xfc, + 0x3, 0xff, 0xfe, 0x1, 0xff, 0xff, 0x0, 0xff, + 0xfb, 0x3f, 0xc4, 0x7f, 0xf2, 0xd9, 0x4, 0x3, + 0xff, 0xa6, 0xe6, 0x20, 0x1f, 0xfc, 0x42, 0x57, + 0x7f, 0xfe, 0x5d, 0x19, 0x80, 0x3f, 0xf8, 0xc4, + 0xf9, 0xdd, 0xfd, 0xf6, 0xa0, 0x18, 0xf9, 0x80, + 0x3f, 0xc2, 0x6a, 0xbf, 0xfc, 0xb4, 0x23, 0x0, + 0xff, 0xe3, 0x12, 0xd9, 0x8, 0xfe, 0x0, 0xe2, + 0x59, 0x62, 0x0, 0xff, 0x24, 0xd5, 0x7f, 0xf2, + 0xe1, 0x44, 0x3, 0xff, 0x8e, 0x4d, 0x13, 0x3f, + 0x55, 0xdb, 0x37, 0xb6, 0x94, 0x40, 0x3f, 0xfd, + 0xe2, 0x8c, 0xdf, 0x2a, 0x20, 0xc8, 0x40, 0x3f, + 0x1c, 0x7f, 0x76, 0xb5, 0x0, 0xff, 0xfd, 0x8, + 0xfc, 0x1, 0xff, 0xff, 0x0, 0xff, 0xfd, 0x80, + + /* U+5382 "厂" */ + 0x0, 0xff, 0x8e, 0x7b, 0xff, 0xff, 0xf1, 0x6c, + 0x1, 0xff, 0xff, 0x0, 0xff, 0xea, 0xa3, 0xdd, + 0xff, 0xfc, 0xa1, 0xc0, 0x3f, 0xf9, 0x25, 0x88, + 0x9f, 0xff, 0x23, 0x10, 0xf, 0xff, 0xf8, 0x7, + 0xff, 0xfc, 0x3, 0xff, 0xfe, 0x1, 0xff, 0xff, + 0x0, 0xff, 0xf9, 0x38, 0x7, 0xff, 0xfc, 0x3, + 0xff, 0xfe, 0x1, 0xff, 0xcd, 0x10, 0xf, 0xff, + 0xf8, 0x7, 0xf8, 0xc0, 0x30, 0x80, 0x7f, 0xff, + 0xc0, 0x3f, 0xf8, 0x2e, 0x1, 0xff, 0xff, 0x0, + 0x88, 0x40, 0x31, 0x88, 0x7, 0xff, 0xfc, 0x2, + 0x21, 0x70, 0xc, 0x3c, 0x40, 0x1f, 0xff, 0xf0, + 0x0, 0xf9, 0x0, 0x67, 0x31, 0x0, 0xff, 0xff, + 0x80, 0x18, 0x84, 0x3, 0x10, 0x80, 0x7f, 0xff, + 0xc0, 0x7, 0xae, 0x1, 0x8b, 0x98, 0x3, 0xff, + 0xfe, 0x2, 0xa8, 0x40, 0x10, 0xa1, 0x90, 0x7, + 0xff, 0xfc, 0x13, 0xc, 0x3, 0x2e, 0x20, 0x7, + 0xff, 0xfc, 0x13, 0x10, 0x3, 0x16, 0x38, 0x7, + 0xff, 0xfc, 0x17, 0x98, 0x40, 0x21, 0x44, 0x10, + 0x7, 0xff, 0xf8, 0x9e, 0x54, 0x3, 0x13, 0x59, + 0x80, 0x7f, 0xff, 0x45, 0x62, 0x4c, 0x3, 0x25, + 0xc9, 0x0, 0x7f, 0xff, 0x85, 0x62, 0xdd, 0x4, + 0xde, 0x18, 0x40, 0x3f, 0xff, 0xe0, 0x2, 0x58, + 0xbe, 0xc8, 0x30, 0xf, 0xff, 0xf8, + + /* U+538B "压" */ + 0x0, 0xfc, 0x2d, 0x5d, 0xdf, 0xff, 0xd9, 0x50, + 0xf, 0xf9, 0x84, 0x7f, 0xff, 0xa6, 0x1, 0xff, + 0xc5, 0x48, 0xbb, 0xff, 0xfb, 0xc2, 0x0, 0x7f, + 0xf1, 0x8, 0xd1, 0x3f, 0xfe, 0xe4, 0x20, 0x1f, + 0xfe, 0x32, 0x6b, 0xee, 0xd4, 0xa2, 0x1, 0xff, + 0xff, 0x0, 0x85, 0x84, 0x78, 0xc0, 0x3f, 0xff, + 0xe0, 0x1f, 0xff, 0xf0, 0xf, 0xff, 0xf8, 0x7, + 0xff, 0xfc, 0x0, 0x20, 0x1f, 0xff, 0xf0, 0xf, + 0xfe, 0x60, 0x92, 0x27, 0xff, 0x2f, 0x4c, 0x3, + 0x37, 0xa2, 0x7f, 0xf3, 0x48, 0x40, 0x3f, 0xf9, + 0xeb, 0x77, 0xff, 0xcb, 0x95, 0x10, 0xc, 0x4d, + 0x57, 0x7f, 0xfc, 0xba, 0xb2, 0x0, 0xff, 0xe3, + 0x88, 0x7, 0xce, 0x26, 0x45, 0xff, 0xca, 0x10, + 0xf, 0x9, 0x17, 0xff, 0x34, 0x40, 0x3f, 0xf8, + 0x46, 0x1, 0xff, 0xc1, 0x38, 0xcd, 0xdf, 0xfe, + 0x4f, 0xc9, 0x0, 0x64, 0x8c, 0xdd, 0xff, 0xe5, + 0xe4, 0x18, 0x7, 0xff, 0x4, 0x7c, 0x40, 0x23, + 0x17, 0x0, 0xff, 0xff, 0x80, 0x4e, 0x26, 0x1, + 0xf, 0x88, 0x7, 0xff, 0x80, 0x52, 0x2f, 0x72, + 0x10, 0x40, 0x3f, 0xf9, 0xa2, 0x62, 0x1, 0x38, + 0x98, 0x7, 0xff, 0x80, 0x8d, 0x14, 0x8d, 0xef, + 0x29, 0x48, 0x3, 0xff, 0x92, 0x26, 0x20, 0x18, + 0x4c, 0x40, 0x3f, 0xfc, 0x6, 0xf9, 0xb0, 0x82, + 0x4, 0xb5, 0x94, 0xa4, 0x1, 0xff, 0xc6, 0x2f, + 0x50, 0x8, 0x4d, 0x80, 0x3f, 0xfc, 0x86, 0xf7, + 0x90, 0x60, 0x1, 0x5a, 0xf9, 0x40, 0xf, 0xfe, + 0x18, 0xa9, 0x8, 0x4, 0xbe, 0x60, 0x1f, 0xfe, + 0x72, 0x7d, 0xb6, 0x20, 0x1, 0x26, 0xa0, 0x80, + 0x7f, 0xf0, 0x57, 0xd4, 0x2, 0x23, 0x50, 0xf, + 0xff, 0x50, 0xa4, 0xf5, 0x53, 0x31, 0x28, 0x20, + 0x1f, 0xfc, 0x2, 0x35, 0x10, 0x9, 0xf4, 0xc0, + 0x3f, 0xfd, 0xa6, 0xaa, 0x31, 0x0, 0xff, 0xe1, + 0x12, 0xd1, 0x80, 0x47, 0xae, 0x1, 0x84, 0x7f, + 0xfa, 0x3e, 0x1, 0xce, 0x26, 0x23, 0xff, 0xd0, + 0x0, 0xf1, 0xd5, 0x8, 0x2, 0x3a, 0x62, 0x0, + 0x2d, 0x77, 0x7f, 0xf4, 0x31, 0xc8, 0x3, 0x1c, + 0x6f, 0x77, 0xff, 0x42, 0x94, 0x2, 0x3a, 0x62, + 0x0, 0x92, 0x5c, 0x40, 0x3f, 0xff, 0xe0, 0x5b, + 0x2a, 0x42, 0xbe, 0xa2, 0x1, 0x96, 0xbf, 0xff, + 0xfe, 0xd4, 0xa0, 0x10, 0xa3, 0xd6, 0x7d, 0xa0, + 0x7, 0xff, 0xfc, 0x0, + + /* U+539F "原" */ + 0x0, 0xff, 0x84, 0x8b, 0xff, 0xf8, 0x20, 0x1f, + 0xfc, 0x1, 0x7e, 0xdd, 0xff, 0xfd, 0x4b, 0x88, + 0x7, 0xff, 0x1c, 0x48, 0xbf, 0xf9, 0xe2, 0x1, + 0xf8, 0x48, 0xbf, 0xf9, 0xe2, 0x60, 0x1f, 0xfc, + 0x75, 0xbd, 0xdf, 0xfe, 0x76, 0x42, 0x0, 0x72, + 0x4f, 0xee, 0xff, 0xf3, 0xe9, 0x44, 0x3, 0xff, + 0xc4, 0x9a, 0x80, 0x10, 0xaf, 0x30, 0x80, 0x7f, + 0xfb, 0x5, 0x22, 0xef, 0xff, 0x89, 0x90, 0x80, + 0x1c, 0xfd, 0x77, 0xff, 0xca, 0xa6, 0x20, 0xf, + 0xfe, 0xb1, 0x22, 0x7f, 0xf1, 0x4c, 0x80, 0x38, + 0x49, 0x13, 0xff, 0x99, 0xe2, 0x1, 0xff, 0xdc, + 0x38, 0xde, 0xef, 0xfe, 0xbc, 0xa0, 0x7, 0xff, + 0x90, 0x4c, 0x47, 0xff, 0xae, 0x62, 0x1, 0xff, + 0xff, 0x0, 0xff, 0xed, 0x8, 0x7, 0x84, 0x3, + 0xff, 0x82, 0x73, 0xdf, 0xff, 0xfd, 0x7a, 0x50, + 0xf, 0xff, 0x21, 0x1a, 0x27, 0xff, 0x5c, 0x84, + 0x3, 0xff, 0x9a, 0x60, 0x1f, 0xfc, 0x93, 0xbd, + 0xbb, 0xff, 0xeb, 0xc2, 0x0, 0x7f, 0xf3, 0xbc, + 0x40, 0x21, 0x30, 0xf, 0xff, 0xf8, 0x6, 0x61, + 0x30, 0x8, 0xc5, 0x80, 0x3f, 0xf8, 0x25, 0x75, + 0x77, 0xff, 0xd7, 0x94, 0x0, 0xff, 0xe6, 0x89, + 0x88, 0x4, 0x3e, 0x60, 0x1f, 0xfc, 0x11, 0x24, + 0x4f, 0xfe, 0xc1, 0x88, 0x7, 0xff, 0x30, 0x4c, + 0x40, 0x33, 0x90, 0x80, 0x78, 0x5b, 0x3b, 0xbf, + 0xf8, 0xf6, 0xa2, 0x1, 0xb, 0x5f, 0x77, 0xff, + 0x23, 0xe4, 0xc0, 0x3f, 0xf8, 0xa5, 0xca, 0x1, + 0x88, 0x40, 0x3f, 0xc2, 0x38, 0xd5, 0x8, 0xc4, + 0x7f, 0xce, 0x60, 0x1c, 0x2e, 0x23, 0xfc, 0xa, + 0xee, 0x50, 0x11, 0xf0, 0x7, 0xff, 0x18, 0x51, + 0x2, 0x1, 0x1f, 0xa8, 0x7, 0xff, 0x0, 0xe3, + 0xee, 0xb3, 0x7a, 0x90, 0x3, 0xff, 0x96, 0x93, + 0xf7, 0x32, 0xbc, 0xa5, 0x20, 0xf, 0xfe, 0x4a, + 0xe9, 0x80, 0x42, 0x8a, 0x20, 0x1f, 0xc2, 0x93, + 0xce, 0x40, 0x1, 0x4b, 0xb2, 0x0, 0x7f, 0xf2, + 0xd2, 0x75, 0xcc, 0x40, 0x96, 0xb2, 0xdc, 0xc0, + 0x3f, 0xf8, 0xa5, 0x8e, 0x1, 0x97, 0x4c, 0x3, + 0xf1, 0xbe, 0xdb, 0x10, 0x0, 0x9a, 0xa8, 0xa2, + 0x1, 0xff, 0xce, 0x38, 0xcc, 0x4a, 0x8, 0xa, + 0x46, 0x62, 0x10, 0x40, 0x3f, 0xf8, 0x5, 0x4a, + 0x40, 0x11, 0x63, 0x80, 0x70, 0xa4, 0x66, 0x20, + 0xc0, 0x23, 0x8f, 0x94, 0x10, 0xf, 0xfe, 0x99, + 0x35, 0xe5, 0x28, 0x80, 0xd, 0xef, 0x5c, 0xc0, + 0x3f, 0x92, 0xd8, 0x80, 0x22, 0x54, 0x20, 0x1, + 0xbd, 0xfd, 0xb9, 0x80, 0x46, 0xf9, 0x87, 0x20, + 0xf, 0xfe, 0xc9, 0x2d, 0x64, 0xa0, 0x80, 0xe, + 0x36, 0x94, 0x40, 0x30, 0xb7, 0xb0, 0x80, 0x45, + 0x54, 0x31, 0x5a, 0xd8, 0x41, 0x0, 0x9, 0xc6, + 0x62, 0xc, 0x3, 0xff, 0x88, 0xe6, 0x20, 0x1f, + 0xfc, 0xc2, 0x6b, 0xd6, 0x20, 0x0, 0xa7, 0xa0, + 0x80, 0x5, 0xf5, 0x0, 0x32, 0x5b, 0x10, 0xa, + 0xd6, 0x4a, 0xa3, 0x56, 0x61, 0xcc, 0x3, 0xe5, + 0xae, 0xfe, 0xef, 0xbe, 0xd4, 0x3, 0x17, 0x10, + 0x7, 0xff, 0x24, 0xe7, 0xaa, 0x6f, 0xe9, 0x44, + 0x0, 0x2d, 0x7b, 0x4c, 0xb1, 0x2c, 0x20, 0x1c, + 0x4d, 0x57, 0x2a, 0x40, 0x1f, 0xe5, 0xf4, 0x1, + 0x1f, 0xe2, 0x34, 0x6a, 0xe6, 0x10, 0xf, 0xfe, + 0x59, 0xab, 0x20, 0x80, 0x40, + + /* U+53C2 "参" */ + 0x0, 0xff, 0xff, 0x80, 0x7f, 0xf8, 0x4e, 0x33, + 0xb6, 0xe5, 0xd0, 0x40, 0x3f, 0xff, 0xe0, 0x11, + 0x37, 0xb9, 0x89, 0x22, 0x3d, 0xc4, 0x3, 0xff, + 0x86, 0x6d, 0x59, 0x70, 0x84, 0x1, 0xff, 0xe9, + 0x15, 0x98, 0x30, 0x8, 0xe3, 0xe0, 0xc0, 0x3f, + 0xf8, 0x42, 0xb5, 0x6a, 0x68, 0xf7, 0xb9, 0x2a, + 0x40, 0x1f, 0xfe, 0x31, 0x6a, 0xb4, 0x10, 0x1, + 0xcf, 0x39, 0x0, 0x7f, 0xf1, 0x5, 0x67, 0x75, + 0x2c, 0x40, 0x3, 0x6a, 0xdd, 0x4a, 0x90, 0x7, + 0xff, 0x74, 0x9a, 0xa5, 0x4, 0x0, 0x93, 0xee, + 0x62, 0x38, 0x8b, 0xf1, 0x9f, 0xc8, 0x93, 0x16, + 0xc4, 0x14, 0x40, 0x22, 0x6a, 0xdd, 0x4a, 0x8, + 0x7, 0xff, 0x29, 0x6b, 0xb9, 0xff, 0xff, 0x6c, + 0xa0, 0x7, 0x24, 0xe7, 0x77, 0xb7, 0x7f, 0x66, + 0x7d, 0x77, 0xea, 0x85, 0x10, 0xf, 0x89, 0xaf, + 0xed, 0x8c, 0x3, 0xff, 0x8e, 0xc4, 0x2, 0x1, + 0xff, 0xc7, 0x11, 0xe0, 0xf, 0x88, 0xce, 0x44, + 0xe5, 0x5e, 0x66, 0xce, 0xfd, 0x11, 0x9d, 0x48, + 0x0, 0x29, 0x3b, 0x6c, 0x40, 0x1f, 0xfc, 0x43, + 0x9f, 0xdd, 0x77, 0x7d, 0xff, 0xff, 0x77, 0x54, + 0x82, 0x1, 0x8e, 0x3f, 0x32, 0xbb, 0xea, 0xae, + 0x99, 0xd1, 0x1c, 0xef, 0xa2, 0xb2, 0x94, 0x40, + 0x2, 0x94, 0xa6, 0x1, 0xff, 0xc4, 0x11, 0x11, + 0x4, 0x7e, 0x0, 0xff, 0xe0, 0x13, 0xc2, 0x88, + 0x4, 0xb2, 0xc4, 0x1, 0xff, 0xd0, 0x15, 0xac, + 0x97, 0x9d, 0xc7, 0x30, 0xf, 0xfe, 0x0, 0x99, + 0xff, 0xf3, 0x5a, 0x24, 0xc0, 0x32, 0x68, 0x91, + 0x9f, 0xff, 0x50, 0x56, 0xd4, 0x4c, 0xf1, 0x8, + 0x7, 0xe3, 0x9e, 0xcc, 0xff, 0xe6, 0x4a, 0x88, + 0x7, 0x24, 0x5e, 0x67, 0xff, 0x7a, 0x5c, 0x40, + 0x3e, 0x1e, 0x44, 0xff, 0xe4, 0x10, 0x80, 0x78, + 0x49, 0x13, 0xff, 0x8e, 0x42, 0x1, 0xc2, 0x48, + 0x9f, 0xfc, 0x83, 0x21, 0x0, 0xf8, 0x9a, 0x6e, + 0xff, 0xf8, 0x93, 0xa0, 0x62, 0x1, 0x89, 0xf7, + 0x57, 0x7f, 0xfc, 0x7d, 0xd3, 0x90, 0x4, 0x26, + 0x1b, 0x37, 0x7f, 0xfc, 0x58, 0x40, 0xf, 0xfe, + 0x58, 0x9c, 0x66, 0x25, 0x4, 0x0, 0x2b, 0x59, + 0x6, 0x1, 0xf8, 0x4d, 0xa6, 0xed, 0x2e, 0x84, + 0x1, 0x1c, 0x7c, 0xa0, 0x80, 0xa4, 0xe5, 0xb1, + 0x0, 0x7f, 0xf6, 0x5, 0x27, 0x30, 0xe6, 0x20, + 0x1, 0x49, 0xca, 0x51, 0x0, 0xc2, 0x4a, 0xf5, + 0x9f, 0x92, 0xc8, 0xaa, 0xe1, 0x0, 0xf1, 0x35, + 0xec, 0x20, 0x80, 0xa4, 0xee, 0xa5, 0x48, 0x3, + 0xff, 0x9e, 0x26, 0xd3, 0x9f, 0x6c, 0x40, 0x11, + 0x2d, 0x65, 0xb1, 0x99, 0x5a, 0x2b, 0x37, 0xb6, + 0xa1, 0x4c, 0x11, 0xa7, 0x3f, 0x25, 0x48, 0x3, + 0xf1, 0xbd, 0xe5, 0x29, 0x0, 0x9, 0xab, 0x75, + 0x4c, 0x62, 0x1, 0xff, 0xc5, 0x24, 0x7a, 0xde, + 0xc9, 0x63, 0x10, 0x1, 0x24, 0x54, 0x6f, 0xf7, + 0x3f, 0xb2, 0xa5, 0xd4, 0xce, 0x57, 0x9b, 0xee, + 0x5c, 0xb1, 0x88, 0x7, 0x88, 0xd0, 0xc4, 0x3, + 0x12, 0xd6, 0x62, 0x10, 0x40, 0x4, 0xb3, 0x9f, + 0x92, 0xe8, 0x40, 0x1f, 0x8d, 0xf3, 0xb6, 0xe1, + 0x48, 0x3, 0x12, 0xce, 0x6d, 0xba, 0xa9, 0x8, + 0x46, 0x35, 0x79, 0xbd, 0xee, 0x65, 0x43, 0x20, + 0x80, 0x7c, 0x28, 0xf5, 0xba, 0xcb, 0xcf, 0xb6, + 0x20, 0xc, 0x26, 0xf7, 0xf9, 0xa, 0x40, 0x1, + 0x36, 0x8b, 0xde, 0xc7, 0x20, 0xc, 0x6b, 0x4a, + 0x20, 0x1, 0x36, 0x9c, 0xed, 0xa6, 0x30, 0xe, + 0x38, 0xdf, 0xec, 0xa8, 0x64, 0x21, 0x0, 0xf8, + 0x49, 0x5e, 0x6f, 0xb9, 0x70, 0xa4, 0x6, 0xd3, + 0x96, 0xc4, 0x1, 0xf8, 0x4d, 0xeb, 0x7a, 0xe1, + 0x4c, 0x40, 0x9e, 0x18, 0x80, 0x38, 0x9a, 0xf3, + 0x1b, 0xd9, 0x2c, 0x62, 0x1, 0xff, 0xc8, 0x13, + 0x56, 0x8a, 0xce, 0xe6, 0xd4, 0x32, 0x9, 0x23, + 0xce, 0x76, 0x4b, 0x10, 0x7, 0xff, 0x10, 0x51, + 0xeb, 0x3b, 0x99, 0x28, 0x20, 0x1f, 0xc4, 0x64, + 0x1, 0xff, 0xc2, 0x12, 0x34, 0x67, 0x89, 0xbc, + 0xef, 0xec, 0xa9, 0x75, 0x31, 0x11, 0xab, 0xd6, + 0x76, 0xdc, 0x31, 0x88, 0x7, 0xf1, 0x35, 0xf7, + 0x32, 0x9d, 0x4, 0x3, 0xe1, 0x10, 0x7, 0xff, + 0x40, 0x9b, 0xb2, 0xe6, 0x1d, 0x90, 0xc4, 0x44, + 0x8a, 0xf3, 0x7b, 0xfd, 0x95, 0xa, 0x62, 0x1, + 0xfe, 0x13, 0x7a, 0xdd, 0x4a, 0x8, 0x89, 0xbd, + 0xc0, 0x3f, 0xfb, 0x44, 0xfb, 0x4e, 0xd1, 0x35, + 0x9b, 0xfd, 0xb7, 0x50, 0xc8, 0x40, 0x1f, 0xfc, + 0x2, 0x46, 0x8b, 0xde, 0xc8, 0x52, 0x0, 0x1b, + 0x56, 0x62, 0xc, 0x40, 0x3f, 0xfb, 0x62, 0xb1, + 0x2e, 0xca, 0x64, 0x1, 0xff, 0xc1, 0x13, 0x47, + 0x9b, 0xdf, 0xdb, 0x97, 0x42, 0x1, 0x36, 0x8b, + 0xec, 0x95, 0x20, 0xf, 0xff, 0x48, 0x91, 0xab, + 0x44, 0xd6, 0x6f, 0x7f, 0x65, 0xc3, 0x21, 0x0, + 0x9, 0x5e, 0x73, 0xb9, 0x92, 0xe8, 0x20, 0x1f, + 0xfd, 0xc1, 0x34, 0x56, 0x78, 0x84, 0xd5, 0xdb, + 0x37, 0xbf, 0xdd, 0xb9, 0x52, 0xec, 0xa6, 0x42, + 0x2, 0x68, 0xcf, 0x37, 0xbf, 0xb5, 0xc, 0x62, + 0x1, 0xff, 0xe3, 0x5f, 0xa9, 0x87, 0x73, 0x2a, + 0x20, 0xc8, 0x40, 0x2, 0x46, 0x8a, 0xf1, 0x57, + 0xbd, 0xfd, 0x97, 0x30, 0xc8, 0x40, 0x1f, 0xfe, + 0x91, 0x69, 0x93, 0x31, 0xe2, 0x65, 0x57, 0x9b, + 0xdf, 0xee, 0xdc, 0xba, 0x87, 0x54, 0x21, 0x0, + 0xff, 0xf1, 0x0, + + /* U+53CA "及" */ + 0x0, 0xfc, 0x24, 0x67, 0xff, 0xe4, 0x44, 0x8c, + 0x84, 0x3, 0xff, 0xaa, 0x2f, 0x39, 0x9f, 0xfe, + 0x4b, 0xbb, 0x36, 0xd4, 0x3, 0xff, 0xaa, 0x60, + 0x23, 0xff, 0xc1, 0x0, 0xfe, 0x11, 0xff, 0xe5, + 0x80, 0x7c, 0x78, 0x80, 0x1f, 0xfd, 0x41, 0x5b, + 0xee, 0xff, 0xe0, 0x7c, 0xa0, 0x7, 0x1c, 0x7f, + 0x77, 0xff, 0x27, 0x1c, 0x80, 0x31, 0x22, 0x88, + 0x7, 0xff, 0xac, 0xb9, 0x40, 0x3f, 0xf9, 0x2, + 0x88, 0x20, 0xc, 0xf8, 0x60, 0x1f, 0xfe, 0x67, + 0x0, 0xe1, 0x7d, 0x30, 0xf, 0xfe, 0x3a, 0x61, + 0x80, 0x64, 0xf4, 0x0, 0xff, 0xf7, 0xb, 0xd9, + 0x80, 0x7f, 0xf1, 0x53, 0x10, 0x3, 0x1e, 0x20, + 0x7, 0xff, 0x98, 0xc4, 0x3, 0xf0, 0xad, 0x90, + 0x7, 0xff, 0xc, 0xf1, 0x4, 0x2, 0x16, 0x23, + 0x22, 0xff, 0xe1, 0x19, 0x10, 0x3, 0xff, 0xae, + 0x20, 0x1f, 0x89, 0x68, 0x80, 0x3f, 0xf8, 0x22, + 0x88, 0x20, 0xc, 0x2b, 0x5b, 0xbf, 0xfc, 0x3c, + 0xdd, 0x7e, 0xc1, 0x80, 0x7f, 0xf4, 0xbc, 0x3, + 0xfc, 0x4d, 0x68, 0x1, 0xff, 0xb, 0xe1, 0x80, + 0x7f, 0xf3, 0xc7, 0x88, 0x3, 0xff, 0xa2, 0xc2, + 0x60, 0x18, 0x95, 0x46, 0x0, 0x16, 0xf6, 0x10, + 0xf, 0xe4, 0xc4, 0x0, 0xc9, 0x5d, 0xff, 0xff, + 0xc1, 0xb6, 0x10, 0xc, 0x74, 0xe2, 0x1, 0xff, + 0xd1, 0x12, 0x10, 0xc, 0xdf, 0x74, 0x80, 0x12, + 0x5b, 0x10, 0x7, 0xe4, 0x9b, 0xa9, 0x89, 0xf4, + 0x10, 0xf, 0xfe, 0x2, 0x73, 0x8, 0x4, 0x76, + 0x82, 0x1, 0xff, 0xd1, 0x2d, 0x60, 0xc, 0x46, + 0xc2, 0xde, 0xa2, 0x0, 0x29, 0x84, 0x0, 0xf8, + 0x4d, 0x15, 0x9d, 0x90, 0x40, 0x3f, 0xe1, 0x5f, + 0x50, 0xc, 0x94, 0xc4, 0x1, 0xff, 0xd2, 0x73, + 0x20, 0xc, 0xdc, 0x60, 0x4, 0x89, 0x20, 0x0, + 0xad, 0x4a, 0x0, 0x7f, 0xf3, 0xe, 0x61, 0x0, + 0x21, 0x6f, 0x61, 0x0, 0xff, 0xe9, 0x1e, 0x28, + 0x6, 0x3c, 0x40, 0xc, 0x4f, 0x2c, 0x20, 0x1, + 0x69, 0x91, 0x80, 0x7f, 0xf2, 0x9, 0xbd, 0xc8, + 0x2, 0x39, 0xb4, 0x0, 0xff, 0xe9, 0x9d, 0xb8, + 0x80, 0x45, 0x6a, 0x40, 0x1e, 0x48, 0x82, 0x0, + 0x44, 0xdd, 0x6, 0x1, 0xff, 0xc4, 0x16, 0x98, + 0x30, 0x8, 0x5a, 0x1c, 0x80, 0x3f, 0xfa, 0x67, + 0x6a, 0x20, 0x11, 0x2a, 0x88, 0x3, 0xf0, 0xb4, + 0xc9, 0x0, 0x22, 0x7d, 0xa5, 0x10, 0xf, 0xf8, + 0x9f, 0x65, 0x4, 0x0, 0x2d, 0x52, 0x80, 0x1f, + 0xfd, 0x44, 0x96, 0x20, 0x8, 0x96, 0xc8, 0x3, + 0xfe, 0x26, 0xaa, 0x20, 0x80, 0x5, 0x6b, 0x25, + 0x4, 0x3, 0x85, 0x27, 0xe0, 0xc0, 0x21, 0x6a, + 0x94, 0x0, 0xff, 0xea, 0x13, 0xc2, 0x88, 0x4, + 0x55, 0x43, 0x0, 0xff, 0xe1, 0xa, 0xd5, 0x18, + 0x80, 0x22, 0x6b, 0xc8, 0x42, 0x49, 0xcb, 0x62, + 0x0, 0x8e, 0x36, 0x50, 0x3, 0xff, 0xa8, 0x29, + 0x12, 0x60, 0x19, 0x61, 0xc8, 0x3, 0xff, 0x8a, + 0x29, 0x3f, 0x48, 0x20, 0x11, 0x3d, 0xed, 0xb1, + 0x0, 0x44, 0xd7, 0xae, 0x60, 0x1f, 0xfd, 0x41, + 0x5b, 0xa5, 0x10, 0x8, 0xe2, 0xa, 0x1, 0xff, + 0xca, 0x25, 0xab, 0x51, 0x0, 0xfe, 0x26, 0x99, + 0x20, 0x80, 0x7f, 0xf5, 0x5, 0x6a, 0xd4, 0x40, + 0x22, 0x7f, 0x72, 0x0, 0xff, 0xe4, 0x9, 0xb4, + 0xe7, 0xd2, 0x88, 0x7, 0xf1, 0x35, 0xf6, 0x4b, + 0x18, 0x80, 0x7f, 0xf3, 0x85, 0x27, 0x29, 0x4, + 0x2, 0x37, 0xe8, 0x30, 0xf, 0xfe, 0x28, 0xa3, + 0xce, 0x7e, 0x4b, 0x18, 0x80, 0x4, 0xd6, 0x6e, + 0xd4, 0xc6, 0x20, 0x10, 0x9b, 0x4e, 0x7e, 0xd3, + 0xa1, 0x8, 0x7, 0xff, 0x14, 0x52, 0x72, 0xd8, + 0x80, 0x21, 0x49, 0xe8, 0x30, 0xf, 0xf0, 0x92, + 0x34, 0x4d, 0xef, 0x72, 0xe1, 0x8c, 0x40, 0x2, + 0x6d, 0x39, 0xf9, 0x4c, 0x88, 0x59, 0xcf, 0xc9, + 0x63, 0x10, 0x8, 0x49, 0x62, 0xf7, 0xb9, 0xb7, + 0x2e, 0xc8, 0x42, 0x1, 0xfe, 0x11, 0x0, 0x63, + 0x7d, 0xa6, 0x20, 0xf, 0x89, 0x6b, 0x7b, 0x9b, + 0x72, 0xec, 0x84, 0x20, 0x10, 0xa3, 0x4e, 0x7e, + 0x4b, 0x18, 0x80, 0x7e, 0x13, 0x69, 0xcf, 0xc9, + 0x74, 0x21, 0x0, 0xc2, 0x48, 0xd1, 0x37, 0xbd, + 0x8c, 0x40, 0x1c, 0x29, 0x1b, 0x4f, 0x17, 0xb0, + 0x62, 0x1, 0xfc, 0x49, 0xee, 0x1, 0xc4, 0x8d, + 0x15, 0x9b, 0xfd, 0x72, 0xc6, 0x20, 0x1f, 0xfc, + 0x61, 0x36, 0x8b, 0xde, 0xe6, 0xdc, 0xba, 0x98, + 0x80, 0x49, 0x3c, 0xc4, 0x1, 0xf8, 0x56, 0x1d, + 0x4, 0x3, 0xff, 0x82, 0x2b, 0x7b, 0x79, 0xdf, + 0xb7, 0x2e, 0xa6, 0x40, 0x1f, 0xfd, 0x41, 0x24, + 0x68, 0xac, 0xee, 0x6e, 0xa9, 0x88, 0x3, 0x0, + + /* U+53D6 "取" */ + 0x0, 0xc2, 0x45, 0xff, 0xdf, 0x10, 0xf, 0xff, + 0x1, 0x37, 0xee, 0xff, 0xf7, 0x65, 0xc4, 0x3, + 0xff, 0xc0, 0x2c, 0x45, 0x84, 0x40, 0x1e, 0x12, + 0x2f, 0xfe, 0x18, 0x80, 0x7c, 0x24, 0x58, 0x4c, + 0x3, 0xff, 0xc0, 0x4d, 0x7b, 0xbb, 0x24, 0x80, + 0x21, 0x6a, 0xdd, 0xff, 0xe2, 0x38, 0x80, 0x66, + 0xad, 0xd5, 0xb2, 0xd7, 0x7f, 0xff, 0xf4, 0xbb, + 0x65, 0x44, 0x3, 0xff, 0xfe, 0x1, 0xfe, 0x12, + 0x30, 0x10, 0xf, 0xff, 0x33, 0xcd, 0x3a, 0xa1, + 0x92, 0xc5, 0xe6, 0x7f, 0xf1, 0xdc, 0xc0, 0x31, + 0x6b, 0x80, 0x7f, 0xf2, 0x84, 0xc0, 0x3f, 0xf8, + 0x8e, 0x20, 0x1f, 0xc2, 0x4c, 0x28, 0x83, 0x24, + 0xe0, 0x33, 0xff, 0xe3, 0x0, 0x8, 0x3, 0x39, + 0x10, 0x3, 0xff, 0x96, 0xb7, 0xff, 0xff, 0xc3, + 0xb6, 0x10, 0xf, 0xf1, 0xe2, 0x0, 0x42, 0x98, + 0x60, 0x1f, 0xfc, 0x41, 0x53, 0x10, 0x8, 0xb5, + 0xc0, 0x3f, 0xfd, 0x69, 0x88, 0x1, 0x12, 0x20, + 0x40, 0x3f, 0xf8, 0x6b, 0xe8, 0x1, 0xa, 0x19, + 0x0, 0x7f, 0xf2, 0xc5, 0xaf, 0xff, 0xff, 0x87, + 0x8e, 0x20, 0x1f, 0xf0, 0xbe, 0x18, 0x4, 0x78, + 0x80, 0x1f, 0xfc, 0x23, 0xc7, 0x0, 0xc9, 0x88, + 0x1, 0xff, 0xed, 0x15, 0x42, 0x0, 0x93, 0x10, + 0x3, 0xff, 0x80, 0x56, 0xa2, 0x1, 0x26, 0x20, + 0x7, 0xff, 0xbc, 0xb1, 0x4, 0x2, 0x7d, 0x40, + 0xf, 0xf1, 0x2a, 0x88, 0x2, 0x2c, 0x41, 0x0, + 0xff, 0xe6, 0x88, 0x7, 0xff, 0x59, 0x35, 0x0, + 0x21, 0x6f, 0x51, 0x0, 0xf8, 0xea, 0x84, 0x1, + 0x1d, 0x29, 0x0, 0x7f, 0xf3, 0xda, 0xff, 0xff, + 0xf8, 0x78, 0xe2, 0x1, 0xff, 0xc3, 0x4e, 0x61, + 0x0, 0x92, 0x58, 0x80, 0x38, 0xe9, 0x88, 0x2, + 0x4a, 0x62, 0x0, 0xff, 0xfa, 0x25, 0x31, 0x0, + 0x47, 0x54, 0x30, 0x0, 0xac, 0x30, 0x80, 0x49, + 0xcc, 0x20, 0x1f, 0xfd, 0x16, 0xbf, 0xff, 0xfe, + 0x1e, 0x38, 0x80, 0x7f, 0xf1, 0x4e, 0xa8, 0x40, + 0x11, 0x3c, 0xaa, 0x4c, 0x20, 0x4, 0x2d, 0xea, + 0x1, 0xff, 0xd2, 0x10, 0xf, 0xfe, 0xd1, 0x3c, + 0x28, 0x80, 0x4b, 0x56, 0xe4, 0x1, 0x1c, 0x41, + 0x0, 0x3f, 0xff, 0x8b, 0x12, 0x60, 0x1f, 0x89, + 0xfd, 0x84, 0x3, 0xff, 0xc4, 0x24, 0x43, 0x52, + 0x0, 0xff, 0xe5, 0x12, 0xa1, 0x0, 0x78, 0x96, + 0x8c, 0x3, 0xff, 0x9c, 0x22, 0x6e, 0x0, 0xc2, + 0xbd, 0x13, 0x57, 0x6c, 0xde, 0xff, 0xbb, 0x75, + 0x92, 0xa2, 0x1, 0xff, 0xc7, 0x15, 0xac, 0x72, + 0x0, 0xf1, 0x3f, 0xca, 0x8, 0x7, 0xff, 0x19, + 0x27, 0xbf, 0xee, 0xe5, 0xb1, 0x0, 0x63, 0x57, + 0x65, 0x44, 0x19, 0x8, 0x7, 0x9, 0x10, 0x40, + 0x3f, 0xf8, 0xa2, 0x93, 0x94, 0xa2, 0x1, 0x1a, + 0xa1, 0x0, 0x44, 0xd7, 0xae, 0x60, 0x1f, 0xfc, + 0x47, 0x13, 0x0, 0xf8, 0x44, 0x46, 0x8a, 0xcc, + 0x78, 0x9a, 0xa5, 0xe6, 0xf7, 0xfd, 0xdb, 0xcc, + 0x20, 0x1f, 0xfc, 0x11, 0x49, 0xdb, 0x62, 0x0, + 0x8d, 0xf3, 0x6a, 0xfe, 0x50, 0x40, 0x23, 0x8d, + 0xb6, 0x20, 0xf, 0xfe, 0x9, 0xd7, 0x5e, 0x63, + 0x7b, 0xfd, 0xdc, 0xdc, 0xba, 0x99, 0x43, 0xb2, + 0xa9, 0xc, 0x84, 0x3, 0xff, 0x88, 0x26, 0xd3, + 0xbd, 0x6c, 0x60, 0x11, 0xbd, 0xec, 0x18, 0x80, + 0x9, 0xaf, 0x60, 0xc0, 0x21, 0x49, 0xdd, 0x5b, + 0x98, 0x80, 0x7f, 0x11, 0xa1, 0x98, 0x84, 0x3, + 0xff, 0xa6, 0x59, 0x17, 0xf9, 0x2c, 0x40, 0x10, + 0xa4, 0x66, 0xc2, 0x8, 0x7, 0xe3, 0x7d, 0xb7, + 0x31, 0x0, 0x89, 0x23, 0x3f, 0x21, 0x4, 0x3, + 0xff, 0xbe, 0x20, 0x6, 0x10, 0x8, 0x96, 0x73, + 0xed, 0xcc, 0x40, 0x3f, 0xf8, 0x22, 0x91, 0x9f, + 0x6e, 0x82, 0x1, 0x8, 0xc0, 0x1f, 0xfe, 0x13, + 0xc8, 0xcb, 0x9b, 0xdd, 0x53, 0x18, 0x80, 0x7f, + 0xf2, 0x45, 0x22, 0xff, 0x21, 0xe7, 0xe5, 0x4, + 0x0, + + /* U+53F0 "台" */ + 0x0, 0xff, 0xff, 0x80, 0x7f, 0xf6, 0x85, 0xb3, + 0xfb, 0x29, 0xd4, 0x80, 0x3f, 0xff, 0xa7, 0x10, + 0x30, 0x13, 0x5a, 0xd1, 0x0, 0xff, 0xfd, 0x8b, + 0x43, 0x8, 0x4, 0x2b, 0x30, 0x60, 0x1f, 0xff, + 0xa3, 0x98, 0x40, 0xc, 0x91, 0x68, 0x1, 0xff, + 0xc6, 0x13, 0x67, 0x41, 0x0, 0xff, 0xf1, 0xb, + 0x43, 0x88, 0x4, 0x4f, 0x2c, 0x20, 0x1f, 0xfc, + 0x41, 0x5a, 0xfc, 0x98, 0xbf, 0xb6, 0x20, 0xf, + 0xfe, 0xf2, 0x44, 0x10, 0x2, 0x27, 0xe8, 0x20, + 0xf, 0xfe, 0x30, 0xac, 0x41, 0x4, 0x0, 0x29, + 0x3b, 0x90, 0x82, 0x1, 0xff, 0xd8, 0x38, 0x96, + 0x10, 0x0, 0xb4, 0xc1, 0x80, 0x7f, 0xf2, 0x89, + 0xaf, 0x29, 0x44, 0x2, 0x37, 0xbc, 0x94, 0x10, + 0xf, 0xfe, 0x99, 0x3f, 0xb9, 0x0, 0x5, 0x6a, + 0x10, 0x3, 0xff, 0x9e, 0x4b, 0x5f, 0x4c, 0x40, + 0x11, 0x35, 0xe4, 0xa0, 0x80, 0x7f, 0xf3, 0x89, + 0xfa, 0xc, 0x2, 0x36, 0xf7, 0x54, 0x49, 0x57, + 0x33, 0x73, 0xbe, 0x88, 0xd3, 0x3a, 0xab, 0x5d, + 0xd5, 0x2a, 0x2, 0x1, 0xc4, 0xd7, 0xae, 0x60, + 0x1f, 0xe2, 0x7c, 0xff, 0xff, 0xb6, 0xc, 0x3, + 0x8d, 0xeb, 0x2e, 0xf5, 0x56, 0x99, 0xe8, 0x8c, + 0xef, 0x99, 0xb2, 0xae, 0x44, 0xc6, 0x62, 0x10, + 0xf, 0xc7, 0x1b, 0x6c, 0x40, 0x1f, 0x18, 0x80, + 0x7f, 0xf3, 0x44, 0x71, 0x16, 0x33, 0x91, 0x32, + 0xae, 0x66, 0xce, 0xf4, 0x46, 0x99, 0xaa, 0xb5, + 0xdd, 0x4e, 0x60, 0x10, 0xa4, 0xf3, 0x98, 0x7, + 0xb, 0xfd, 0xdd, 0x99, 0xdb, 0xbb, 0xbb, 0x7f, + 0xfe, 0xee, 0xdb, 0xbb, 0x32, 0xbb, 0xd5, 0x5a, + 0x67, 0x44, 0x4e, 0xf9, 0x9a, 0x55, 0xc8, 0x92, + 0xc7, 0x4a, 0x8, 0x4, 0x71, 0xd0, 0x60, 0x18, + 0x4d, 0x12, 0x33, 0xe2, 0x2c, 0x23, 0x80, 0x3f, + 0xfc, 0xc4, 0xd5, 0x68, 0x0, 0x14, 0xba, 0x30, + 0xf, 0xff, 0xf0, 0xad, 0x66, 0x3e, 0xd8, 0x80, + 0x3f, 0xf8, 0x62, 0x45, 0xff, 0xec, 0x10, 0xc, + 0x26, 0x61, 0x0, 0xff, 0xe3, 0x24, 0x6e, 0xff, + 0xfa, 0xb9, 0x84, 0x3, 0xff, 0xac, 0x23, 0xff, + 0xdc, 0x0, 0xff, 0xee, 0x8b, 0x67, 0x77, 0xff, + 0x73, 0x18, 0x40, 0x3f, 0xff, 0xe0, 0x1f, 0xff, + 0xf0, 0xf, 0xff, 0xf8, 0x7, 0xff, 0xfc, 0x3, + 0xff, 0xfe, 0x1, 0xff, 0xff, 0x0, 0xfe, 0x35, + 0x22, 0xff, 0xee, 0x29, 0x80, 0x7f, 0xf6, 0xc5, + 0x67, 0x77, 0xff, 0xb9, 0x2a, 0x20, 0x1f, 0xff, + 0xf0, 0xf, 0xff, 0x18, 0xb6, 0x7f, 0xff, 0xf7, + 0x31, 0x84, 0x3, 0xff, 0x8e, + + /* U+540E "后" */ + 0x0, 0xff, 0xf8, 0x8, 0x88, 0xd5, 0x9e, 0x26, + 0xb3, 0x72, 0x54, 0x40, 0x3f, 0xfc, 0xa2, 0x22, + 0x21, 0x99, 0x15, 0x4c, 0xee, 0x89, 0xab, 0xb6, + 0x6f, 0x7f, 0xbb, 0x9b, 0x95, 0x30, 0xec, 0xa6, + 0x46, 0xd5, 0x92, 0x82, 0x1, 0xff, 0xc7, 0x27, + 0xbb, 0x54, 0xbb, 0x34, 0xee, 0x88, 0x4d, 0x52, + 0xed, 0x98, 0xde, 0xe7, 0xfd, 0xdc, 0xdd, 0x66, + 0x2e, 0xa9, 0x31, 0x7, 0x65, 0x44, 0x19, 0x8, + 0x7, 0x9, 0x1a, 0x2b, 0xc4, 0xd5, 0xe7, 0x6c, + 0xa0, 0x80, 0x7f, 0xf1, 0xc7, 0xd9, 0x15, 0xa2, + 0x66, 0x88, 0x3b, 0x99, 0x54, 0x88, 0x33, 0x10, + 0x88, 0x3, 0x8, 0x88, 0x86, 0x64, 0x42, 0xa9, + 0x9d, 0xd1, 0x35, 0x76, 0xcd, 0xef, 0xfb, 0xb7, + 0x2e, 0xa1, 0xd9, 0x50, 0xc4, 0x3, 0xff, 0xa6, + 0x4a, 0xee, 0x89, 0x95, 0x52, 0xed, 0x98, 0xdd, + 0x77, 0x3f, 0xee, 0xe6, 0xeb, 0x31, 0x76, 0xaa, + 0x4c, 0x41, 0xd9, 0x51, 0x6, 0x42, 0x1, 0xff, + 0xe1, 0x15, 0x98, 0x83, 0xb3, 0x15, 0x48, 0x83, + 0x31, 0x10, 0x44, 0x1, 0xff, 0xff, 0x0, 0xff, + 0xff, 0x80, 0x7f, 0xff, 0xc0, 0x3f, 0xf8, 0xc2, + 0xf9, 0xff, 0xff, 0xf3, 0xd8, 0x30, 0xf, 0xff, + 0xf8, 0x7, 0xff, 0x34, 0xc0, 0x32, 0x46, 0x67, + 0xff, 0xd3, 0xe4, 0xc0, 0x3f, 0xf8, 0xc2, 0x67, + 0xff, 0xf5, 0x21, 0x0, 0xff, 0xe0, 0x88, 0x7, + 0x18, 0x7, 0xff, 0xfc, 0x3, 0xff, 0xfe, 0x1, + 0xff, 0xc4, 0x70, 0x10, 0x8, 0x40, 0x3f, 0x84, + 0x8b, 0xff, 0xca, 0x20, 0x1f, 0xfc, 0x81, 0x20, + 0xc, 0x7c, 0xc0, 0x1e, 0x38, 0xcd, 0xdf, 0xff, + 0x1e, 0x42, 0x0, 0x7f, 0xf1, 0x88, 0x8e, 0x1, + 0x98, 0x4c, 0x3, 0xff, 0x84, 0x23, 0xff, 0xd9, + 0x0, 0xff, 0xe7, 0xf, 0x90, 0x6, 0x12, 0x10, + 0xf, 0xfe, 0x1, 0x3e, 0xf7, 0x7f, 0xf5, 0xe9, + 0x80, 0x3f, 0xf9, 0xac, 0x42, 0x1, 0x11, 0x1c, + 0x3, 0xff, 0xfe, 0x0, 0x4c, 0x40, 0xc, 0xfa, + 0x60, 0x1f, 0xff, 0xf0, 0x2c, 0x41, 0x0, 0x93, + 0x10, 0x3, 0xff, 0xfe, 0x2, 0x88, 0x20, 0x8, + 0xf1, 0x4, 0x3, 0xff, 0xfe, 0x2f, 0xa6, 0x1, + 0x12, 0x20, 0x80, 0x3f, 0xff, 0xe4, 0xd6, 0x80, + 0x11, 0x2d, 0x18, 0x7, 0xff, 0x10, 0xc5, 0xc4, + 0x7f, 0xfb, 0x6, 0x1, 0xff, 0xc6, 0x15, 0x89, + 0x20, 0x9, 0x22, 0x48, 0x3, 0xff, 0x8a, 0x2d, + 0x7d, 0xdf, 0xfd, 0x7a, 0x50, 0xf, 0xfe, 0x2a, + 0x45, 0xa8, 0x80, 0xe, 0x25, 0x44, 0x3, 0xff, + 0xfe, 0x91, 0xb2, 0xcb, 0x1e, 0xe4, 0x1, 0xff, + 0xc8, 0x27, 0xcf, 0xff, 0xfe, 0xbd, 0xb0, 0x7, + 0xff, 0xc, + + /* U+5426 "否" */ + 0x0, 0xf0, 0x91, 0x7f, 0xff, 0xc8, 0x40, 0x3f, + 0x1c, 0x66, 0xef, 0xff, 0xfb, 0x21, 0x0, 0x3f, + 0x9, 0x88, 0xff, 0xf6, 0x40, 0x3f, 0xe1, 0x1f, + 0xfe, 0x71, 0x8b, 0x80, 0x7c, 0x71, 0xbd, 0xdf, + 0xfd, 0x6c, 0xb4, 0x20, 0xe, 0x14, 0x8d, 0xfe, + 0xef, 0xfe, 0x76, 0xc1, 0x80, 0x7f, 0xf7, 0x4d, + 0xef, 0x29, 0x48, 0x2, 0x38, 0xdb, 0x72, 0x0, + 0xff, 0xfb, 0x92, 0xce, 0xe4, 0x20, 0x80, 0x63, + 0x8d, 0x73, 0x0, 0xff, 0xfa, 0x89, 0xbd, 0x6e, + 0xa9, 0x88, 0x3, 0xf3, 0x88, 0x6, 0x37, 0xbe, + 0xfd, 0xb8, 0x63, 0x10, 0xf, 0xff, 0x20, 0x93, + 0x4e, 0x7e, 0x42, 0x90, 0x0, 0x4d, 0x9d, 0x48, + 0x3, 0xf0, 0xa2, 0x31, 0x84, 0x9, 0x1e, 0x73, + 0xb9, 0x92, 0xc8, 0x20, 0x1f, 0xfd, 0x92, 0x57, + 0xad, 0xfd, 0x96, 0x31, 0x0, 0x12, 0xc6, 0x7e, + 0x4d, 0x68, 0x80, 0x7e, 0x14, 0x7b, 0xde, 0xda, + 0x85, 0x31, 0x1, 0x36, 0x9b, 0xee, 0x64, 0xb1, + 0x88, 0x7, 0xff, 0x30, 0x4d, 0x5e, 0xb7, 0xb6, + 0xa1, 0x48, 0x40, 0x2, 0x8f, 0x7b, 0xaa, 0x73, + 0x10, 0xf, 0xfe, 0x30, 0x92, 0xbd, 0x67, 0x6d, + 0x3a, 0x10, 0x0, 0x4d, 0xa7, 0x3b, 0x69, 0x8c, + 0x40, 0x3f, 0xe1, 0x24, 0x68, 0xac, 0xee, 0x65, + 0x42, 0x90, 0x80, 0x42, 0x8d, 0x5b, 0xd7, 0x8, + 0x40, 0x1f, 0xfd, 0x22, 0x58, 0xbd, 0xeb, 0x85, + 0x20, 0x8, 0x96, 0x73, 0xf2, 0x54, 0x80, 0x38, + 0x9f, 0x75, 0x72, 0xea, 0x62, 0x1, 0x9, 0xac, + 0x56, 0x77, 0x2e, 0x54, 0x80, 0x3f, 0xfb, 0x82, + 0x8f, 0x5b, 0xab, 0x74, 0x10, 0x0, 0x9b, 0x5c, + 0x28, 0x80, 0x44, 0xfd, 0x28, 0x0, 0x24, 0x79, + 0xbe, 0xe6, 0x53, 0xa9, 0x88, 0x7, 0xff, 0x98, + 0x92, 0x2f, 0xf2, 0x15, 0x53, 0x94, 0xa2, 0x1, + 0xc4, 0xd7, 0xfe, 0xdb, 0x86, 0x41, 0x0, 0xff, + 0xf8, 0x89, 0xbd, 0x51, 0x88, 0x3, 0xff, 0xbe, + 0x49, 0x33, 0xde, 0x82, 0x1, 0xff, 0xe8, 0x49, + 0xef, 0xff, 0xfe, 0x5e, 0x54, 0xce, 0xbd, 0xff, + 0xff, 0xe6, 0x6b, 0x90, 0x7, 0xff, 0xfc, 0x3, + 0xfd, 0xe0, 0x1f, 0xfd, 0x65, 0xaf, 0xff, 0xfe, + 0xf6, 0x39, 0x0, 0x7f, 0xf7, 0x44, 0x3, 0xff, + 0xfe, 0x1, 0xff, 0xff, 0x0, 0xff, 0xff, 0x80, + 0x7f, 0xff, 0xc0, 0x3f, 0xfc, 0x62, 0x1, 0xff, + 0xde, 0x70, 0xf, 0xfe, 0xf2, 0xd7, 0xff, 0xff, + 0x7a, 0xdc, 0x80, 0x3f, 0xff, 0xe0, 0x1f, 0xfe, + 0x85, 0xbf, 0xff, 0xfe, 0xf6, 0x41, 0x88, 0xf7, + 0x80, 0x7f, 0xf0, 0x0, + + /* U+542F "启" */ + 0x0, 0xff, 0xf6, 0x8, 0x88, 0xd1, 0x59, 0xe2, + 0x6f, 0x37, 0xb2, 0x50, 0x40, 0x3f, 0xfb, 0x62, + 0x22, 0x21, 0x99, 0x15, 0x4c, 0xc7, 0x74, 0x4c, + 0xaa, 0xf3, 0x75, 0xdf, 0xee, 0xe6, 0xe5, 0xd4, + 0xc3, 0xb2, 0x19, 0x9, 0xb5, 0x51, 0x88, 0x3, + 0xff, 0x88, 0x6f, 0x54, 0x98, 0x84, 0xca, 0xae, + 0xd9, 0x8d, 0xd7, 0x73, 0xfe, 0xee, 0x6e, 0xb3, + 0x17, 0x54, 0x99, 0x44, 0x1d, 0x98, 0xa8, 0x64, + 0x41, 0x0, 0x9, 0x1a, 0x2a, 0x99, 0xe2, 0x6a, + 0xf7, 0xbf, 0xdd, 0x6c, 0x40, 0x1f, 0xfc, 0x5e, + 0x45, 0x67, 0x73, 0x31, 0x51, 0x6, 0x62, 0x20, + 0x80, 0x91, 0xc, 0xc8, 0x85, 0x53, 0x31, 0xdd, + 0x10, 0x99, 0x55, 0xdb, 0x31, 0xbd, 0xff, 0x76, + 0xe5, 0xd5, 0x26, 0x1d, 0x95, 0x8, 0x40, 0x3f, + 0xfa, 0x24, 0xd7, 0xba, 0xee, 0x7f, 0xdd, 0xcd, + 0xd6, 0x62, 0xed, 0x54, 0x99, 0x44, 0x1d, 0xcc, + 0xc5, 0x44, 0x19, 0x88, 0x40, 0x3f, 0xfc, 0x43, + 0xcc, 0x44, 0x11, 0x0, 0x7f, 0xff, 0x8e, 0x33, + 0xbb, 0xff, 0xd7, 0xb0, 0x60, 0x1f, 0xfc, 0xa1, + 0x1f, 0xff, 0x61, 0x88, 0x7, 0xff, 0x24, 0xe3, + 0x7f, 0xff, 0xfc, 0xb6, 0xa0, 0x1f, 0xff, 0xf0, + 0xe, 0x30, 0xf, 0xff, 0xf8, 0x7, 0xff, 0x39, + 0xc0, 0x3f, 0xff, 0xe0, 0x1f, 0x8, 0x6, 0x38, + 0xce, 0xef, 0xff, 0x2d, 0x30, 0x7, 0xff, 0x44, + 0x47, 0xff, 0xce, 0x1, 0xff, 0xca, 0x30, 0xe, + 0x38, 0xef, 0xff, 0xff, 0x5f, 0x49, 0x80, 0x7f, + 0xf0, 0x44, 0x40, 0x1c, 0xe2, 0x20, 0xf, 0xff, + 0xd0, 0x93, 0x80, 0x70, 0x98, 0x7, 0xff, 0xec, + 0xbc, 0x80, 0x30, 0x9b, 0x0, 0x5, 0xaf, 0xbb, + 0xff, 0xd3, 0x28, 0x1, 0xff, 0x39, 0x8, 0x6, + 0x5f, 0x20, 0xc, 0xe2, 0x3f, 0xfe, 0x93, 0x0, + 0xff, 0x8f, 0x1c, 0x3, 0x9, 0x28, 0x80, 0x7f, + 0x24, 0xf7, 0xff, 0xff, 0x6e, 0xd8, 0x40, 0x3f, + 0xf8, 0x62, 0x88, 0x20, 0xc, 0xbe, 0x60, 0x1f, + 0xf1, 0x88, 0x7, 0xff, 0x6d, 0xc0, 0x3f, 0xf8, + 0xa9, 0xa6, 0x1, 0x93, 0x5c, 0x3, 0xff, 0xf4, + 0x9e, 0xa0, 0x19, 0x35, 0xc4, 0x3, 0xff, 0xf0, + 0x2d, 0xea, 0x1, 0x93, 0x5c, 0x40, 0x3f, 0xff, + 0x7, 0x10, 0x40, 0x8, 0x5a, 0x18, 0x40, 0x3f, + 0xf8, 0x29, 0x5f, 0xff, 0xfd, 0xcc, 0x61, 0x0, + 0xff, 0x25, 0x38, 0x80, 0x5, 0x6e, 0xc, 0x3, + 0xff, 0xf4, 0x93, 0xf6, 0xee, 0x88, 0x28, 0x80, + 0x7f, 0xf1, 0x12, 0xbf, 0xff, 0xfb, 0x98, 0xc2, + 0x1, 0xf0, + + /* U+548C "和" */ + 0x0, 0xff, 0xeb, 0x9, 0xab, 0x44, 0x14, 0x80, + 0x3f, 0xfe, 0x62, 0x46, 0x8a, 0xcf, 0x35, 0x7b, + 0xdf, 0xd9, 0x52, 0xee, 0xaf, 0x83, 0x0, 0xff, + 0xf0, 0x89, 0x22, 0xb3, 0xba, 0x26, 0xaf, 0x37, + 0xbf, 0xdd, 0xb9, 0x75, 0x30, 0xca, 0x84, 0x20, + 0x1, 0x23, 0x56, 0x88, 0x60, 0x80, 0x42, 0x45, + 0xff, 0xd4, 0x11, 0x0, 0x7c, 0x6b, 0x35, 0x31, + 0x7, 0x65, 0x43, 0x21, 0x0, 0xfe, 0x26, 0xab, + 0xde, 0xfe, 0xdc, 0xa9, 0x75, 0x42, 0x0, 0x9e, + 0x77, 0x7f, 0xfa, 0x74, 0x80, 0x1f, 0x13, 0x4c, + 0x3c, 0x4d, 0x52, 0xf3, 0x7b, 0x9f, 0xed, 0x83, + 0x0, 0xcd, 0x8a, 0x84, 0x20, 0x1f, 0xfe, 0xc1, + 0x47, 0x87, 0x65, 0x52, 0x19, 0x8, 0x80, 0x3f, + 0xfa, 0xc7, 0x1b, 0xff, 0xff, 0xc5, 0xd8, 0x20, + 0xf, 0xff, 0xf8, 0x7, 0xff, 0xfc, 0x3, 0xff, + 0xa6, 0x23, 0xff, 0xc4, 0x6f, 0x10, 0xe, 0x22, + 0x8, 0xff, 0xf0, 0x80, 0x3f, 0xfb, 0xeb, 0x7d, + 0xdf, 0xfc, 0x3b, 0x72, 0x0, 0xc9, 0x1b, 0xdd, + 0xff, 0xc0, 0xf8, 0x30, 0xf, 0xff, 0xf8, 0x7, + 0xff, 0x9d, 0x6b, 0xff, 0xff, 0x83, 0x6c, 0x20, + 0x1e, 0x49, 0xef, 0xff, 0xfe, 0x7, 0x49, 0x80, + 0x7f, 0xfa, 0xc5, 0xbd, 0x84, 0x3, 0xc9, 0x14, + 0xe4, 0x1, 0xff, 0xf7, 0x26, 0xb4, 0x0, 0xfe, + 0x14, 0x8c, 0xa5, 0x20, 0xf, 0xff, 0x90, 0xac, + 0xc1, 0x0, 0x99, 0x88, 0x3, 0x1a, 0x20, 0x44, + 0xb5, 0xf2, 0x82, 0x1, 0xff, 0xee, 0x38, 0xb4, + 0x0, 0x1c, 0xc5, 0x88, 0x6, 0x7e, 0xaa, 0x31, + 0x1, 0x35, 0xeb, 0x98, 0x7, 0xff, 0xa8, 0x9f, + 0xd8, 0x40, 0x5a, 0x1d, 0x80, 0x3f, 0xa, 0x4f, + 0xc1, 0x80, 0xe, 0x36, 0xd4, 0x80, 0x3f, 0xfc, + 0xa6, 0xfd, 0x6, 0x0, 0x48, 0x82, 0x0, 0x7f, + 0xf0, 0x49, 0xf6, 0x50, 0x40, 0x52, 0x54, 0x80, + 0x3f, 0xfc, 0x47, 0x1d, 0x6, 0x0, 0x27, 0x86, + 0x10, 0xf, 0xfe, 0x20, 0xb5, 0x5a, 0xaa, 0x39, + 0xc8, 0x3, 0xff, 0xbe, 0x2b, 0x5a, 0xe4, 0x0, + 0x16, 0x98, 0x30, 0xf, 0xfe, 0x40, 0xad, 0x51, + 0xc8, 0x3, 0xff, 0xbe, 0x4f, 0x94, 0xa2, 0x0, + 0x16, 0xa9, 0x40, 0xf, 0xff, 0xd9, 0x22, 0x90, + 0x0, 0x9f, 0x65, 0x0, 0x3f, 0xfb, 0x87, 0x39, + 0xbb, 0xff, 0xc5, 0xc9, 0x20, 0xf, 0xf8, 0xe2, + 0x6a, 0x99, 0x6, 0x1, 0xff, 0xdf, 0x11, 0x11, + 0x7f, 0xf1, 0x44, 0x40, 0x1f, 0xfc, 0x24, 0x55, + 0x8, 0x7, 0xff, 0x80, 0x9a, 0x6e, 0xff, 0xf8, + 0xb2, 0xa2, 0x1, 0xff, 0xf1, 0x1e, 0x44, 0xff, + 0xe3, 0xe9, 0x80, 0x7f, 0xff, 0xc0, 0x3f, 0x8, + 0xf8, 0x3, 0xff, 0xcc, 0xd5, 0xdd, 0xb5, 0xc8, + 0x3, 0xff, 0x8a, 0x4f, 0x9d, 0xda, 0x94, 0x0, + + /* U+56DE "回" */ + 0x5, 0xaf, 0xff, 0xff, 0xe5, 0xb0, 0x80, 0x7f, + 0xff, 0xdc, 0x40, 0x3f, 0x92, 0x2e, 0xff, 0xfd, + 0xd0, 0x80, 0x1f, 0xfc, 0x31, 0x24, 0x4f, 0xff, + 0x81, 0x8, 0x7, 0xff, 0xfc, 0x3, 0xff, 0xfe, + 0x1, 0xff, 0xff, 0x0, 0xff, 0xec, 0x1c, 0xf7, + 0xff, 0xff, 0x53, 0xa4, 0xc0, 0x3f, 0xff, 0xe0, + 0x1f, 0xfe, 0x51, 0x7c, 0xff, 0xff, 0xe4, 0x5b, + 0x0, 0x7f, 0xfa, 0x4c, 0x3, 0xff, 0x98, 0x20, + 0x1f, 0xff, 0xf0, 0xf, 0xff, 0xf8, 0x7, 0xff, + 0xfc, 0x3, 0xff, 0xfe, 0x1, 0xff, 0xf4, 0x30, + 0xf, 0xfe, 0x60, 0x80, 0x7f, 0xfa, 0x5, 0xf3, + 0xff, 0xff, 0x91, 0x6c, 0x1, 0xff, 0xe4, 0x13, + 0x11, 0xff, 0xea, 0x18, 0x80, 0x7f, 0xf7, 0x4e, + 0x37, 0xbb, 0xff, 0xa9, 0xb0, 0x60, 0x1f, 0xff, + 0xf0, 0xf, 0xff, 0xf8, 0x7, 0xff, 0xfc, 0x3, + 0xff, 0xb0, 0x26, 0xa6, 0x7f, 0xfe, 0xe5, 0x31, + 0x0, 0xff, 0xe1, 0xac, 0xe6, 0x7f, 0xfb, 0xa5, + 0x40, 0x3f, 0xf8, 0xa2, 0x45, 0xff, 0xee, 0x10, + 0xf, 0xfe, 0x20, 0xb6, 0xef, 0xff, 0xc1, 0x84, + 0x3, 0xe0, + + /* U+56F4 "围" */ + 0x3, 0x8d, 0xee, 0xff, 0xfe, 0x6c, 0x18, 0x7, + 0x18, 0x8f, 0xff, 0xf0, 0xc4, 0x3, 0xfc, 0x2d, + 0x9f, 0xff, 0xfc, 0xde, 0xdc, 0xce, 0xde, 0xff, + 0xff, 0xe7, 0x52, 0x80, 0x7f, 0xf1, 0xc, 0x40, + 0x3f, 0xf9, 0xc6, 0xbd, 0x99, 0x6d, 0xa8, 0x7, + 0xff, 0x38, 0x4c, 0x3, 0xff, 0xfe, 0x1, 0xff, + 0xd1, 0x26, 0xac, 0xcf, 0xfe, 0x37, 0xc9, 0x0, + 0x42, 0xf3, 0x99, 0xff, 0xc8, 0x84, 0x0, 0xff, + 0xe9, 0x73, 0x99, 0xff, 0xf1, 0x88, 0x40, 0x38, + 0x48, 0xcf, 0xff, 0x90, 0x42, 0x1, 0xff, 0xd1, + 0x28, 0xdf, 0xff, 0xfe, 0x36, 0x39, 0x0, 0x66, + 0xbf, 0xff, 0xfe, 0x45, 0x28, 0x7, 0xff, 0x98, + 0x7c, 0x3, 0x8, 0x7, 0xff, 0xb8, 0x47, 0xff, + 0x88, 0xde, 0x1, 0x84, 0xc4, 0x7f, 0xf8, 0xe0, + 0x1f, 0xfd, 0x93, 0x8f, 0xee, 0xff, 0xe1, 0x5b, + 0x90, 0x6, 0x5a, 0xee, 0xff, 0xe2, 0x64, 0x90, + 0x7, 0xff, 0x60, 0x7d, 0xd5, 0x7f, 0xf8, 0x48, + 0x40, 0x1c, 0x46, 0xab, 0xff, 0xc4, 0x4d, 0x0, + 0xff, 0xec, 0x93, 0x4d, 0x57, 0xff, 0xa, 0x68, + 0x80, 0x21, 0x48, 0xaa, 0xff, 0xe2, 0x4a, 0x90, + 0x7, 0xff, 0xfc, 0x3, 0xff, 0xb2, 0x93, 0xdf, + 0xff, 0xfc, 0x7d, 0x82, 0x0, 0x85, 0xaf, 0xff, + 0xff, 0x91, 0xd0, 0x60, 0x1f, 0xfc, 0xf7, 0x13, + 0x11, 0xff, 0xe4, 0x0, 0x7c, 0x23, 0xff, 0xc4, + 0x0, 0xe2, 0xf2, 0x0, 0xff, 0xe7, 0x9c, 0x6f, + 0x77, 0xff, 0x1f, 0x20, 0x80, 0x21, 0x6a, 0xee, + 0xff, 0xe1, 0x5a, 0x80, 0x66, 0x21, 0x0, 0xff, + 0xfd, 0x91, 0x1c, 0x2, 0x22, 0x30, 0x7, 0xff, + 0xc8, 0x47, 0x80, 0x2, 0x49, 0x74, 0x40, 0x13, + 0xe9, 0x80, 0x7f, 0xfc, 0x96, 0xfb, 0xaf, 0xf7, + 0x6d, 0xb1, 0x0, 0x5, 0x79, 0x40, 0x3f, 0xfe, + 0x69, 0xd0, 0xab, 0xf3, 0x3c, 0x5e, 0x52, 0x0, + 0x7f, 0xfd, 0x51, 0xea, 0xbe, 0x98, 0x74, 0x20, + 0xf, 0xfe, 0x71, 0x88, 0x7, 0xff, 0x38, 0x9b, + 0x37, 0x6c, 0x85, 0x0, 0xff, 0xe7, 0x9, 0x80, + 0x7f, 0xf1, 0x5, 0xb3, 0xff, 0xff, 0x9d, 0xdc, + 0xdd, 0xdd, 0xcf, 0xff, 0xfe, 0x75, 0x28, 0x7, + 0xff, 0x18, 0x48, 0xbf, 0xfe, 0x2, 0x1, 0xff, + 0xc5, 0x27, 0xdd, 0xff, 0xf8, 0xd3, 0x0, 0x7f, + 0x0, + + /* U+5728 "在" */ + 0x0, 0xff, 0xea, 0x8a, 0xce, 0x5c, 0xc3, 0xa0, + 0x80, 0x7f, 0xff, 0xc0, 0x5f, 0x98, 0xd1, 0x9f, + 0x8, 0x3, 0xff, 0xfe, 0x2, 0xfa, 0x80, 0x19, + 0x35, 0xc4, 0x3, 0xff, 0xfc, 0x2f, 0xa8, 0x1, + 0x93, 0x9c, 0x40, 0x3f, 0xfc, 0xc2, 0x46, 0x7f, + 0xfc, 0xa4, 0x9a, 0x40, 0xc, 0x66, 0x12, 0x33, + 0xff, 0xef, 0x10, 0x80, 0x7c, 0x91, 0x99, 0xff, + 0xca, 0xb7, 0x30, 0xe, 0x37, 0xbc, 0xcf, 0xfe, + 0xfc, 0xa0, 0x7, 0xc2, 0x62, 0x3f, 0xfc, 0x80, + 0xf, 0xc2, 0x3f, 0xfe, 0x50, 0xf, 0xc9, 0x3d, + 0xdf, 0xfc, 0x6c, 0x92, 0x0, 0xe4, 0xaf, 0xee, + 0xff, 0xf1, 0xd2, 0x80, 0x7f, 0xf3, 0x45, 0xa6, + 0x8, 0x2, 0x28, 0x95, 0x10, 0xf, 0xfe, 0x29, + 0x22, 0xae, 0x42, 0x0, 0xff, 0xf1, 0x8a, 0x5c, + 0x20, 0x4, 0x2d, 0x2e, 0x40, 0x1f, 0xfc, 0x61, + 0x48, 0xaa, 0xd0, 0xa2, 0x1, 0xff, 0xe0, 0x15, + 0xba, 0x51, 0x0, 0xa, 0xdc, 0x20, 0x7, 0xff, + 0xf0, 0x5a, 0xad, 0x44, 0x0, 0x2b, 0x76, 0x51, + 0x0, 0xff, 0xfd, 0x9b, 0xec, 0xa0, 0x80, 0x5, + 0x6e, 0xca, 0x20, 0x1f, 0xff, 0xa2, 0x6b, 0xd8, + 0x30, 0xe, 0x5c, 0x41, 0x0, 0xff, 0xe6, 0x98, + 0x80, 0x7c, 0x60, 0x1f, 0xfd, 0x62, 0x6a, 0xc9, + 0x41, 0x0, 0xff, 0xe2, 0x13, 0xe7, 0xff, 0xff, + 0x17, 0x60, 0xc0, 0x31, 0xc6, 0xff, 0xff, 0xf1, + 0x76, 0xc, 0x3, 0xfc, 0x29, 0x19, 0xb2, 0xa2, + 0x0, 0x12, 0x20, 0x80, 0x7f, 0xfe, 0xce, 0x32, + 0xdc, 0xc0, 0x21, 0x59, 0xcf, 0xb2, 0x0, 0xff, + 0xe0, 0x93, 0xe7, 0xff, 0xff, 0x17, 0x60, 0xc0, + 0x31, 0xc6, 0xff, 0xff, 0xf1, 0x76, 0xc, 0x3, + 0xf1, 0xd5, 0xc, 0x0, 0x4d, 0x7f, 0x4c, 0x46, + 0x1, 0xff, 0xd7, 0x31, 0x0, 0xf8, 0xc0, 0x3f, + 0xfa, 0x24, 0xff, 0x79, 0x89, 0x41, 0x0, 0xff, + 0xff, 0x80, 0x71, 0xa1, 0x88, 0x7, 0xff, 0xfc, + 0x3, 0xff, 0xfe, 0x1, 0xff, 0xff, 0x0, 0xff, + 0xff, 0x80, 0x7f, 0xff, 0xc0, 0x3f, 0xff, 0xe0, + 0x1c, 0x23, 0xff, 0xca, 0x21, 0x0, 0xe1, 0xf2, + 0x11, 0xff, 0xe5, 0x0, 0x7f, 0xf5, 0x12, 0xfb, + 0xbf, 0xf9, 0x39, 0x6, 0x1, 0x89, 0xf3, 0xbb, + 0xff, 0x93, 0x4a, 0x1, 0xff, 0xff, 0x0, 0xff, + 0xe1, 0x0, + + /* U+57AB "垫" */ + 0x0, 0xff, 0xe2, 0x8, 0x88, 0xb0, 0x80, 0x7f, + 0xf3, 0x84, 0x8b, 0x8, 0x80, 0x3f, 0xfc, 0x42, + 0xdb, 0xbb, 0x21, 0x0, 0x3f, 0xf9, 0x8b, 0x5b, + 0xba, 0x9c, 0x40, 0x3f, 0xff, 0xe0, 0x1f, 0xff, + 0xf0, 0xf, 0xff, 0x62, 0x57, 0xff, 0xfd, 0xd0, + 0x60, 0x10, 0xb5, 0xff, 0xfe, 0xe9, 0x41, 0x7c, + 0xff, 0xff, 0x52, 0x0, 0x64, 0x9e, 0xff, 0xff, + 0xe1, 0xda, 0x80, 0x7f, 0xf8, 0x44, 0x3, 0x38, + 0x8f, 0xf0, 0x7, 0xf0, 0x8f, 0xf8, 0x3, 0xff, + 0x96, 0x97, 0xdd, 0xff, 0x63, 0x98, 0x6, 0x5a, + 0xee, 0xfe, 0x84, 0x17, 0xbe, 0xef, 0xeb, 0x60, + 0xc, 0x71, 0xbd, 0xdf, 0xeb, 0x60, 0xf, 0xfe, + 0x50, 0x8f, 0xff, 0x0, 0xbc, 0x3, 0x9, 0x88, + 0xff, 0xc0, 0x1c, 0x44, 0x10, 0xc, 0x24, 0xa0, + 0x19, 0x8c, 0x80, 0x3f, 0xf8, 0xa6, 0x1, 0xff, + 0xdc, 0x12, 0x34, 0x56, 0x53, 0x1, 0x49, 0xcd, + 0xed, 0xa6, 0x34, 0xf2, 0x0, 0x8b, 0x58, 0x3, + 0xff, 0xc0, 0x24, 0x69, 0xc2, 0x1, 0xb, 0xce, + 0xf7, 0xf6, 0xe5, 0xd4, 0xc9, 0x8, 0xc4, 0x8, + 0x40, 0x96, 0x72, 0x98, 0x40, 0x27, 0x22, 0x0, + 0x7f, 0xf0, 0x44, 0x3, 0x84, 0x3, 0xff, 0x82, + 0x4b, 0x13, 0x57, 0x9b, 0xdf, 0xee, 0xdc, 0xa6, + 0x20, 0xc, 0x24, 0x41, 0x0, 0x9, 0x1a, 0x35, + 0x99, 0x89, 0x67, 0x3f, 0x25, 0x8c, 0x40, 0x3c, + 0xfe, 0xa4, 0x1, 0xfe, 0x70, 0xe, 0x70, 0xf, + 0xfe, 0x21, 0x2b, 0x2a, 0x19, 0x8, 0x6, 0x11, + 0x80, 0x39, 0x23, 0x3b, 0xfd, 0xdb, 0x97, 0x2e, + 0x82, 0x1, 0x84, 0xda, 0xec, 0x40, 0x1e, 0x25, + 0xad, 0xeb, 0x74, 0x10, 0xf, 0x9, 0x80, 0x61, + 0x30, 0xf, 0xfe, 0x9, 0x2d, 0xb3, 0xc4, 0xd5, + 0xe6, 0xff, 0xbb, 0xe4, 0xc0, 0x21, 0x23, 0x30, + 0x80, 0x7f, 0xf1, 0x12, 0x24, 0xc0, 0x24, 0x89, + 0x73, 0x10, 0x14, 0x8b, 0xfc, 0x84, 0x10, 0x1f, + 0x10, 0x8, 0xbc, 0x40, 0x21, 0x23, 0x20, 0xf, + 0x89, 0xa6, 0x1d, 0x95, 0xc, 0x80, 0x3f, 0xf9, + 0xe2, 0xb5, 0x45, 0x10, 0x2, 0x4c, 0x9d, 0xa3, + 0x3e, 0xdd, 0x4, 0x4, 0xdb, 0x94, 0x48, 0x8c, + 0x1, 0x9, 0x30, 0x4, 0x55, 0xdb, 0xd8, 0xc4, + 0x1, 0xff, 0xd9, 0x25, 0xac, 0xa5, 0x10, 0x14, + 0x99, 0x31, 0x0, 0x61, 0x48, 0xbf, 0xb8, 0x85, + 0x51, 0x4, 0x1f, 0x4c, 0x2, 0x4c, 0x40, 0x3, + 0x89, 0x0, 0x80, 0xc, 0x3, 0xe1, 0x1f, 0xe5, + 0xe1, 0x0, 0xff, 0xe0, 0x8a, 0x3d, 0x6e, 0xa9, + 0x48, 0x9, 0xab, 0x2d, 0x88, 0x3, 0xfc, 0x28, + 0xee, 0x40, 0xc, 0x4b, 0x66, 0x0, 0x16, 0xac, + 0xb9, 0x60, 0x0, 0xa2, 0x88, 0x7, 0x85, 0xeb, + 0xbb, 0xeb, 0x62, 0x0, 0x97, 0xd4, 0x3, 0xe1, + 0x61, 0x11, 0x80, 0x92, 0x35, 0xf8, 0x31, 0x0, + 0x7f, 0xf2, 0x89, 0xfe, 0xc, 0x40, 0x4d, 0x8, + 0x5, 0x6e, 0x8c, 0x3, 0xe1, 0x7d, 0x52, 0x2f, + 0x1a, 0x2b, 0x45, 0xd3, 0x8, 0x7, 0xe2, 0x6b, + 0xfe, 0xca, 0x76, 0x99, 0x57, 0xa0, 0x80, 0x7f, + 0xf2, 0xcd, 0xf3, 0xb9, 0xb9, 0x8d, 0xee, 0x52, + 0x90, 0x7, 0xf0, 0xb5, 0x6e, 0xfb, 0x2e, 0xa5, + 0xd0, 0x40, 0x3f, 0xf8, 0x22, 0x23, 0x0, 0xff, + 0xec, 0x9, 0x19, 0x88, 0x40, 0x3f, 0xf8, 0xc2, + 0x45, 0xff, 0xce, 0xf1, 0x0, 0xce, 0x24, 0x5f, + 0xfc, 0xf1, 0x0, 0xff, 0xe5, 0xad, 0xee, 0xff, + 0xf3, 0x71, 0xc8, 0x3, 0x1c, 0x66, 0xef, 0xff, + 0x3a, 0xd4, 0x3, 0xff, 0x94, 0xda, 0x89, 0xff, + 0xcd, 0x32, 0x0, 0xe1, 0x23, 0x44, 0xff, 0xe7, + 0x10, 0x80, 0x7f, 0xf2, 0x8d, 0xee, 0xff, 0xf9, + 0xbb, 0x46, 0x1, 0x96, 0xf6, 0xef, 0xff, 0x9d, + 0x8, 0x1, 0xff, 0xff, 0x0, 0xff, 0xff, 0x80, + 0x7f, 0xf6, 0x45, 0x6b, 0xbb, 0xff, 0xab, 0xf0, + 0x60, 0x19, 0x27, 0xfb, 0xbf, 0xfa, 0xd8, 0xe4, + 0x1, 0xc6, 0x23, 0xff, 0xd7, 0x0, 0xfc, 0x23, + 0xff, 0xd8, 0xf1, 0x0, 0xc2, 0xd7, 0xff, 0xff, + 0xff, 0xff, 0x6c, 0x18, 0x4, + + /* U+5916 "外" */ + 0x0, 0xff, 0xe5, 0x89, 0x10, 0x40, 0x3f, 0xfa, + 0xa4, 0x67, 0xc4, 0x20, 0x1f, 0xfe, 0x4, 0x8d, + 0xd7, 0x7f, 0x52, 0x80, 0x7f, 0xf4, 0xe, 0xf7, + 0x33, 0x4b, 0x80, 0x7f, 0xf7, 0xd3, 0x5c, 0x3, + 0x16, 0xa0, 0x7, 0xff, 0xfc, 0x3, 0x1e, 0xb8, + 0x80, 0x47, 0x6a, 0x20, 0x1f, 0xff, 0xf0, 0x8, + 0xed, 0xc4, 0x2, 0x24, 0x52, 0x0, 0xff, 0xff, + 0x80, 0x49, 0x4c, 0x20, 0x19, 0xbd, 0x91, 0x3f, + 0xf8, 0x2a, 0xb2, 0x10, 0x80, 0x7f, 0xfb, 0x85, + 0xbd, 0x84, 0x3, 0x92, 0x2e, 0xff, 0xf8, 0x55, + 0x55, 0xef, 0xc1, 0x80, 0x7f, 0xfa, 0xc9, 0xad, + 0x0, 0x30, 0x91, 0x9f, 0xff, 0xc, 0x84, 0x3, + 0x97, 0x4c, 0x3, 0xff, 0xd4, 0x97, 0x24, 0x1, + 0xb, 0x56, 0xe6, 0x7f, 0xf0, 0xb6, 0xd4, 0x3, + 0x9f, 0xea, 0x8e, 0x60, 0x1f, 0xfe, 0x53, 0x89, + 0x61, 0x0, 0x92, 0xe1, 0x0, 0x3f, 0xf8, 0x6b, + 0x88, 0x1, 0xc6, 0xab, 0x47, 0xb9, 0x0, 0x7f, + 0xf8, 0x49, 0xfd, 0xc8, 0x2, 0x27, 0x85, 0x10, + 0xf, 0xfe, 0x19, 0xe2, 0x0, 0x64, 0x9a, 0x61, + 0x0, 0x1c, 0x73, 0x90, 0x7, 0xff, 0x74, 0x9b, + 0xa0, 0xc0, 0x21, 0x58, 0x81, 0x80, 0x7f, 0xf1, + 0x9, 0x10, 0x20, 0x11, 0xeb, 0xac, 0xd3, 0x10, + 0x0, 0xe3, 0xe5, 0x18, 0x3, 0xff, 0xb0, 0x91, + 0xf2, 0x60, 0x1c, 0x2b, 0x14, 0xc6, 0x20, 0x1f, + 0xfc, 0x11, 0x5b, 0x30, 0x8, 0xad, 0x4, 0x0, + 0x93, 0xce, 0x40, 0x2, 0x6a, 0xb7, 0x10, 0xf, + 0xfe, 0x99, 0x35, 0xd3, 0x90, 0x4, 0x26, 0x84, + 0x0, 0x25, 0x9c, 0xfc, 0x96, 0x30, 0xf, 0xc4, + 0xd4, 0x60, 0x11, 0x52, 0x90, 0x7, 0x1c, 0x7c, + 0xa0, 0x80, 0x8c, 0x1, 0xff, 0xd2, 0x15, 0x88, + 0x20, 0x80, 0x47, 0x19, 0x8b, 0xdd, 0x53, 0x98, + 0x80, 0x9b, 0x4e, 0x6d, 0x39, 0x88, 0x0, 0xea, + 0x84, 0x1, 0x1d, 0x29, 0x0, 0x7e, 0x26, 0xbd, + 0x72, 0x0, 0xfe, 0x10, 0xf, 0xfe, 0x50, 0xad, + 0x65, 0x32, 0x3d, 0xeb, 0x90, 0x4, 0x4b, 0x19, + 0xf9, 0xa, 0x40, 0x2, 0x58, 0xcf, 0xba, 0x86, + 0x20, 0x9, 0x29, 0x88, 0x3, 0xff, 0x80, 0x71, + 0x92, 0x80, 0x1c, 0x91, 0xb0, 0x82, 0x1, 0xff, + 0xca, 0x25, 0x9b, 0x84, 0x10, 0xf, 0xe1, 0x37, + 0xac, 0xc4, 0xa0, 0x80, 0x5, 0x15, 0x4, 0x0, + 0x2b, 0xcc, 0x20, 0x1f, 0xfc, 0x31, 0x52, 0x10, + 0xe, 0x13, 0x7b, 0xfb, 0x74, 0x10, 0xf, 0xfe, + 0xd0, 0x9b, 0x5f, 0xd2, 0x88, 0x7, 0x14, 0xc2, + 0x80, 0x7f, 0xf4, 0x85, 0x22, 0xfe, 0xe1, 0x8, + 0x3, 0xff, 0xb4, 0xb8, 0x82, 0x1, 0xa, 0xc3, + 0x90, 0x7, 0xff, 0x39, 0x27, 0x29, 0x8c, 0x2, + 0x14, 0x7b, 0xde, 0xb8, 0x63, 0x10, 0xf, 0xfe, + 0x92, 0x4c, 0x98, 0x40, 0x24, 0x8b, 0x50, 0xf, + 0xfe, 0x91, 0xac, 0xe6, 0xd3, 0x10, 0x6, 0x14, + 0x79, 0xcf, 0xb5, 0x10, 0xf, 0xfe, 0x60, 0xa4, + 0xc9, 0x88, 0x2, 0x39, 0x93, 0x8, 0x7, 0xff, + 0x5c, 0x96, 0x77, 0xb2, 0x58, 0xc4, 0x0, 0x91, + 0x2a, 0x20, 0x1f, 0xfc, 0xa3, 0x8d, 0xb6, 0x20, + 0x9, 0x27, 0x98, 0x80, 0x3f, 0xfb, 0xa2, 0x6d, + 0x39, 0xfb, 0xaa, 0x62, 0x0, 0xff, 0xe4, 0x93, + 0x5e, 0xb9, 0x80, 0x42, 0xb7, 0x4c, 0x40, 0x1f, + 0xfe, 0x41, 0x22, 0x8, 0x7, 0xff, 0x1c, 0x52, + 0x33, 0x12, 0x82, 0x0, 0x13, 0x8c, 0xa4, 0x10, + 0xf, 0xff, 0xc8, 0x9b, 0xdf, 0xdb, 0x98, 0x80, + 0x4, 0xe3, 0x71, 0xc8, 0x3, 0xff, 0xee, 0x26, + 0xd3, 0x9f, 0x90, 0x82, 0x1, 0x12, 0xce, 0x61, + 0xcc, 0x3, 0xff, 0xf0, 0x29, 0x1b, 0x2c, 0x62, + 0x1, 0xa, 0x46, 0x62, 0x98, 0x80, 0x3f, 0xff, + 0x62, 0x93, 0x94, 0xa6, 0x8f, 0x5b, 0xd6, 0xe6, + 0x20, 0x1f, 0xff, 0xb0, + + /* U+591A "多" */ + 0x0, 0xff, 0xec, 0x9, 0x19, 0x88, 0x3, 0xff, + 0xfe, 0x2, 0x71, 0xba, 0xcc, 0x6f, 0xf5, 0x28, + 0x80, 0x7f, 0xfe, 0x4, 0xe3, 0x71, 0xcc, 0x2, + 0x37, 0xda, 0x51, 0x0, 0xff, 0xfa, 0x9, 0xbd, + 0xfe, 0x39, 0x80, 0x70, 0x89, 0x3f, 0x33, 0xff, + 0x8f, 0xb9, 0x4e, 0x82, 0x1, 0xff, 0xda, 0x13, + 0x7a, 0xcc, 0x42, 0x8, 0x7, 0xe1, 0x23, 0x3f, + 0xfe, 0x49, 0x1a, 0xce, 0xa8, 0x7, 0xff, 0x54, + 0x4d, 0xa7, 0x7f, 0x21, 0x48, 0x0, 0x4b, 0x39, + 0xbb, 0xff, 0xca, 0xc9, 0x41, 0x0, 0xc2, 0xb7, + 0x8, 0x1, 0xff, 0xcf, 0x13, 0x57, 0xad, 0xec, + 0x96, 0x21, 0x0, 0xc9, 0x3f, 0x4c, 0x64, 0x5f, + 0xfc, 0x81, 0x5f, 0x94, 0x10, 0x0, 0xad, 0xd9, + 0x44, 0x3, 0xff, 0x92, 0x24, 0xaf, 0x39, 0xdc, + 0xca, 0x85, 0x20, 0x0, 0x99, 0x88, 0x40, 0x24, + 0x9d, 0xd5, 0x3a, 0x8, 0x7, 0xff, 0xc, 0x9a, + 0xf6, 0xc, 0x2, 0x38, 0xda, 0x51, 0x0, 0xff, + 0xe5, 0xa, 0x45, 0xc3, 0x18, 0x80, 0x4, 0xda, + 0x2f, 0x7b, 0x31, 0xbf, 0x92, 0xa4, 0x0, 0x25, + 0x8b, 0xed, 0xa6, 0x30, 0xf, 0x85, 0x23, 0x31, + 0x28, 0x20, 0x2, 0x6b, 0xd7, 0x30, 0xf, 0xfe, + 0x68, 0xad, 0x6c, 0x2b, 0x45, 0xef, 0x64, 0xba, + 0x10, 0x6, 0x13, 0x6a, 0xde, 0xb8, 0x41, 0x0, + 0x12, 0xce, 0x6d, 0x31, 0xa3, 0xdf, 0xdb, 0x98, + 0x80, 0x9b, 0xe6, 0x25, 0x4, 0x3, 0xff, 0xa4, + 0x6f, 0x52, 0xe8, 0x40, 0x1f, 0xfc, 0x31, 0x47, + 0xbf, 0xb8, 0x41, 0x0, 0x12, 0xce, 0x5c, 0x20, + 0x80, 0x9, 0x6b, 0x31, 0x6, 0x20, 0x1f, 0xfe, + 0xf3, 0x0, 0x11, 0x4, 0x3, 0xe3, 0x69, 0xdf, + 0xec, 0x9c, 0xba, 0x87, 0x52, 0x0, 0xff, 0xf2, + 0x89, 0xb4, 0x56, 0xfe, 0xdc, 0x31, 0x88, 0x0, + 0x92, 0x2f, 0xb2, 0xa, 0xfe, 0xd9, 0xd, 0x15, + 0x1, 0x88, 0x3, 0xff, 0xba, 0x24, 0x6a, 0xf5, + 0x9d, 0xcc, 0x97, 0x52, 0x0, 0x9, 0x2b, 0xd6, + 0x76, 0xdb, 0xb2, 0x56, 0x5b, 0x10, 0x4, 0x4d, + 0x7a, 0xe6, 0x1, 0xff, 0xc4, 0x11, 0x0, 0x7f, + 0xf0, 0x44, 0x8d, 0x5a, 0x26, 0xf3, 0xbf, 0xb7, + 0x2a, 0x14, 0xc4, 0x0, 0x26, 0xb1, 0x5b, 0xdb, + 0x50, 0xa6, 0x4d, 0x5b, 0xaa, 0x52, 0x0, 0xf1, + 0x35, 0xf7, 0xff, 0xff, 0x1b, 0xba, 0xc9, 0x51, + 0x0, 0xc2, 0xb5, 0xdc, 0xdc, 0xa9, 0x76, 0x43, + 0x10, 0x8, 0x49, 0x15, 0xe6, 0xf7, 0xb2, 0x9d, + 0x48, 0x9, 0x1e, 0xb7, 0x25, 0x48, 0x2, 0x11, + 0x11, 0x7f, 0xf2, 0x84, 0x40, 0x1c, 0x24, 0x2, + 0x20, 0xc, 0x2b, 0xce, 0x20, 0x11, 0x1a, 0xb4, + 0x55, 0xef, 0x73, 0x6e, 0xa1, 0x90, 0x80, 0x4d, + 0xa6, 0xfb, 0x6e, 0x14, 0x80, 0x4, 0xb1, 0x9d, + 0xd6, 0xef, 0xff, 0x27, 0x98, 0x80, 0x39, 0x22, + 0x8, 0x1, 0xf2, 0x46, 0x6f, 0x7e, 0xe5, 0x4b, + 0xaa, 0x10, 0x80, 0x44, 0x8d, 0x15, 0xbd, 0x92, + 0xc8, 0x20, 0x18, 0xe3, 0x75, 0x4e, 0x62, 0x1, + 0xff, 0xc9, 0x39, 0xe7, 0x30, 0x8, 0x9e, 0x18, + 0x40, 0x3f, 0x84, 0x88, 0x20, 0x1c, 0x26, 0xaf, + 0x37, 0xbf, 0xb7, 0x2e, 0xa4, 0x0, 0x13, 0x21, + 0x0, 0xc7, 0x19, 0x70, 0xa4, 0x1, 0xff, 0xc7, + 0x14, 0xad, 0x62, 0x0, 0x8e, 0x3a, 0xc, 0x3, + 0xff, 0x8c, 0x4f, 0xb9, 0x50, 0xc8, 0x40, 0x1, + 0x36, 0x8a, 0xce, 0xe6, 0x6f, 0x6d, 0x31, 0x88, + 0xa, 0x3d, 0x6e, 0xad, 0xd0, 0x40, 0x3f, 0xe1, + 0x49, 0xdb, 0x51, 0x0, 0xa, 0x56, 0xb9, 0x80, + 0x7f, 0xf2, 0x9, 0xf6, 0x99, 0x1a, 0x2b, 0x7b, + 0x99, 0x2e, 0xa6, 0x20, 0x18, 0x96, 0x73, 0xf2, + 0x54, 0x80, 0x4, 0x91, 0x7f, 0x90, 0x82, 0x1, + 0x9, 0xbd, 0xfd, 0xb1, 0x80, 0x46, 0xfb, 0x6a, + 0x20, 0x1f, 0xfc, 0xc1, 0x59, 0xb9, 0x75, 0x21, + 0x0, 0xff, 0xe1, 0x89, 0xb5, 0x6e, 0xa5, 0x48, + 0x0, 0x26, 0xf7, 0xf7, 0x35, 0x98, 0x84, 0x10, + 0x0, 0xa4, 0xee, 0x41, 0x80, 0x7f, 0xfb, 0x9, + 0xab, 0x30, 0xe6, 0x1, 0xa, 0x32, 0x90, 0x0, + 0x4d, 0xaf, 0xed, 0x88, 0x3, 0xff, 0xdc, 0x48, + 0xd3, 0x5c, 0xe6, 0x1, 0xe2, 0x58, 0xcf, 0xc9, + 0x41, 0x0, 0xff, 0xf4, 0x9, 0x23, 0x3c, 0xde, + 0xf6, 0xdc, 0xb2, 0x10, 0x0, 0x4d, 0x62, 0xf7, + 0x54, 0xe6, 0x20, 0x1f, 0xfd, 0xf1, 0x23, 0x45, + 0x67, 0x89, 0xac, 0xde, 0xe6, 0xdc, 0xc3, 0x21, + 0x8, 0x0, 0x4d, 0xa2, 0xf7, 0xb2, 0x9d, 0x8, + 0x3, 0xff, 0xb2, 0x28, 0xf3, 0x57, 0x9b, 0xdf, + 0xee, 0xdc, 0xba, 0x98, 0x76, 0x53, 0x21, 0x0, + 0x9, 0x23, 0x44, 0xde, 0xff, 0x64, 0xba, 0x10, + 0x7, 0xff, 0x7c, 0x58, 0x55, 0x48, 0x64, 0x20, + 0x1e, 0x12, 0x45, 0x68, 0x9a, 0xcd, 0xee, 0x6d, + 0xcb, 0xb2, 0x10, 0x7, 0xff, 0x9c, 0x9b, 0xe5, + 0xe2, 0x6a, 0xf3, 0x7b, 0xfd, 0xdb, 0x75, 0x2e, + 0xca, 0x64, 0x20, 0x1f, 0xfe, 0x50, + + /* U+5BC6 "密" */ + 0x0, 0xff, 0xed, 0x9, 0xa2, 0x71, 0x8, 0x7, + 0xff, 0xfd, 0x26, 0xef, 0x55, 0x8, 0x3, 0xff, + 0xfe, 0x1, 0xff, 0xe6, 0x48, 0xbb, 0xff, 0xe9, + 0xe4, 0x20, 0x6, 0x16, 0xfb, 0xbf, 0xfe, 0xa3, + 0x98, 0x7, 0xc2, 0x48, 0x9f, 0xfd, 0x33, 0x21, + 0x0, 0xe1, 0x34, 0x4f, 0xfe, 0xa7, 0x38, 0x7, + 0xff, 0x4, 0x9a, 0xae, 0xff, 0xf8, 0xf5, 0x4b, + 0xbf, 0xfe, 0xd4, 0x20, 0x7, 0xff, 0x20, 0x79, + 0xd1, 0x3f, 0xf8, 0x8f, 0x91, 0x57, 0x1c, 0x60, + 0xc8, 0x9f, 0xfd, 0x53, 0x20, 0xf, 0xfe, 0xd0, + 0xbf, 0xb1, 0x1, 0xac, 0x5e, 0xf6, 0x53, 0x18, + 0x80, 0x7f, 0x89, 0xaa, 0xe9, 0xd4, 0x84, 0x3, + 0xff, 0xc8, 0x28, 0xf5, 0xbf, 0xb4, 0xe8, 0x42, + 0x6b, 0x39, 0xf9, 0x8, 0x20, 0x10, 0xa4, 0xfc, + 0xaa, 0x2c, 0x4a, 0x98, 0x7, 0xff, 0x31, 0x23, + 0x77, 0x73, 0x2, 0xc4, 0x19, 0x8, 0x40, 0x22, + 0x8d, 0xff, 0xb6, 0x8, 0x4, 0x96, 0x2f, 0x75, + 0x4e, 0x62, 0x23, 0x43, 0x21, 0x38, 0xdb, 0x62, + 0x0, 0xa, 0xd6, 0xb9, 0xa, 0x32, 0x98, 0x4, + 0x91, 0xbb, 0xd0, 0x80, 0x1f, 0x9, 0x17, 0x96, + 0xec, 0xee, 0x9a, 0xa1, 0x0, 0x7f, 0xf1, 0xc9, + 0x63, 0x3f, 0x75, 0xc5, 0x59, 0x87, 0x30, 0x0, + 0xa4, 0xe5, 0x28, 0x25, 0x7d, 0xcd, 0x6d, 0xb9, + 0x80, 0x91, 0x70, 0x80, 0x7f, 0xf0, 0x45, 0xbd, + 0x84, 0x0, 0x73, 0x23, 0x0, 0xff, 0xe5, 0xa, + 0xd4, 0xe5, 0x31, 0x0, 0x5, 0x6b, 0x2d, 0x88, + 0x0, 0x29, 0x76, 0x52, 0x1, 0x48, 0xcc, 0x39, + 0x80, 0x7f, 0xf1, 0x52, 0x2d, 0x0, 0x25, 0x96, + 0x10, 0xf, 0xfe, 0x39, 0x2c, 0xe7, 0xdb, 0xa0, + 0x80, 0x9b, 0xdf, 0xd2, 0x90, 0x7, 0xc2, 0xb5, + 0x94, 0xa2, 0x0, 0x38, 0xcc, 0x39, 0x80, 0x7f, + 0xc4, 0xd7, 0x4c, 0x40, 0x2, 0x79, 0x51, 0x0, + 0xff, 0xe0, 0x88, 0x8d, 0x62, 0xfb, 0x69, 0x8c, + 0x40, 0x4d, 0xef, 0xf2, 0x10, 0x40, 0x31, 0x3e, + 0x76, 0x53, 0x18, 0xa, 0xd6, 0x52, 0x88, 0x0, + 0xe3, 0x69, 0x44, 0x3, 0xa, 0x46, 0x62, 0x50, + 0x40, 0x7, 0x1f, 0x6, 0x1, 0xff, 0xc1, 0x26, + 0xdf, 0xca, 0x74, 0x10, 0x1, 0x2c, 0x5f, 0xe4, + 0x20, 0x80, 0x7e, 0x1f, 0x21, 0x35, 0xc6, 0x0, + 0xc4, 0xb5, 0xae, 0x40, 0x1, 0x5a, 0xa3, 0x8, + 0x0, 0x57, 0x10, 0x84, 0x46, 0xf9, 0xae, 0x40, + 0x1e, 0x24, 0x6b, 0x42, 0x0, 0xc2, 0x30, 0x0, + 0x91, 0xeb, 0x72, 0x9d, 0x4, 0x3, 0xf8, 0x49, + 0x29, 0x44, 0x0, 0x44, 0x70, 0xf, 0x8e, 0x3e, + 0xc, 0x2, 0x5c, 0x41, 0x0, 0xa, 0x46, 0x77, + 0x32, 0xc, 0x9, 0x1a, 0x2b, 0x3b, 0xf6, 0xe5, + 0x8c, 0x3, 0xfc, 0x48, 0xf5, 0xbd, 0xff, 0xff, + 0xc1, 0xed, 0xb6, 0x20, 0x1, 0xd5, 0x8, 0x3, + 0xf8, 0x9f, 0xaa, 0x73, 0xe9, 0x44, 0x4, 0x91, + 0x9e, 0x6b, 0x37, 0xfb, 0x6e, 0x5d, 0x4c, 0x40, + 0x4, 0x6a, 0xf3, 0x54, 0x98, 0x65, 0x44, 0x8c, + 0xff, 0xf9, 0x8, 0x85, 0x68, 0xbd, 0x72, 0x0, + 0xff, 0xe0, 0x12, 0xb1, 0x88, 0x6, 0x37, 0xe8, + 0x83, 0x29, 0x90, 0x9, 0xa2, 0xbc, 0x56, 0x77, + 0xee, 0x54, 0x32, 0xa9, 0x9e, 0x6a, 0xee, 0xcc, + 0xa5, 0x8c, 0xf0, 0xa7, 0xe6, 0x7e, 0xbb, 0x54, + 0xba, 0x8, 0x7, 0xff, 0x2c, 0x96, 0xb2, 0xed, + 0x9b, 0xdf, 0xe9, 0x33, 0xf, 0x6b, 0x18, 0x7, + 0xff, 0x30, 0xc0, 0x3f, 0xf9, 0x2, 0xb1, 0x33, + 0x9c, 0xc0, 0x3f, 0xf8, 0x44, 0x88, 0x32, 0x10, + 0x2d, 0x56, 0x6d, 0xa2, 0x1, 0xff, 0xe1, 0x3d, + 0x56, 0x6d, 0x8a, 0x20, 0x1f, 0xff, 0xf0, 0xf, + 0xff, 0xf8, 0x7, 0xff, 0xfc, 0x3, 0xff, 0xd4, + 0x2e, 0x23, 0xff, 0xc6, 0x31, 0x0, 0xe1, 0x71, + 0x1f, 0xfe, 0x38, 0x7, 0xff, 0x5c, 0x5a, 0xfb, + 0xbf, 0xf8, 0xd2, 0x80, 0x18, 0x5a, 0xfb, 0xbf, + 0xf8, 0xd8, 0xe4, 0x1, 0xff, 0xff, 0x0, 0xff, + 0xef, 0xb, 0xe7, 0xff, 0xff, 0x87, 0x5c, 0x80, + 0x3f, 0xf8, 0x80, + + /* U+5BF8 "寸" */ + 0x0, 0xff, 0xf5, 0x11, 0xa2, 0x63, 0x20, 0xf, + 0xff, 0xf8, 0xaf, 0xdd, 0xee, 0xa3, 0x0, 0xff, + 0xff, 0x80, 0x7f, 0xff, 0xc0, 0x3f, 0xff, 0xe0, + 0x1f, 0xff, 0xf0, 0xf, 0xff, 0xf8, 0x7, 0xff, + 0xdc, 0x5b, 0x3f, 0xff, 0xfc, 0xbd, 0x6, 0x1, + 0x89, 0xf3, 0xff, 0xff, 0x8d, 0xb0, 0x60, 0x1, + 0x0, 0xff, 0xff, 0x80, 0x46, 0x1, 0xb, 0x76, + 0x67, 0xff, 0x96, 0x98, 0x80, 0x30, 0xac, 0xe6, + 0x7f, 0xf1, 0xb6, 0x8c, 0x0, 0x24, 0x67, 0xff, + 0xe5, 0x4e, 0x10, 0xc, 0x64, 0xa6, 0x7f, 0xfc, + 0x72, 0x0, 0xff, 0xff, 0x80, 0x7f, 0xf3, 0x4, + 0xda, 0x25, 0x88, 0x3, 0xff, 0xfe, 0x4d, 0x59, + 0x2e, 0xd3, 0x94, 0x82, 0x1, 0xff, 0xfc, 0x26, + 0x99, 0x20, 0x80, 0x5, 0x6f, 0x5c, 0xc0, 0x3f, + 0xff, 0x84, 0xd7, 0xae, 0x40, 0x11, 0xc6, 0xda, + 0x90, 0x7, 0xff, 0xf0, 0xe3, 0xe5, 0x4, 0x0, + 0x29, 0x5c, 0xe4, 0x1, 0xff, 0xfc, 0x26, 0xba, + 0x61, 0x0, 0x8e, 0x3a, 0xc, 0x3, 0xff, 0xfa, + 0x93, 0x4c, 0x20, 0x11, 0xbf, 0xb9, 0x0, 0x7f, + 0xff, 0x52, 0x69, 0x44, 0x2, 0x3a, 0xa1, 0x80, + 0x7f, 0xff, 0x92, 0x20, 0xcb, 0x39, 0x88, 0x30, + 0xf, 0xff, 0xf9, 0x34, 0xd3, 0x18, 0x80, 0x7f, + 0xff, 0xc0, 0x3f, 0xff, 0xe0, 0x1f, 0xff, 0xf0, + 0xf, 0xff, 0x11, 0x80, 0x80, 0x7f, 0xfc, 0x4d, + 0x5d, 0x9b, 0xff, 0x88, 0xf1, 0x44, 0x1, 0x87, + 0xc4, 0x3, 0xff, 0xd4, 0x25, 0x73, 0x3f, 0xfc, + 0x48, 0x52, 0x0, 0xc5, 0x6a, 0x40, 0x1f, 0xfe, + 0xa2, 0x6a, 0x30, 0xf, 0xfe, 0x0, 0x88, 0x88, + 0x68, 0xaf, 0x39, 0x87, 0x20, 0xf, 0xff, 0x60, + 0xb6, 0x7f, 0xff, 0xf0, 0x3b, 0x9b, 0xac, 0xba, + 0x86, 0x31, 0x0, 0xff, 0xe6, 0x0, + + /* U+5C3A "尺" */ + 0x0, 0xff, 0xe1, 0x9c, 0x66, 0xef, 0xff, 0xbb, + 0x20, 0xc0, 0x3f, 0xf9, 0xce, 0x24, 0x5f, 0xff, + 0x1, 0x0, 0xff, 0xeb, 0xa4, 0x55, 0x7f, 0xf8, + 0x58, 0xc0, 0x3f, 0xfb, 0x82, 0x48, 0xab, 0xff, + 0xe1, 0xc6, 0x0, 0xff, 0xff, 0x80, 0x7f, 0xff, + 0xc0, 0x3f, 0xff, 0xe0, 0x1f, 0xff, 0xf0, 0xf, + 0xff, 0xf8, 0x7, 0xff, 0xfc, 0x3, 0xff, 0xba, + 0x6c, 0x23, 0xff, 0xe0, 0x22, 0x8, 0x7, 0xff, + 0x58, 0xc4, 0x3, 0xa, 0xd7, 0x77, 0xff, 0x83, + 0x61, 0x0, 0x3f, 0xfa, 0xa2, 0x1, 0xff, 0xff, + 0x0, 0xff, 0xe4, 0xad, 0x77, 0xff, 0xff, 0x23, + 0xad, 0x84, 0x3, 0x24, 0xef, 0xff, 0xff, 0x23, + 0xa4, 0xc0, 0x3f, 0xf9, 0xa2, 0x6c, 0x1, 0x84, + 0xc4, 0x40, 0x1f, 0xfc, 0x81, 0x4a, 0x62, 0x0, + 0x92, 0x90, 0x40, 0x3f, 0xfc, 0x65, 0xc2, 0x1, + 0x8c, 0x5c, 0x3, 0xff, 0x96, 0x76, 0xa4, 0x1, + 0x1d, 0x31, 0x0, 0x7f, 0xf8, 0x9c, 0x88, 0x1, + 0x87, 0xc4, 0x3, 0xff, 0x98, 0x75, 0x42, 0x0, + 0x8e, 0xa8, 0x60, 0x1f, 0xfe, 0x1, 0x26, 0x0, + 0xe6, 0x32, 0x0, 0xff, 0xe6, 0x92, 0xd1, 0x80, + 0x44, 0xd2, 0xa2, 0x1, 0xff, 0xde, 0x5f, 0x20, + 0xc, 0x7a, 0xa0, 0x1f, 0xfc, 0xf2, 0x78, 0x61, + 0x0, 0xa, 0xdd, 0x94, 0x40, 0x3f, 0xfb, 0x64, + 0x68, 0x20, 0x10, 0xaa, 0x8, 0x7, 0xff, 0x45, + 0x22, 0xd4, 0x40, 0x2, 0xb7, 0x65, 0x10, 0xf, + 0xfe, 0xc1, 0x2d, 0x90, 0x6, 0x5c, 0x30, 0xf, + 0xfe, 0x98, 0xad, 0xc2, 0x0, 0x42, 0xb7, 0x65, + 0x10, 0xf, 0xfe, 0xa9, 0x2d, 0x18, 0x6, 0x5e, + 0x50, 0xf, 0xfe, 0xb0, 0xb4, 0xc1, 0x80, 0x42, + 0xb5, 0xf4, 0xc4, 0x1, 0xff, 0xd1, 0x4b, 0x92, + 0x0, 0x85, 0x79, 0x40, 0x3f, 0xfb, 0x24, 0xfb, + 0x6c, 0x40, 0x10, 0xac, 0xe6, 0x20, 0xc4, 0x3, + 0xff, 0x96, 0x4d, 0xc, 0x20, 0x10, 0xbc, 0xa0, + 0x7, 0xff, 0x70, 0x52, 0x72, 0xdc, 0xc0, 0x21, + 0x37, 0xcc, 0x53, 0xa1, 0x0, 0x7f, 0xf1, 0x49, + 0xa6, 0xc, 0x3, 0x1c, 0x59, 0x80, 0x7f, 0xf8, + 0x5, 0x23, 0x71, 0xcc, 0x3, 0x12, 0xc5, 0xef, + 0xed, 0xc2, 0x98, 0x80, 0x7e, 0x27, 0xe9, 0x41, + 0x0, 0x92, 0x79, 0x88, 0x3, 0xff, 0xc8, 0x27, + 0x19, 0xb7, 0xa, 0x62, 0x1, 0x89, 0x1e, 0xb3, + 0x5c, 0x80, 0x3c, 0x4d, 0xe, 0x60, 0x4, 0x99, + 0x31, 0x0, 0x7f, 0xfa, 0x89, 0x1e, 0xb3, 0xb6, + 0x9d, 0x48, 0x0, 0x93, 0xae, 0x40, 0x1f, 0xa, + 0x46, 0x6e, 0xa9, 0x88, 0x3, 0xff, 0xe4, 0x4b, + 0x15, 0xbd, 0xca, 0x61, 0x0, 0xe0, + + /* U+5C4F "屏" */ + 0x0, 0xff, 0x8e, 0x33, 0x77, 0xff, 0xe7, 0x6c, + 0x20, 0x1f, 0xfc, 0x71, 0x22, 0xff, 0xfa, 0x38, + 0x98, 0x7, 0xff, 0x34, 0x9f, 0x3b, 0xbf, 0xfc, + 0xbb, 0x6, 0x1, 0xff, 0xd4, 0x1f, 0x11, 0xff, + 0xf3, 0x18, 0xb8, 0x7, 0xff, 0xfc, 0x3, 0xff, + 0xc0, 0x3c, 0x89, 0xff, 0xe7, 0xf6, 0x0, 0xff, + 0xea, 0x13, 0x4d, 0xdf, 0xff, 0x96, 0x98, 0x80, + 0x3f, 0xfa, 0x82, 0x68, 0x9f, 0xfc, 0x12, 0x10, + 0x13, 0x44, 0xff, 0xe7, 0x18, 0x80, 0x91, 0xa2, + 0x7c, 0xa4, 0x60, 0x1f, 0xfc, 0x67, 0x0, 0xe1, + 0x6f, 0xbb, 0xff, 0x4e, 0x39, 0x8, 0x8, 0x64, + 0xdd, 0xff, 0xf2, 0xab, 0x98, 0x0, 0x24, 0x41, + 0xea, 0xbb, 0xd2, 0xa2, 0x1, 0xff, 0xd9, 0x27, + 0xf7, 0x30, 0x1, 0xc7, 0xc1, 0x80, 0x7f, 0xf1, + 0x85, 0x2e, 0xca, 0x20, 0x29, 0x10, 0x51, 0x0, + 0xff, 0xe7, 0x88, 0x7, 0xff, 0x18, 0xe3, 0xdc, + 0x80, 0x4, 0xf0, 0xa2, 0x1, 0xff, 0xc2, 0x15, + 0xba, 0x51, 0x2, 0x6a, 0xa3, 0x10, 0x7, 0xff, + 0x40, 0xc0, 0x31, 0x80, 0x49, 0x19, 0x9f, 0xf7, + 0xa9, 0x80, 0x42, 0xd1, 0xb9, 0x9f, 0xfc, 0x3b, + 0x51, 0x0, 0x8d, 0x23, 0x73, 0x3f, 0xe9, 0x51, + 0x0, 0xff, 0xe6, 0x89, 0x19, 0xff, 0xf0, 0x8, + 0x40, 0x21, 0x22, 0x19, 0xff, 0xf0, 0xc8, 0x40, + 0x38, 0x48, 0xcf, 0xff, 0x82, 0x46, 0x1, 0xff, + 0xc4, 0x11, 0x0, 0x77, 0x88, 0x2d, 0x77, 0x7f, + 0xf0, 0x25, 0x0, 0x31, 0x3e, 0x77, 0x7f, 0xf0, + 0xb6, 0xc, 0x3, 0x13, 0xe7, 0x77, 0xff, 0x2, + 0x98, 0x40, 0x3f, 0xf8, 0x42, 0x4e, 0x1, 0x84, + 0x46, 0x1, 0x8, 0xff, 0xf0, 0x8, 0x40, 0x30, + 0xf9, 0x8, 0xff, 0xf0, 0x88, 0x5c, 0x3, 0xf, + 0x90, 0x8f, 0xff, 0x4, 0x3, 0xff, 0x88, 0x5e, + 0x20, 0x19, 0x8c, 0x40, 0x3f, 0xff, 0xe0, 0x7, + 0x12, 0x0, 0x84, 0xd8, 0x3, 0xff, 0x88, 0x20, + 0x1f, 0xff, 0x1, 0x35, 0x0, 0xc6, 0x22, 0x48, + 0xcc, 0xff, 0xe0, 0xed, 0xa8, 0x6, 0x39, 0xcc, + 0xff, 0xe1, 0xec, 0x20, 0x6, 0x39, 0xcc, 0xff, + 0xe2, 0x52, 0x88, 0x7, 0xf9, 0x34, 0xc0, 0x33, + 0xe1, 0x9, 0x19, 0xff, 0xf0, 0x48, 0x40, 0x3c, + 0x24, 0x67, 0xff, 0xc2, 0x21, 0x0, 0xf0, 0x91, + 0x9f, 0xff, 0xd, 0x8c, 0x3, 0xfc, 0x78, 0x80, + 0x19, 0x31, 0x41, 0x6f, 0xbb, 0xff, 0x81, 0x6e, + 0x40, 0x18, 0xe3, 0x3b, 0xbf, 0xf8, 0x7b, 0x6, + 0x1, 0x89, 0xf3, 0xbb, 0xff, 0x87, 0xac, 0x20, + 0x1f, 0x89, 0x14, 0x40, 0x22, 0x34, 0x10, 0x0, + 0x8f, 0xff, 0x0, 0xb1, 0x48, 0x2, 0x3b, 0x53, + 0x11, 0xff, 0xe1, 0x90, 0xb8, 0x6, 0x1f, 0x21, + 0x1f, 0xfe, 0x20, 0x7, 0xf0, 0xa5, 0x98, 0x6, + 0x7c, 0x20, 0xf, 0xfe, 0x9, 0xc7, 0x39, 0x0, + 0x5, 0x25, 0x88, 0x3, 0xff, 0xcc, 0x53, 0x66, + 0x1, 0x97, 0xd0, 0x3, 0xfc, 0x29, 0x19, 0xae, + 0x40, 0x12, 0x45, 0x28, 0x80, 0x7f, 0xf9, 0x45, + 0x61, 0x88, 0x2, 0x16, 0x95, 0x0, 0xf8, 0x96, + 0x2f, 0x2d, 0xcc, 0x40, 0x4e, 0x32, 0xd8, 0x40, + 0x3f, 0xfc, 0xc5, 0x30, 0xa2, 0x1, 0x1c, 0xd9, + 0x80, 0x72, 0x4f, 0x6d, 0x3a, 0x10, 0x0, 0x96, + 0x73, 0xe, 0x60, 0x1f, 0xfe, 0x92, 0x8c, 0xc4, + 0x2a, 0x47, 0xb9, 0x0, 0x79, 0x22, 0xd4, 0x8d, + 0xa7, 0x3b, 0x69, 0x88, 0x3, 0xff, 0xdc, 0x26, + 0xf5, 0x6e, 0x60, 0x1f, 0xc2, 0xb5, 0xb9, 0x2c, + 0x62, 0x1, 0xff, 0xd2, 0x6b, 0xff, 0xd8, 0xe2, + 0x1, 0xff, 0xc7, + + /* U+5DE5 "工" */ + 0x0, 0xf1, 0xc6, 0xf7, 0x7f, 0xfe, 0x2d, 0x84, + 0x3, 0xff, 0x80, 0x62, 0x3f, 0xff, 0x87, 0x10, + 0xf, 0xf8, 0xae, 0xab, 0xff, 0xa3, 0x2c, 0x40, + 0x1c, 0x6d, 0x55, 0xff, 0xd2, 0x85, 0x10, 0xf, + 0xf0, 0x9a, 0x2a, 0xff, 0xf4, 0x1b, 0xd8, 0x3, + 0x9b, 0x15, 0x7f, 0xfa, 0x48, 0x40, 0x1f, 0xff, + 0xf0, 0xf, 0xff, 0xf8, 0x7, 0xff, 0xfc, 0x3, + 0xff, 0xfe, 0x1, 0xff, 0xff, 0x0, 0xff, 0xff, + 0x80, 0x7f, 0xff, 0xc0, 0x3f, 0xff, 0xe0, 0x1f, + 0xff, 0xf0, 0xf, 0xff, 0xf8, 0x7, 0xff, 0xfc, + 0x3, 0xff, 0xfe, 0x1, 0xff, 0xff, 0x0, 0xff, + 0xff, 0x80, 0x7f, 0xff, 0xc0, 0x3f, 0xff, 0xe0, + 0x1f, 0xff, 0x71, 0x23, 0x3f, 0xfe, 0xaa, 0x73, + 0x80, 0x73, 0x11, 0x9f, 0xff, 0x5c, 0x84, 0x5, + 0xbb, 0x33, 0xff, 0xab, 0x6e, 0x60, 0x1c, 0x71, + 0x99, 0xff, 0xd7, 0xb5, 0x0, 0xff, 0xff, 0x80, + 0x7f, 0x0, + + /* U+5E38 "常" */ + 0x0, 0xff, 0x84, 0xd5, 0x94, 0x80, 0x3f, 0xf8, + 0xc4, 0xf9, 0xdd, 0xa9, 0x44, 0x3, 0xff, 0x88, + 0x4a, 0xee, 0x64, 0x21, 0x0, 0xff, 0xe4, 0x9c, + 0x66, 0x2a, 0x6b, 0xe5, 0x4, 0x3, 0xff, 0x89, + 0xe2, 0x3e, 0x30, 0xf, 0xfe, 0x18, 0xb4, 0xd4, + 0x42, 0x6f, 0x74, 0xc4, 0x1, 0xff, 0xc7, 0x38, + 0x96, 0x20, 0x1, 0x35, 0x5a, 0x88, 0x7, 0xff, + 0x5c, 0x9a, 0xa5, 0x0, 0x21, 0x5b, 0xd6, 0x20, + 0xf, 0xfe, 0x4a, 0x4c, 0x94, 0x40, 0x2, 0xb7, + 0x8, 0x1, 0xff, 0xd4, 0x38, 0xf9, 0x40, 0x0, + 0xa4, 0xe5, 0x20, 0x80, 0x7f, 0xf0, 0x84, 0xcf, + 0xfc, 0xfe, 0xe4, 0x26, 0xb3, 0x80, 0x67, 0xff, + 0xc0, 0x72, 0x30, 0xc, 0xfc, 0xa6, 0x7f, 0xc8, + 0xdc, 0xa8, 0x44, 0x59, 0xf5, 0x13, 0x3f, 0xf8, + 0x80, 0x31, 0xcf, 0x66, 0x7f, 0xa9, 0x88, 0x4d, + 0x62, 0xaf, 0x33, 0xff, 0x81, 0x4a, 0x20, 0x18, + 0xde, 0xf3, 0x3f, 0xae, 0xa5, 0xd0, 0x88, 0xb1, + 0x79, 0x9f, 0xfc, 0xd, 0xa3, 0x0, 0xff, 0x9, + 0xa2, 0x7f, 0xfc, 0xc, 0x40, 0x3f, 0xf8, 0x82, + 0xff, 0x77, 0xff, 0xf0, 0x84, 0x0, 0xff, 0xe5, + 0x8a, 0x3c, 0xcf, 0xff, 0x85, 0xcc, 0x3, 0xff, + 0xa8, 0x76, 0xcd, 0xff, 0xe1, 0xc5, 0x10, 0xf, + 0xfe, 0xca, 0xcf, 0x77, 0xff, 0x53, 0x1c, 0x80, + 0x3f, 0xf9, 0x87, 0x3f, 0xbb, 0x64, 0x18, 0x7, + 0xff, 0x0, 0xc4, 0x7f, 0xfa, 0xbe, 0x20, 0x1f, + 0xfc, 0x4, 0xbd, 0xdd, 0x92, 0x60, 0x18, 0x48, + 0xb8, 0x40, 0x3f, 0xfe, 0x42, 0x45, 0xc2, 0x1, + 0xff, 0xcc, 0x48, 0xbb, 0xff, 0xea, 0x75, 0x18, + 0x7, 0xff, 0x80, 0x49, 0x13, 0xff, 0xa8, 0x64, + 0x1, 0xff, 0xda, 0x17, 0xcf, 0xff, 0xfe, 0x36, + 0xb9, 0x0, 0x64, 0x9e, 0xff, 0xff, 0xe2, 0xdb, + 0x8, 0x7, 0xff, 0xfc, 0x3, 0xff, 0xa2, 0x6f, + 0x9b, 0xbf, 0xfc, 0xdf, 0x62, 0x0, 0xc9, 0x19, + 0xbb, 0xff, 0xce, 0x95, 0x0, 0xff, 0xe2, 0x71, + 0x17, 0xff, 0x3c, 0x40, 0x3c, 0x24, 0x5f, 0xfd, + 0x0, 0xf, 0xfe, 0x51, 0x35, 0xe6, 0x7f, 0xf1, + 0xe9, 0x84, 0x3, 0x1b, 0xde, 0x67, 0xff, 0x1d, + 0xcc, 0x3, 0xff, 0xa0, 0x3c, 0xa6, 0x7f, 0xfc, + 0x77, 0x13, 0x0, 0xcf, 0xca, 0x67, 0xff, 0xc7, + 0xd7, 0x0, 0xff, 0xff, 0x80, 0x7f, 0xff, 0xc0, + 0x3f, 0xff, 0xe0, 0x1f, 0xfc, 0x31, 0x30, 0xf, + 0xff, 0xb0, 0xb5, 0xf7, 0x7f, 0xd2, 0x80, 0x18, + 0x4d, 0x80, 0x3f, 0xf8, 0x82, 0x1, 0xff, 0xdd, + 0x17, 0xe5, 0x11, 0xfe, 0x0, 0x84, 0x96, 0x36, + 0x4c, 0x3, 0xff, 0x86, 0x71, 0xdf, 0xf6, 0x38, + 0x80, 0x7f, 0xf5, 0xc5, 0x6f, 0xbb, 0xf7, 0xfe, + 0xed, 0xa7, 0x31, 0x0, 0xfe, + + /* U+5E55 "幕" */ + 0x0, 0xff, 0xe6, 0xad, 0x7f, 0xec, 0x72, 0x0, + 0xff, 0xe4, 0x13, 0xe7, 0xfe, 0xa5, 0x0, 0xff, + 0xf3, 0x89, 0x88, 0x6, 0x1f, 0x10, 0xf, 0xfe, + 0x40, 0xf8, 0x80, 0x61, 0x31, 0x0, 0xff, 0xe9, + 0x13, 0xef, 0xff, 0xff, 0x17, 0xa5, 0x0, 0x31, + 0x3e, 0x7f, 0xff, 0xf2, 0x31, 0xc8, 0x3, 0x24, + 0xf7, 0xff, 0xff, 0x1a, 0x50, 0x3, 0xfe, 0x17, + 0x33, 0xff, 0xe3, 0x10, 0x80, 0x70, 0x91, 0x9f, + 0xff, 0x20, 0x84, 0x3, 0x84, 0x8c, 0xff, 0xf8, + 0xc9, 0xce, 0x1, 0xfe, 0x26, 0xac, 0xcf, 0xfe, + 0x34, 0x20, 0x6, 0x29, 0xfc, 0xcf, 0xfe, 0x47, + 0xc9, 0x80, 0x65, 0x8c, 0xcf, 0xfe, 0x35, 0xb9, + 0x80, 0x7f, 0xf2, 0x9, 0x1d, 0xff, 0xb0, 0xc, + 0xf3, 0x75, 0x3b, 0xff, 0xf2, 0x17, 0xd5, 0x78, + 0xb5, 0xdf, 0xfc, 0xa6, 0x20, 0x1f, 0xfd, 0x7, + 0xe8, 0x8f, 0xe6, 0x53, 0x3c, 0x8c, 0xf1, 0x1f, + 0xfc, 0x97, 0x65, 0x5c, 0xcf, 0x11, 0xfe, 0x94, + 0x30, 0xf, 0xfe, 0xb1, 0xc6, 0xff, 0xff, 0xf7, + 0xfa, 0x50, 0x3, 0xff, 0xbc, 0x26, 0x1, 0xff, + 0xdf, 0x13, 0x0, 0xff, 0xef, 0x1c, 0xf7, 0xff, + 0xff, 0x82, 0x90, 0x3, 0xff, 0xba, 0x28, 0xf1, + 0x1f, 0xfd, 0xf7, 0x52, 0x0, 0xff, 0xee, 0x96, + 0xcb, 0xbf, 0xff, 0x7e, 0x3d, 0x80, 0x3f, 0xfb, + 0xa5, 0xb1, 0x1f, 0xfe, 0x9, 0xe6, 0x0, 0xff, + 0xee, 0x8a, 0x33, 0xbf, 0xff, 0x7d, 0x90, 0x80, + 0x3f, 0xfa, 0xeb, 0x5f, 0xff, 0xfc, 0xc, 0x73, + 0x0, 0xc2, 0xd7, 0xdf, 0xff, 0xfd, 0x6c, 0x72, + 0x0, 0xff, 0xe2, 0x92, 0xcd, 0xdf, 0xff, 0x27, + 0x74, 0xe6, 0x1, 0x9, 0x97, 0xd5, 0xdf, 0xff, + 0x82, 0x10, 0x3, 0xf0, 0xea, 0x27, 0xff, 0x28, + 0x84, 0x3, 0x84, 0x91, 0x3f, 0xfc, 0x66, 0x42, + 0x1, 0xf1, 0xce, 0x77, 0x7f, 0xdb, 0x94, 0xe6, + 0x20, 0x1c, 0x6f, 0x7b, 0xdd, 0xf6, 0x39, 0x80, + 0x63, 0x8d, 0xee, 0xfd, 0xb6, 0xe6, 0x1, 0x84, + 0xde, 0xb3, 0x7b, 0xbf, 0xf8, 0x14, 0xc2, 0x1, + 0xf8, 0x47, 0xfe, 0x27, 0x8e, 0xa7, 0x31, 0x1, + 0x38, 0xcc, 0x42, 0x10, 0x8f, 0xc5, 0xc0, 0x1c, + 0xe2, 0x42, 0x3f, 0x89, 0x23, 0x71, 0xcc, 0x4, + 0xde, 0xb6, 0x64, 0xa0, 0x23, 0xfe, 0x0, 0xff, + 0xe1, 0x89, 0x2c, 0x5e, 0xe4, 0xa9, 0x0, 0x7d, + 0x91, 0x77, 0xff, 0x6d, 0x98, 0x6, 0x5b, 0xcb, + 0xbf, 0xfa, 0xa1, 0x0, 0x40, 0x30, 0xa3, 0xdf, + 0x6d, 0x43, 0x18, 0x80, 0x7f, 0xf0, 0x89, 0x5e, + 0xb7, 0xf6, 0x9d, 0x8, 0x4, 0x60, 0xe, 0x13, + 0x44, 0xff, 0xe0, 0x99, 0x0, 0x70, 0x91, 0xa2, + 0x7f, 0xf0, 0x4c, 0xc2, 0x1, 0xfc, 0x4a, 0xf3, + 0x9d, 0xcd, 0xb8, 0x63, 0x10, 0xe, 0x38, 0xfa, + 0x85, 0x21, 0x1, 0x36, 0x9c, 0xfd, 0x62, 0x0, + 0x85, 0xaf, 0xff, 0xff, 0x83, 0xb0, 0x60, 0x19, + 0x27, 0xbf, 0xff, 0xf8, 0x5b, 0x6, 0x1, 0x8e, + 0x37, 0x54, 0xe8, 0x20, 0x1, 0x24, 0x40, 0x80, + 0x80, 0x71, 0xc7, 0xc2, 0x21, 0xeb, 0x7b, 0x25, + 0x8c, 0x40, 0x3f, 0x38, 0x7, 0xff, 0x4, 0xc4, + 0x3, 0xe1, 0x0, 0xff, 0xe1, 0x18, 0x80, 0x78, + 0x4c, 0x96, 0x2f, 0xb9, 0x95, 0x37, 0xce, 0x60, + 0x1f, 0x89, 0xee, 0xd0, 0xa4, 0x1, 0xff, 0xf7, + 0x13, 0x56, 0x42, 0x0, 0xff, 0xf8, 0x89, 0x17, + 0xcb, 0xe2, 0x1, 0x9c, 0x4, 0x3, 0xff, 0xf6, + 0x2f, 0x3b, 0xbe, 0xb6, 0x20, 0x8, 0x8d, 0x40, + 0x3f, 0xfa, 0xe5, 0x94, 0xef, 0x36, 0x8, 0x7, + 0xff, 0x40, 0x5f, 0xe1, 0x9b, 0xcf, 0x13, 0x59, + 0x88, 0x30, 0xf, 0xfe, 0x30, + + /* U+5E8F "序" */ + 0x0, 0xff, 0xf0, 0x9, 0xa2, 0x63, 0x20, 0xf, + 0xff, 0xf8, 0x4, 0x2f, 0x17, 0x7b, 0xa8, 0xc0, + 0x3f, 0xff, 0xe0, 0x1f, 0xff, 0xf0, 0xf, 0xff, + 0xc1, 0x3e, 0x77, 0x7f, 0xf4, 0xe5, 0x0, 0x31, + 0x3e, 0x77, 0x7f, 0xf4, 0xf6, 0xc, 0x3, 0xfe, + 0xf1, 0x1f, 0xfe, 0x98, 0x7, 0xf8, 0x47, 0xff, + 0xa6, 0x60, 0x1f, 0xfc, 0x61, 0x6a, 0xee, 0xff, + 0xfa, 0xfc, 0x98, 0x7, 0xff, 0x14, 0x58, 0x47, + 0xff, 0xee, 0x1, 0xff, 0xce, 0x15, 0x9c, 0xcf, + 0xff, 0xd, 0xc2, 0x8, 0x7, 0xff, 0x5c, 0xc9, + 0x4c, 0xff, 0xfc, 0x28, 0xf3, 0x23, 0x0, 0xff, + 0xeb, 0x13, 0xef, 0x77, 0xff, 0x5b, 0x25, 0x48, + 0x3, 0xc6, 0xf7, 0x90, 0x60, 0x1f, 0xfd, 0x81, + 0x1f, 0xe2, 0x79, 0x65, 0x31, 0x1f, 0xfe, 0x29, + 0x35, 0x6c, 0xa9, 0x0, 0x5, 0x23, 0x31, 0x8, + 0x20, 0x1f, 0xfc, 0x91, 0x0, 0xff, 0xe5, 0xa, + 0x56, 0xcb, 0xc5, 0xef, 0xed, 0xc3, 0x20, 0x80, + 0x71, 0x24, 0x5f, 0x64, 0x20, 0x80, 0x9b, 0xde, + 0x5b, 0x98, 0x7, 0xff, 0x3c, 0xc0, 0x23, 0x0, + 0xff, 0xe2, 0xa, 0x56, 0x5c, 0xb2, 0x8, 0x12, + 0x3c, 0xdf, 0x73, 0x6e, 0xdb, 0xab, 0x74, 0x10, + 0x14, 0x8b, 0xfc, 0x84, 0x20, 0xf, 0xff, 0x51, + 0x23, 0x4d, 0xf7, 0x32, 0x9d, 0x8, 0x4, 0x91, + 0x4, 0x1, 0x8e, 0x32, 0xdd, 0x4, 0x3, 0xff, + 0xb8, 0x20, 0x1f, 0xfc, 0xb1, 0x35, 0x8b, 0xcd, + 0xb8, 0x53, 0x10, 0xc, 0x71, 0xba, 0xb8, 0x42, + 0x0, 0xff, 0xe0, 0x88, 0xc0, 0x1f, 0xfc, 0x37, + 0x11, 0x0, 0x43, 0xe0, 0x2, 0x8d, 0xff, 0xff, + 0xe6, 0x76, 0xdc, 0x29, 0x88, 0x7, 0xc4, 0x8f, + 0x7b, 0xff, 0xff, 0xc1, 0xee, 0xd9, 0x6, 0x1, + 0xff, 0x9, 0x0, 0x67, 0x12, 0x0, 0x7b, 0x11, + 0x7f, 0xf3, 0x44, 0x3, 0xe1, 0x22, 0xff, 0xe2, + 0x88, 0x7, 0xc5, 0x74, 0x60, 0x1f, 0xe1, 0x27, + 0x0, 0xc2, 0x60, 0x2, 0x7b, 0xdd, 0xff, 0xe7, + 0x30, 0x80, 0x65, 0xbd, 0xdf, 0xfe, 0x1f, 0xda, + 0x88, 0x4, 0x29, 0x5a, 0xe4, 0x1, 0xff, 0x17, + 0x88, 0x4, 0x26, 0x20, 0x1f, 0xfe, 0x83, 0x8f, + 0x94, 0x10, 0x26, 0xaa, 0x28, 0x80, 0x7f, 0xf0, + 0x54, 0xc8, 0x2, 0x2e, 0x60, 0xf, 0xff, 0x29, + 0x35, 0xeb, 0x90, 0xa, 0x4f, 0xca, 0x8, 0x7, + 0xff, 0x8, 0xfd, 0x40, 0x21, 0x53, 0x20, 0xf, + 0xff, 0x10, 0xad, 0x64, 0xa0, 0x81, 0xbe, 0xdb, + 0x10, 0x7, 0xff, 0x10, 0x51, 0x44, 0x2, 0x5f, + 0x40, 0xf, 0xff, 0x18, 0xad, 0xec, 0xbc, 0x66, + 0xc1, 0x80, 0x7f, 0xf1, 0x85, 0xf0, 0xc0, 0x22, + 0x34, 0x0, 0xff, 0xf3, 0x9, 0xb4, 0x39, 0x88, + 0x7, 0xff, 0x1c, 0x9a, 0xd0, 0x2, 0x14, 0xc2, + 0x0, 0xff, 0xff, 0xa5, 0xc9, 0x0, 0x45, 0x36, + 0x80, 0x1f, 0xfc, 0x51, 0x11, 0x17, 0x84, 0x7c, + 0x44, 0x52, 0x10, 0xf, 0xfe, 0xd9, 0xe2, 0x8, + 0x4, 0x96, 0xc4, 0x1, 0xff, 0xc6, 0x36, 0xed, + 0xde, 0xee, 0xf6, 0xea, 0x50, 0x3, 0x1e, 0xb8, + 0x7, 0xff, 0x54, 0xe3, 0x72, 0x5a, 0x3d, 0x84, + 0x3, 0xff, 0x8e, 0x4d, 0x66, 0x1, 0xfe, 0x11, + 0x11, 0x99, 0x5e, 0xb9, 0xc8, 0x3, 0xff, 0xa4, + + /* U+5F00 "开" */ + 0x0, 0xf0, 0x8f, 0xff, 0xf8, 0x3, 0xf9, 0x2f, + 0xbb, 0xff, 0xf9, 0x68, 0x1, 0xff, 0xff, 0x0, + 0xff, 0xe2, 0xa5, 0x7f, 0xff, 0xf1, 0x2d, 0x40, + 0x39, 0xaf, 0xff, 0xff, 0x97, 0x48, 0x1, 0x85, + 0xb3, 0xff, 0xff, 0x87, 0x48, 0x1, 0xff, 0xff, + 0x0, 0xff, 0xff, 0x80, 0x7f, 0xff, 0xc0, 0x3f, + 0xff, 0xe0, 0x1f, 0xff, 0xf0, 0xf, 0xff, 0xf8, + 0x7, 0xff, 0xfc, 0x3, 0xff, 0xf0, 0x46, 0x89, + 0xff, 0xc7, 0xc6, 0x0, 0xe2, 0xc4, 0x4f, 0xfe, + 0x52, 0xeb, 0x80, 0x71, 0x22, 0x7f, 0xf1, 0xc8, + 0x40, 0x53, 0xee, 0xff, 0xf8, 0xee, 0x60, 0x1c, + 0x8f, 0x77, 0xff, 0xca, 0xa7, 0x30, 0xc, 0x29, + 0x17, 0x7f, 0xfc, 0x5a, 0xa1, 0x0, 0xd, 0x88, + 0xbf, 0xf8, 0xc2, 0x20, 0xf, 0x84, 0x8b, 0xff, + 0x94, 0x22, 0x0, 0xf8, 0x48, 0xbf, 0xf8, 0xde, + 0x0, 0x15, 0xad, 0xdf, 0xfe, 0x3b, 0x10, 0x6, + 0x39, 0xfd, 0xdf, 0xfe, 0x57, 0x5a, 0x0, 0x61, + 0x6d, 0xdf, 0xfe, 0x36, 0x39, 0x80, 0x7f, 0xf2, + 0x45, 0x4c, 0x80, 0x21, 0x55, 0x8, 0x7, 0xff, + 0xf5, 0x7d, 0x40, 0x31, 0x79, 0x0, 0x7f, 0xff, + 0x53, 0x9c, 0x40, 0x22, 0x44, 0x8, 0x7, 0xff, + 0xec, 0x5b, 0xd4, 0x40, 0x23, 0xaa, 0x10, 0x7, + 0xff, 0xec, 0xa6, 0xd0, 0x3, 0x25, 0x31, 0x0, + 0x7f, 0xfe, 0x92, 0x7d, 0xc8, 0x2, 0x15, 0xe6, + 0x10, 0xf, 0xff, 0xc0, 0xad, 0x51, 0x88, 0x2, + 0x14, 0x8b, 0x50, 0xf, 0xff, 0xb8, 0xa4, 0xe5, + 0x28, 0x80, 0x44, 0xb5, 0x46, 0x10, 0xf, 0xff, + 0xa0, 0xa3, 0xdf, 0xdb, 0x10, 0x4, 0x29, 0x3f, + 0x48, 0x20, 0x1f, 0xff, 0x31, 0x5a, 0xfb, 0x84, + 0x10, 0x8, 0x96, 0xb2, 0xd8, 0x80, 0x3f, 0xfe, + 0xc2, 0xb5, 0xae, 0x62, 0x6d, 0x5b, 0xaa, 0x52, + 0x0, 0xff, 0xfe, 0x1c, 0x67, 0x64, 0xa9, 0x0, + 0x7f, 0xf7, 0x96, 0xff, 0xf7, 0x49, 0x80, 0x7f, + 0xf2, 0x0, + + /* U+5F02 "异" */ + 0x0, 0xfc, 0x71, 0xbb, 0xff, 0xf1, 0xa5, 0x0, + 0xff, 0xe5, 0x38, 0x99, 0x17, 0xff, 0xc0, 0x4c, + 0x3, 0xff, 0x94, 0x93, 0xdf, 0xff, 0xfe, 0x9d, + 0x83, 0x0, 0xff, 0xff, 0x80, 0x7f, 0x18, 0x80, + 0x7f, 0xff, 0xc0, 0x3f, 0xfc, 0x22, 0x45, 0xff, + 0xe8, 0xe0, 0xf, 0xfe, 0xa2, 0xd6, 0xef, 0xff, + 0x9f, 0x1c, 0xc0, 0x3f, 0xfb, 0x42, 0x46, 0x7f, + 0xfe, 0x72, 0x30, 0xf, 0xfe, 0x99, 0xce, 0x67, + 0xff, 0xa2, 0x54, 0x8, 0xcc, 0x20, 0x1f, 0xff, + 0xf0, 0xf, 0x8a, 0xbb, 0x3b, 0xf6, 0x50, 0x3, + 0xff, 0x94, 0x20, 0x60, 0x1f, 0xfe, 0x81, 0x43, + 0x20, 0xc, 0x2e, 0x1, 0xff, 0xc4, 0x63, 0x10, + 0x8, 0xa6, 0x50, 0xca, 0x88, 0x33, 0xff, 0xef, + 0xa2, 0xb4, 0xec, 0x20, 0x4, 0x2f, 0x86, 0x1, + 0xff, 0xc4, 0x3a, 0x84, 0x10, 0x0, 0xa3, 0xcd, + 0x5d, 0xb3, 0x3f, 0xfb, 0xf7, 0x52, 0xc6, 0x20, + 0x12, 0x45, 0xa0, 0x7, 0xff, 0x18, 0x9a, 0xff, + 0x26, 0x1d, 0x95, 0x10, 0x40, 0x1f, 0x8c, 0xff, + 0xf9, 0x62, 0x1, 0xf8, 0xcf, 0x91, 0x59, 0xe7, + 0x3a, 0xd8, 0x40, 0x3f, 0xf9, 0x42, 0x6c, 0xf1, + 0x35, 0x76, 0xe6, 0x10, 0xc, 0xd7, 0x99, 0xff, + 0xcb, 0xd7, 0x10, 0xc, 0xb7, 0x99, 0xd7, 0x53, + 0xc, 0x62, 0x1, 0xff, 0xff, 0x0, 0xff, 0xff, + 0x80, 0x7f, 0xf6, 0x4e, 0x37, 0xff, 0xff, 0x8d, + 0x8c, 0x20, 0x19, 0xaf, 0xff, 0xff, 0x97, 0x8e, + 0x20, 0x19, 0x6f, 0xff, 0xff, 0x8d, 0x6c, 0x20, + 0x1f, 0xff, 0xf0, 0xf, 0xfe, 0x21, 0xce, 0x77, + 0x7f, 0xf1, 0x36, 0x50, 0x3, 0x92, 0x77, 0xbb, + 0xff, 0x97, 0x4c, 0x20, 0x19, 0x67, 0xbb, 0xff, + 0x8d, 0x4c, 0x20, 0x1c, 0x23, 0xff, 0xc5, 0x4, + 0xd4, 0x0, 0xc9, 0xae, 0x42, 0x3f, 0xfc, 0xb6, + 0x10, 0xf, 0x10, 0x8f, 0xff, 0x1c, 0x3, 0xff, + 0x94, 0x71, 0x92, 0x80, 0x11, 0x37, 0xb0, 0x80, + 0x7f, 0xfe, 0x45, 0x1e, 0xb7, 0x1c, 0x80, 0x22, + 0x7e, 0x94, 0x0, 0xff, 0xfa, 0x89, 0xab, 0xd6, + 0xf5, 0xc2, 0x90, 0x4, 0x4d, 0x59, 0x6, 0x1, + 0xff, 0xf2, 0x37, 0xbd, 0xfe, 0xca, 0x85, 0x20, + 0x8, 0x91, 0xeb, 0x75, 0x2a, 0x20, 0x1f, 0xff, + 0x43, 0x78, 0x52, 0x1, 0x24, 0x68, 0xac, 0xed, + 0xb8, 0x52, 0x0, 0xff, 0xfd, 0x1c, 0x6f, 0xf6, + 0xdc, 0xba, 0x98, 0x80, 0x7f, 0xf6, 0xce, 0x3b, + 0xff, 0x52, 0x0, 0x7f, 0xf2, 0x80, + + /* U+5F0F "式" */ + 0x0, 0xff, 0xf1, 0x8a, 0xcd, 0xde, 0x96, 0x20, + 0xf, 0xa, 0x33, 0xc, 0x40, 0x3f, 0xfe, 0xa6, + 0x48, 0x9e, 0xe0, 0xe, 0x49, 0xfb, 0x99, 0x67, + 0xdb, 0x98, 0x80, 0x7f, 0xff, 0xd2, 0x76, 0x10, + 0x40, 0x52, 0x33, 0x14, 0xc4, 0x1, 0xff, 0xfe, + 0x37, 0xbf, 0xb7, 0x30, 0x1, 0x2c, 0xe6, 0x1c, + 0xc0, 0x3f, 0xff, 0xc2, 0x91, 0x98, 0x84, 0x10, + 0x35, 0x32, 0x0, 0xff, 0x11, 0xa2, 0x7f, 0xf8, + 0x34, 0xc0, 0x31, 0x92, 0xa2, 0x7f, 0xf0, 0x5c, + 0xfa, 0x26, 0x30, 0x15, 0x10, 0x64, 0x1, 0xc2, + 0x91, 0x77, 0xff, 0xdf, 0x95, 0x10, 0xc, 0x2b, + 0x17, 0x7f, 0xfc, 0x3a, 0x99, 0x55, 0x2e, 0xf7, + 0xa8, 0x80, 0x71, 0x89, 0x17, 0xff, 0x80, 0x40, + 0x3e, 0x11, 0x11, 0x7f, 0xf2, 0xd8, 0x40, 0x38, + 0x56, 0xb7, 0x7f, 0xfc, 0x2e, 0x40, 0x18, 0xe3, + 0xf7, 0x7f, 0xf9, 0x74, 0xc2, 0x1, 0xff, 0xe7, + 0x2e, 0x10, 0xc, 0x3c, 0x40, 0x1f, 0xff, 0xf0, + 0x0, 0x9b, 0x0, 0x62, 0x23, 0x80, 0x7f, 0xff, + 0xc0, 0x26, 0x31, 0x0, 0xc2, 0x42, 0x1, 0xff, + 0xd5, 0x5a, 0xff, 0xff, 0xec, 0xe3, 0x8, 0x0, + 0xbc, 0x80, 0x32, 0xf1, 0x0, 0x7f, 0xf5, 0x84, + 0x3, 0xff, 0xb4, 0x20, 0x10, 0x92, 0x80, 0x61, + 0x35, 0x0, 0xff, 0xea, 0xa4, 0xe6, 0x7f, 0xf0, + 0xa0, 0xc0, 0x31, 0x35, 0x66, 0x7f, 0xf0, 0xb9, + 0x84, 0x2, 0x6e, 0x30, 0xc, 0xdc, 0x60, 0x1f, + 0xfd, 0x41, 0x23, 0x3f, 0xfe, 0x11, 0x30, 0x7, + 0x73, 0x99, 0xff, 0xf0, 0x88, 0x40, 0x31, 0x1b, + 0x0, 0x62, 0x35, 0x10, 0xf, 0xff, 0xf8, 0x1, + 0x71, 0x0, 0x32, 0x62, 0x80, 0x7f, 0xff, 0xc0, + 0x2, 0xa6, 0x40, 0x19, 0xf0, 0xc0, 0x3f, 0xff, + 0xe0, 0x3, 0xc7, 0x0, 0xc4, 0xa8, 0x40, 0x1f, + 0xff, 0xf0, 0x2, 0x7a, 0x80, 0x62, 0xb5, 0x10, + 0xf, 0xfe, 0x9, 0xb4, 0x29, 0x0, 0x7f, 0xfb, + 0xd7, 0xd4, 0x3, 0x1d, 0x31, 0x0, 0x7f, 0xf0, + 0x1b, 0x5e, 0xb7, 0xa5, 0x0, 0x3f, 0xfa, 0xc2, + 0x46, 0x8a, 0xcf, 0x13, 0x57, 0xbd, 0xfe, 0xa5, + 0x0, 0xf2, 0xfa, 0x80, 0x62, 0x9b, 0x40, 0xf, + 0xf8, 0xc0, 0x30, 0x98, 0x7, 0xff, 0x24, 0x48, + 0xf5, 0x80, 0x31, 0x4e, 0x77, 0xf6, 0xe5, 0xd4, + 0xc3, 0xb2, 0xa1, 0x8, 0x7, 0xfc, 0xb2, 0xe4, + 0x1, 0xb, 0x43, 0x90, 0x7, 0xe2, 0x16, 0x0, + 0x88, 0x8c, 0x1, 0xc2, 0x46, 0x8a, 0xd1, 0x35, + 0x79, 0xbd, 0xfe, 0xed, 0xc7, 0x30, 0xe, 0x11, + 0x80, 0x21, 0x34, 0x56, 0x79, 0xab, 0xce, 0xff, + 0x52, 0x80, 0x7e, 0x39, 0xb4, 0x0, 0xc7, 0x1c, + 0xe6, 0x1, 0xe7, 0xd2, 0x0, 0x9f, 0x48, 0x3, + 0xb, 0xf6, 0x5d, 0x4b, 0xb2, 0xa1, 0x90, 0x80, + 0x61, 0x23, 0x45, 0x68, 0x9a, 0xbc, 0xef, 0xf7, + 0x65, 0xd4, 0xc3, 0x2a, 0x18, 0x80, 0x7f, 0xf0, + 0x45, 0xa6, 0x48, 0x1, 0x8e, 0x33, 0x6a, 0x19, + 0x93, 0x25, 0x0, 0x8f, 0x50, 0x3, 0x85, 0xec, + 0xc0, 0x49, 0x15, 0x9e, 0x26, 0xf3, 0x7b, 0xfb, + 0x72, 0xea, 0x5d, 0x95, 0xc, 0x40, 0x3f, 0xfa, + 0x4, 0xd5, 0x6c, 0x40, 0x18, 0x95, 0xe6, 0x4c, + 0x60, 0x12, 0x4b, 0x8, 0x7, 0x85, 0xf3, 0xfb, + 0x6e, 0xa6, 0x1d, 0x90, 0xc8, 0x40, 0x3f, 0xfb, + 0xe2, 0x93, 0xba, 0xa7, 0x53, 0x21, 0x1, 0x23, + 0x58, 0xcb, 0x51, 0x0, 0xc0, + + /* U+5F55 "录" */ + 0x0, 0xfe, 0x13, 0x3f, 0xff, 0x5a, 0x20, 0xcc, + 0x42, 0x1, 0xff, 0xc9, 0x29, 0xec, 0xcf, 0xff, + 0x55, 0xdb, 0x31, 0xce, 0x20, 0x1f, 0xfc, 0x9f, + 0x62, 0x2f, 0xff, 0x38, 0x80, 0x79, 0xc0, 0x3f, + 0xf9, 0x44, 0xf7, 0xbb, 0xff, 0xe8, 0x61, 0x0, + 0xff, 0xff, 0x80, 0x7f, 0xf6, 0xd2, 0x33, 0x3f, + 0xfc, 0xbc, 0xe2, 0x1, 0xc6, 0x20, 0x1f, 0xfc, + 0xc2, 0x33, 0xff, 0xf2, 0x90, 0x80, 0x71, 0x8, + 0x7, 0xff, 0x31, 0x63, 0x33, 0xff, 0xc9, 0x4c, + 0x20, 0x18, 0x44, 0xe0, 0x1f, 0xfc, 0xc1, 0x23, + 0x3f, 0xff, 0x23, 0xf1, 0x80, 0x62, 0xf1, 0x0, + 0xff, 0xff, 0x80, 0x79, 0xc4, 0x80, 0x3f, 0xf8, + 0x67, 0x1b, 0xdd, 0xff, 0xec, 0xd8, 0x20, 0xc, + 0x93, 0xfd, 0xdf, 0xd6, 0xc2, 0x1, 0x84, 0xc4, + 0x7f, 0xfd, 0x80, 0x1f, 0xe1, 0x1f, 0xe7, 0x0, + 0xe3, 0x9e, 0xff, 0xff, 0xea, 0x6c, 0x10, 0x6, + 0x39, 0xef, 0xff, 0xfe, 0x4f, 0x6f, 0x73, 0xff, + 0xf6, 0x30, 0x80, 0x7f, 0xc4, 0xb5, 0x9b, 0x4e, + 0x82, 0x1, 0xff, 0xc8, 0x10, 0xc, 0x7a, 0xe2, + 0x1, 0xff, 0xc5, 0x25, 0x9c, 0xdf, 0xd8, 0x52, + 0x0, 0xff, 0xe3, 0x1a, 0x72, 0x19, 0x2c, 0x5f, + 0x6d, 0xba, 0x10, 0x7, 0xff, 0x25, 0x22, 0xd0, + 0x40, 0x3f, 0xf8, 0x6, 0xf7, 0x94, 0xc4, 0x2, + 0x6b, 0x8e, 0x20, 0x1f, 0xfc, 0x53, 0x6b, 0xed, + 0xa6, 0x31, 0x2, 0x48, 0xbd, 0xd4, 0xa9, 0x0, + 0x7f, 0xf1, 0x85, 0x6a, 0xd0, 0x40, 0x3c, 0x6d, + 0x5b, 0x90, 0x82, 0x0, 0x25, 0x9d, 0xd4, 0xa8, + 0x80, 0x7f, 0xf2, 0x49, 0x67, 0x3e, 0xe1, 0x4, + 0x0, 0x4d, 0x5b, 0x8e, 0x40, 0x1f, 0xfc, 0x51, + 0x5a, 0xa3, 0x19, 0x9a, 0xb7, 0x25, 0x48, 0x0, + 0x4b, 0x39, 0xb4, 0xc4, 0x1, 0xff, 0xd1, 0x14, + 0x7b, 0xfb, 0x73, 0x12, 0x68, 0x62, 0x0, 0x84, + 0xd6, 0xb0, 0x80, 0x32, 0x45, 0x39, 0x0, 0xa4, + 0xe6, 0x25, 0x48, 0x4, 0xde, 0xb7, 0x54, 0xc6, + 0x1, 0xff, 0xd9, 0x14, 0x8c, 0xec, 0xb0, 0x78, + 0xac, 0xee, 0x65, 0x3a, 0x8, 0x7, 0xa, 0x47, + 0xca, 0x0, 0x78, 0x9f, 0x72, 0x14, 0x80, 0x3f, + 0xfb, 0x62, 0x6a, 0xf3, 0x7b, 0xdb, 0x72, 0xea, + 0x62, 0x4, 0x8a, 0x62, 0x1, 0xf8, 0x9a, 0xad, + 0xcc, 0x2, 0x27, 0xcd, 0xa6, 0x31, 0x0, 0xff, + 0xe9, 0x9, 0x23, 0x4d, 0xef, 0x73, 0x2a, 0x19, + 0x8, 0x0, 0x28, 0xd1, 0x5b, 0xdb, 0x71, 0x64, + 0x1, 0xfe, 0x14, 0x8c, 0xc4, 0x20, 0x80, 0x9, + 0x67, 0x3e, 0xdd, 0x4, 0x3, 0xff, 0x8c, 0x24, + 0x8d, 0x15, 0x9d, 0xcd, 0xb9, 0x64, 0x21, 0x0, + 0x9, 0xb4, 0x56, 0xf7, 0x2e, 0x5d, 0x48, 0x40, + 0x3f, 0xf8, 0xe6, 0xf7, 0x94, 0xc4, 0x1, 0xa, + 0x45, 0xf6, 0xdc, 0xba, 0x98, 0x80, 0x7f, 0xc5, + 0x53, 0x27, 0x53, 0x10, 0x8, 0x91, 0xa2, 0xb7, + 0xb9, 0x92, 0xea, 0x42, 0x1, 0xff, 0xd1, 0x25, + 0x9d, 0xec, 0x85, 0x20, 0x8, 0x91, 0xa2, 0xb3, + 0xb9, 0x95, 0xc, 0x62, 0x1, 0x8e, 0x25, 0xd1, + 0xf, 0x37, 0xbf, 0xb7, 0x2e, 0xa4, 0x20, 0x1f, + 0xfc, 0x41, 0xf1, 0x0, 0xf0, 0x80, 0x7f, 0xf0, + 0x84, 0xde, 0xb7, 0x57, 0xc, 0x84, 0x1, 0x84, + 0xd5, 0x5e, 0xe0, 0x1f, 0x24, 0x5d, 0xa1, 0x90, + 0x80, 0x3f, 0xe2, 0x7c, 0xff, 0x77, 0x7d, 0xf8, + 0xe4, 0x1, 0x9, 0x28, 0x7, 0xff, 0x20, 0x91, + 0xe6, 0xf7, 0xf6, 0xe5, 0xda, 0x7a, 0x50, 0x40, + 0x3f, 0xf9, 0xa4, 0xd4, 0x60, 0x23, 0xfc, 0x46, + 0x8d, 0x3b, 0x6, 0x1, 0xff, 0xcf, 0x24, 0x68, + 0x96, 0x30, 0xc, + + /* U+6025 "急" */ + 0x0, 0xff, 0xe6, 0x88, 0x80, 0x3f, 0xff, 0xe0, + 0x1f, 0x92, 0xbf, 0xbf, 0xdd, 0x6e, 0x40, 0x1f, + 0xff, 0xf3, 0x89, 0x51, 0x0, 0x97, 0x98, 0x80, + 0x3f, 0xff, 0xa6, 0xfe, 0xe4, 0x1, 0xcb, 0x19, + 0xbb, 0xff, 0xca, 0xc9, 0x52, 0x0, 0xff, 0xf1, + 0x24, 0xf4, 0x18, 0x7, 0xc2, 0x45, 0xff, 0xcc, + 0x36, 0x8a, 0x30, 0xf, 0xfe, 0xf1, 0x35, 0xd3, + 0x10, 0x0, 0x56, 0xfb, 0xff, 0xff, 0x93, 0x6c, + 0x40, 0x18, 0x56, 0x60, 0xc0, 0x3f, 0xfb, 0x64, + 0xb5, 0x92, 0x82, 0x0, 0x38, 0xda, 0x41, 0x0, + 0xff, 0xe3, 0x9c, 0xc9, 0x88, 0x0, 0x2b, 0x76, + 0x40, 0xf, 0xfe, 0xd1, 0x35, 0x65, 0x28, 0x80, + 0x5, 0x27, 0x9c, 0xc0, 0x3f, 0xf8, 0xe2, 0x91, + 0xcc, 0x40, 0x1, 0x5b, 0xb2, 0x88, 0x7, 0xff, + 0x5c, 0x96, 0x77, 0x52, 0xa2, 0x1, 0xc2, 0x93, + 0xbf, 0xff, 0xfc, 0x9e, 0xb7, 0x20, 0xc, 0x2b, + 0x5d, 0xff, 0xff, 0xc4, 0xe8, 0x30, 0xf, 0xfe, + 0x19, 0xbe, 0x6d, 0x31, 0x0, 0x44, 0x88, 0x32, + 0x2f, 0xff, 0x28, 0x80, 0x7f, 0xf2, 0xcd, 0xa1, + 0x88, 0x9, 0x67, 0x36, 0xed, 0x9b, 0xbf, 0xfe, + 0x5a, 0x60, 0xf, 0xfe, 0x58, 0xa4, 0xef, 0xed, + 0x31, 0x80, 0x7f, 0xff, 0xc0, 0x3f, 0xf8, 0x44, + 0xd5, 0x77, 0xff, 0xe4, 0x97, 0x0, 0xff, 0xeb, + 0xf, 0x22, 0x7f, 0xf9, 0x48, 0x40, 0x3f, 0xfa, + 0xc7, 0x1d, 0xff, 0xff, 0xe4, 0xa5, 0x0, 0xff, + 0xff, 0x80, 0x7f, 0x84, 0xc0, 0x3f, 0xfa, 0xa2, + 0x3f, 0xfe, 0x93, 0x0, 0xff, 0xea, 0x2d, 0x77, + 0x7f, 0xf9, 0xe9, 0x40, 0x3f, 0xfa, 0x82, 0x68, + 0x9f, 0xfc, 0x63, 0x10, 0xe, 0x12, 0x34, 0x4f, + 0xfe, 0x97, 0x8, 0x7, 0xff, 0x35, 0x22, 0xef, + 0xff, 0x8b, 0x8, 0x60, 0x1c, 0x24, 0x20, 0x7d, + 0x15, 0x77, 0xff, 0xcc, 0xa6, 0x20, 0xf, 0xfe, + 0x79, 0xb3, 0x10, 0xc4, 0x3, 0x9, 0xa2, 0xac, + 0x83, 0x3b, 0xd7, 0x2c, 0x62, 0x4, 0x8f, 0x59, + 0xf7, 0x8, 0x40, 0x1f, 0xfc, 0x1, 0x47, 0xac, + 0xb7, 0x30, 0xf, 0xfe, 0x80, 0xb7, 0xcc, 0xaf, + 0x29, 0x44, 0x0, 0x55, 0x5f, 0x10, 0xa, 0x34, + 0xe7, 0x6d, 0x39, 0x88, 0xa, 0x3c, 0x29, 0x0, + 0x7f, 0x89, 0xfe, 0x54, 0xd2, 0x33, 0x10, 0x62, + 0x1, 0xff, 0xcb, 0x38, 0x81, 0x80, 0x5, 0xbd, + 0x44, 0x3, 0xff, 0x8c, 0x4b, 0x19, 0xf7, 0x10, + 0xbd, 0x72, 0x0, 0x84, 0x60, 0xc, 0x4d, 0x79, + 0x28, 0x20, 0x3, 0x7c, 0xd9, 0x41, 0x0, 0xff, + 0xe3, 0x1c, 0x73, 0x8, 0x0, 0xa6, 0xd0, 0x3, + 0xff, 0x98, 0x28, 0xee, 0x41, 0x0, 0xe7, 0xae, + 0xdb, 0x84, 0x10, 0x1, 0x35, 0xe4, 0xa0, 0x80, + 0xd, 0xaf, 0x60, 0xc0, 0x3f, 0xf8, 0x24, 0xd7, + 0xae, 0x40, 0x1, 0x58, 0x62, 0x0, 0xff, 0xeb, + 0x88, 0x9c, 0x9, 0x14, 0xcc, 0x1, 0xc4, 0xd7, + 0xb0, 0x60, 0x11, 0xbe, 0xdb, 0x8, 0x7, 0x85, + 0x23, 0x31, 0x28, 0x20, 0x1, 0x6a, 0xb5, 0x10, + 0xf, 0x84, 0x3, 0x9, 0xa8, 0x80, 0x7f, 0xf1, + 0xc5, 0x30, 0xc0, 0x21, 0x11, 0x80, 0x7e, 0x37, + 0xda, 0x51, 0x0, 0xa, 0x4e, 0xb9, 0x0, 0x7f, + 0xc4, 0xb3, 0x92, 0x82, 0x1, 0xf8, 0xb9, 0x40, + 0x32, 0x4f, 0x7f, 0xbb, 0xbf, 0xf8, 0x9f, 0xd4, + 0x80, 0x11, 0xda, 0x8, 0x7, 0xf8, 0x56, 0xa8, + 0xa2, 0x4, 0x96, 0x66, 0x0, 0xc2, 0x91, 0x9f, + 0xba, 0xca, 0x62, 0x0, 0xff, 0x85, 0xa6, 0x9d, + 0x4c, 0x84, 0x40, 0x1, 0x1f, 0xfe, 0x20, 0x0, + 0x48, 0xd6, 0x7d, 0xc8, 0x3, 0xff, 0x84, 0x95, + 0xfd, 0xb6, 0xe8, 0x20, 0x10, + + /* U+6210 "成" */ + 0x0, 0xff, 0xff, 0x80, 0x7f, 0xfc, 0x8e, 0x3b, + 0xff, 0x63, 0x8, 0x6, 0x38, 0xbc, 0xa7, 0x41, + 0x0, 0xff, 0xfc, 0x8, 0x18, 0x7, 0xf0, 0xac, + 0xb2, 0x1a, 0xc5, 0xf6, 0xdc, 0x29, 0x0, 0x7f, + 0xfd, 0x3c, 0x3, 0xfc, 0x2b, 0x5d, 0xb4, 0xe8, + 0x20, 0x48, 0xf5, 0xbd, 0x6e, 0x82, 0x1, 0xff, + 0xee, 0x30, 0x10, 0xf, 0xfe, 0x9, 0x2c, 0x5f, + 0x6d, 0x31, 0x80, 0x5, 0x22, 0xf5, 0xc8, 0x3, + 0xff, 0xe8, 0x20, 0x1f, 0xfc, 0x2, 0x59, 0xcd, + 0xa6, 0x34, 0x8f, 0x72, 0x0, 0xff, 0xe3, 0x94, + 0x6f, 0xff, 0xff, 0x5b, 0xa0, 0xc0, 0x31, 0xc7, + 0x7f, 0xff, 0xf0, 0xf6, 0x98, 0xd2, 0x33, 0xff, + 0xad, 0x84, 0x3, 0xff, 0xfe, 0x1, 0xff, 0xd7, + 0x15, 0x9d, 0xdf, 0xfe, 0x84, 0xa8, 0x80, 0x63, + 0x8c, 0xdd, 0xff, 0xe7, 0x4b, 0x88, 0x7, 0xff, + 0x24, 0x94, 0x8b, 0xff, 0xa0, 0x9a, 0x40, 0x1e, + 0x12, 0x2f, 0xfe, 0x78, 0x80, 0x7f, 0xfa, 0x8, + 0x8c, 0x1, 0x8b, 0x84, 0x3, 0xff, 0x82, 0x28, + 0xcc, 0x53, 0x21, 0x0, 0xff, 0xf8, 0x31, 0x8, + 0x4, 0x24, 0xc0, 0x1f, 0xfc, 0x2, 0x69, 0x9a, + 0xb3, 0x6d, 0x44, 0x3, 0xff, 0x9c, 0x2f, 0x9f, + 0xff, 0xfc, 0x8c, 0x71, 0x0, 0xf1, 0x79, 0x0, + 0x66, 0x22, 0x0, 0x7f, 0x8e, 0xa8, 0x40, 0x10, + 0xb7, 0x28, 0x80, 0x7f, 0xfb, 0x84, 0x98, 0x3, + 0x17, 0x30, 0x7, 0xf2, 0x53, 0x10, 0x4, 0x4d, + 0x68, 0x1, 0xff, 0xc9, 0x10, 0xf, 0xb, 0x57, + 0x77, 0xff, 0x7, 0x61, 0x0, 0x3f, 0xf8, 0x4c, + 0x44, 0x0, 0xca, 0x62, 0x1, 0xf2, 0xf3, 0x8, + 0x4, 0x97, 0x24, 0x1, 0xff, 0xcc, 0x30, 0xc, + 0x62, 0xc2, 0x3f, 0xfc, 0x12, 0x20, 0x7, 0xff, + 0xc, 0xf9, 0x80, 0x31, 0xea, 0x0, 0x71, 0xc4, + 0x14, 0x2, 0x15, 0xe6, 0x10, 0xf, 0xfe, 0x9f, + 0x88, 0x7, 0xff, 0x8, 0xc0, 0x3f, 0xf8, 0x88, + 0x64, 0x1, 0x93, 0x4c, 0x0, 0x4f, 0xee, 0x40, + 0x11, 0x34, 0xa8, 0x7, 0xff, 0x38, 0x40, 0x38, + 0x40, 0x3f, 0xf8, 0x62, 0x1, 0xf0, 0x80, 0x7f, + 0x16, 0x38, 0x6, 0x14, 0x53, 0x59, 0x83, 0x0, + 0x89, 0xba, 0xc, 0x3, 0xff, 0x9c, 0xc6, 0x20, + 0x19, 0xc8, 0x80, 0x1f, 0xfc, 0x37, 0x0, 0xce, + 0x2, 0x1, 0xfc, 0xb8, 0x80, 0x18, 0xef, 0xad, + 0x0, 0x21, 0x69, 0x91, 0x80, 0x7f, 0xf3, 0xc4, + 0xc4, 0x3, 0x9, 0x30, 0x7, 0xff, 0x8, 0xc4, + 0x3, 0x84, 0xc0, 0x3f, 0xc2, 0x98, 0x60, 0x18, + 0x88, 0x20, 0x1, 0x6a, 0x94, 0x0, 0xff, 0xe8, + 0x98, 0xb0, 0x6, 0x2e, 0x20, 0xf, 0xfe, 0x13, + 0x71, 0x0, 0x42, 0x62, 0x1, 0xff, 0x12, 0x20, + 0x80, 0x3c, 0x2d, 0x52, 0x80, 0x1f, 0xf1, 0xaa, + 0x8, 0x7, 0xff, 0x11, 0xf0, 0x80, 0x33, 0x10, + 0x80, 0x4, 0x84, 0x60, 0xc, 0x24, 0xba, 0x82, + 0x1, 0x17, 0x30, 0x7, 0xf8, 0xdf, 0xd8, 0x80, + 0x3c, 0x98, 0x80, 0x1f, 0xfc, 0x1, 0x49, 0xbe, + 0xdb, 0x63, 0x0, 0xff, 0x93, 0x14, 0x3, 0x26, + 0x20, 0x0, 0x5b, 0xbb, 0x7f, 0xee, 0xda, 0x62, + 0x0, 0x85, 0x10, 0x40, 0x1f, 0x1b, 0xe6, 0xc1, + 0x88, 0x7, 0xcb, 0x2e, 0x40, 0x1f, 0xf1, 0x80, + 0x62, 0x5f, 0x0, 0xff, 0x88, 0xd0, 0x40, 0x22, + 0xc4, 0x10, 0x0, 0xa2, 0x8, 0x3, 0xf8, 0x48, + 0xd6, 0x76, 0xc, 0x3, 0x8d, 0xf3, 0x10, 0x62, + 0x0, 0x14, 0x88, 0x28, 0x80, 0x47, 0x30, 0xa2, + 0x1, 0xfc, 0x3c, 0x40, 0x11, 0x71, 0x0, 0x7f, + 0x1d, 0x50, 0x80, 0x21, 0x44, 0x10, 0x6, 0x38, + 0xdf, 0xff, 0xee, 0xdc, 0xa6, 0x30, 0x0, 0xa3, + 0xdf, 0x64, 0x18, 0x4, 0x29, 0x39, 0x6e, 0xeb, + 0x83, 0x0, 0x85, 0x6e, 0x98, 0x80, 0x3c, 0x2a, + 0x42, 0x1, 0x29, 0x88, 0x7, 0xc2, 0xb0, 0xe4, + 0x1, 0xb, 0xd1, 0x80, 0x7f, 0xf2, 0x49, 0x67, + 0x3e, 0xe1, 0x4, 0x2, 0x25, 0xac, 0xb6, 0x20, + 0x8, 0x5b, 0xa4, 0xc0, 0x21, 0x49, 0xcc, 0x4b, + 0xaa, 0x2c, 0x5a, 0x0, 0x49, 0x88, 0x1, 0xf1, + 0xcc, 0x20, 0x6, 0x48, 0x81, 0x80, 0x7f, 0xf2, + 0x9, 0xfa, 0x98, 0xc4, 0x2, 0x25, 0x9c, 0xc5, + 0x29, 0x0, 0x7e, 0x26, 0xdb, 0x72, 0x0, 0x84, + 0xda, 0x2a, 0xe9, 0x88, 0x0, 0x2d, 0xea, 0x1, + 0xf8, 0xea, 0xd4, 0x80, 0x5a, 0x18, 0x40, 0x3f, + 0xf9, 0x24, 0xfb, 0x6a, 0x46, 0xd5, 0xba, 0xa6, + 0x31, 0x0, 0xff, 0xe0, 0x8a, 0x46, 0xea, 0xdd, + 0x4c, 0x84, 0x0, 0x24, 0x6b, 0x39, 0x28, 0x1, + 0xfe, 0x26, 0xac, 0xdc, 0x83, 0x0, 0xff, 0xe6, + 0x8a, 0x56, 0xe4, 0xa9, 0x0, 0x7f, 0xf2, 0x89, + 0x22, 0xb3, 0x7b, 0xfd, 0xdb, 0x94, 0xc4, 0x1, + 0xf8, + + /* U+6216 "或" */ + 0x0, 0xff, 0xf1, 0x2d, 0x77, 0x6d, 0x83, 0x0, + 0xe2, 0x6a, 0xba, 0x74, 0x20, 0xf, 0xff, 0xa9, + 0x88, 0xf1, 0x88, 0x6, 0x14, 0x88, 0x2a, 0x2c, + 0x5e, 0xf6, 0x4b, 0x18, 0x80, 0x7f, 0xfe, 0xc5, + 0x2b, 0xb6, 0xe1, 0x48, 0x4, 0xda, 0x73, 0xf2, + 0x54, 0x80, 0x3f, 0xff, 0x64, 0x8f, 0x5b, 0xd6, + 0xe8, 0x20, 0x26, 0xd3, 0x46, 0x1, 0xff, 0x11, + 0x9f, 0xff, 0x75, 0x39, 0xc0, 0x30, 0x92, 0x99, + 0xff, 0xf0, 0x9, 0xee, 0x2e, 0x11, 0xf, 0x36, + 0x6, 0x42, 0x1, 0xf1, 0xde, 0xe6, 0x7f, 0xf7, + 0x2d, 0xcc, 0x3, 0x92, 0x73, 0x3f, 0xf8, 0x95, + 0x8, 0x87, 0xac, 0xca, 0x14, 0x3, 0xf0, 0x98, + 0x7, 0xff, 0xfc, 0x3, 0xf8, 0xe3, 0x7f, 0xff, + 0xfb, 0xbb, 0x6, 0x1, 0x89, 0xf7, 0xff, 0xff, + 0x99, 0x48, 0x1, 0xff, 0xe7, 0x22, 0x30, 0x6, + 0x21, 0x60, 0xf, 0xfe, 0x10, 0x88, 0x3, 0xff, + 0x94, 0x2b, 0x37, 0x7f, 0xfd, 0x9, 0x52, 0x0, + 0xf3, 0x18, 0x80, 0x62, 0x20, 0x80, 0x7f, 0xc2, + 0xd5, 0xdf, 0xee, 0xc8, 0x30, 0xf, 0xfe, 0x21, + 0x92, 0x27, 0xff, 0x4b, 0x40, 0x3e, 0x2e, 0x20, + 0xc, 0xdc, 0x60, 0x1f, 0xe1, 0x7d, 0x40, 0x8, + 0x5b, 0x4c, 0x3, 0xff, 0x94, 0x2b, 0x39, 0x9f, + 0xfc, 0x48, 0x30, 0xf, 0xfe, 0x8, 0x93, 0x0, + 0x63, 0x16, 0x0, 0xfe, 0x16, 0xa4, 0x0, 0x85, + 0xa5, 0x40, 0x3f, 0xf9, 0x86, 0xa6, 0x7f, 0xfc, + 0x42, 0x60, 0xf, 0xfe, 0x13, 0x10, 0x80, 0x42, + 0x44, 0x0, 0xfc, 0x4d, 0x66, 0x1, 0x13, 0x51, + 0x80, 0x7f, 0xfb, 0xcb, 0x88, 0x3, 0x2f, 0x98, + 0x7, 0x8e, 0xa8, 0x60, 0x11, 0xd5, 0xc, 0x3, + 0xff, 0xe0, 0x24, 0xa0, 0x18, 0x55, 0x42, 0x1, + 0xa, 0xc3, 0x90, 0x4, 0x94, 0xc4, 0x1, 0xff, + 0xf2, 0x5f, 0x30, 0xc, 0x7e, 0xa0, 0x3, 0x98, + 0x40, 0x8, 0x5b, 0xd8, 0x40, 0x3f, 0xfa, 0x6, + 0xc2, 0x3f, 0xfc, 0x43, 0x10, 0xf, 0xfe, 0x18, + 0xaa, 0x84, 0x3, 0x29, 0xa3, 0x7b, 0x90, 0x0, + 0x56, 0xe1, 0x0, 0x3f, 0xfa, 0x22, 0xb5, 0xdd, + 0xff, 0xc4, 0x94, 0x0, 0xff, 0xe2, 0x1e, 0x20, + 0x6, 0x39, 0xa8, 0x30, 0x9, 0x22, 0xd4, 0x40, + 0x3f, 0xf9, 0xa2, 0xe6, 0x7f, 0xfd, 0x7, 0xe0, + 0xf, 0xf9, 0x31, 0x0, 0x30, 0x8c, 0x0, 0x38, + 0x96, 0x10, 0xf, 0xfe, 0x71, 0x35, 0x66, 0x7f, + 0xf4, 0x29, 0x88, 0x3, 0xfc, 0x28, 0x64, 0x1, + 0xe2, 0x7f, 0x72, 0x0, 0xff, 0x8, 0xc0, 0x1f, + 0xfd, 0xc1, 0x23, 0x56, 0x78, 0x9a, 0x96, 0x20, + 0xf, 0x1b, 0xf3, 0x10, 0x7, 0xb, 0xe9, 0x80, + 0x7f, 0xf0, 0x12, 0xfb, 0x69, 0xd0, 0x80, 0x3f, + 0xf9, 0x2, 0x46, 0x8a, 0xcf, 0x15, 0x79, 0xbd, + 0xfe, 0xed, 0xca, 0x98, 0x76, 0x57, 0xf6, 0x0, + 0xa, 0x4e, 0x62, 0xc, 0x40, 0x3c, 0x2b, 0x2c, + 0x20, 0x1f, 0xfc, 0x1, 0x2, 0x58, 0xe7, 0x0, + 0xe1, 0x24, 0x56, 0x78, 0x9a, 0xbc, 0xde, 0xff, + 0x76, 0xe5, 0xd4, 0xc3, 0xaa, 0x19, 0x8, 0x4, + 0x22, 0x34, 0x56, 0x78, 0x86, 0xba, 0xd6, 0x5b, + 0x18, 0x4, 0x4d, 0x52, 0xa2, 0x1, 0x1c, 0x5a, + 0x88, 0x7, 0xe2, 0x23, 0x80, 0x44, 0x46, 0x0, + 0xe2, 0xba, 0xa4, 0xc3, 0xb2, 0xa1, 0x90, 0x80, + 0x42, 0x46, 0x8a, 0xcf, 0x13, 0x57, 0x9b, 0xdf, + 0xdc, 0xcb, 0xa8, 0xb0, 0xc9, 0xca, 0x52, 0x0, + 0x8d, 0xf3, 0x12, 0xad, 0x10, 0x30, 0x8, 0x56, + 0xe9, 0x88, 0x3, 0xcd, 0xa6, 0x1, 0x37, 0x18, + 0x7, 0x1e, 0x21, 0x1a, 0x33, 0xc4, 0xd5, 0xe6, + 0xf7, 0xf6, 0xe5, 0xd4, 0xc3, 0xb2, 0xa1, 0x90, + 0x80, 0x9b, 0x4e, 0x7e, 0x42, 0x90, 0x4, 0x29, + 0x3b, 0x90, 0x62, 0x1, 0x13, 0x74, 0x18, 0x4, + 0x29, 0x39, 0x89, 0x76, 0x64, 0xc2, 0x80, 0x45, + 0x88, 0x1, 0xf2, 0xd6, 0xe5, 0xcc, 0x3b, 0x2a, + 0x19, 0x8, 0x7, 0xff, 0xd, 0x23, 0xa5, 0x8c, + 0x40, 0x23, 0x69, 0xde, 0xb6, 0x20, 0xf, 0xe2, + 0x7d, 0xb6, 0x20, 0x8, 0x4d, 0xa2, 0x64, 0xc6, + 0x1, 0x25, 0xb1, 0x0, 0x7f, 0xf6, 0x12, 0x72, + 0x98, 0xd1, 0xef, 0xb2, 0x58, 0x80, 0x3f, 0xf8, + 0x62, 0x93, 0xba, 0xa7, 0x43, 0x21, 0x1, 0x11, + 0xa3, 0xdd, 0x30, 0x80, 0x70, + + /* U+624B "手" */ + 0x0, 0xff, 0xfc, 0x8, 0x7, 0xff, 0xec, 0x44, + 0x46, 0x8a, 0xcf, 0x13, 0x59, 0xbd, 0xfd, 0xcb, + 0x62, 0x0, 0xff, 0xed, 0x8, 0xc4, 0x43, 0x39, + 0x10, 0xab, 0x33, 0x1d, 0xd1, 0x9, 0xaa, 0x5e, + 0x6e, 0xbb, 0xfd, 0xdc, 0xdc, 0xba, 0x98, 0x76, + 0x53, 0x21, 0x0, 0xa, 0xd5, 0xa8, 0x80, 0x7f, + 0xf1, 0xc5, 0x22, 0xed, 0x99, 0x6e, 0xbb, 0xaf, + 0xfd, 0xdd, 0x6e, 0xb3, 0x2b, 0xb5, 0x55, 0x32, + 0x88, 0x3b, 0x99, 0x54, 0x86, 0x44, 0x10, 0xc, + 0x24, 0x66, 0x45, 0x67, 0x8a, 0xbc, 0xdf, 0xf7, + 0x64, 0xa8, 0x80, 0x7f, 0xf1, 0xc5, 0xc1, 0x90, + 0xce, 0x22, 0x8, 0xc0, 0x1e, 0x11, 0x11, 0x46, + 0x64, 0x49, 0x54, 0x84, 0x1, 0xc4, 0xd5, 0x98, + 0xde, 0xff, 0xbb, 0x73, 0x17, 0x53, 0xe, 0xa8, + 0x64, 0x1, 0xff, 0xcf, 0x39, 0xeb, 0xb6, 0x65, + 0xba, 0xee, 0xbf, 0xfb, 0xb9, 0xbb, 0x66, 0x2e, + 0xea, 0xa4, 0xa9, 0x0, 0x66, 0xf5, 0x33, 0x10, + 0x80, 0x7f, 0xf8, 0x4, 0xd1, 0x6, 0x71, 0x10, + 0x46, 0x0, 0xff, 0xff, 0x80, 0x7f, 0xff, 0xc0, + 0x3f, 0xff, 0xe0, 0x1f, 0xfc, 0xa2, 0x6b, 0xdd, + 0xff, 0xe8, 0x63, 0x90, 0x6, 0x48, 0xed, 0xdf, + 0xfe, 0x8c, 0xa0, 0x7, 0xff, 0x10, 0x58, 0x8b, + 0xff, 0xa0, 0x20, 0x1f, 0x8, 0x88, 0xbf, 0xfa, + 0x26, 0x20, 0x1f, 0xfc, 0x32, 0x5e, 0xbb, 0xff, + 0xe8, 0x4a, 0x88, 0x6, 0x37, 0xbb, 0xff, 0xe9, + 0x42, 0x0, 0x7f, 0xf1, 0x8, 0xd1, 0x3f, 0xfa, + 0x24, 0x60, 0x19, 0xf9, 0x13, 0xff, 0xa4, 0x42, + 0x1, 0xff, 0xff, 0x0, 0xff, 0xff, 0x80, 0x7f, + 0xff, 0xc0, 0x3f, 0xfc, 0x24, 0xf9, 0xbb, 0xff, + 0xd6, 0xc7, 0x20, 0xc, 0x91, 0xdb, 0xbf, 0xfd, + 0x69, 0x50, 0xe, 0xf1, 0x22, 0xff, 0xeb, 0x8, + 0x7, 0xc2, 0x22, 0x2f, 0xfe, 0xb1, 0x80, 0x71, + 0x54, 0xdd, 0xff, 0xf5, 0xa1, 0x44, 0x3, 0x1b, + 0x55, 0xdf, 0xff, 0x5a, 0x50, 0x3, 0x89, 0x13, + 0xff, 0xae, 0xa4, 0x60, 0x19, 0xfd, 0x51, 0x3f, + 0xfa, 0xc6, 0x20, 0x1f, 0xff, 0xf0, 0xf, 0xff, + 0xf8, 0x7, 0xff, 0xfc, 0x3, 0xff, 0xfe, 0x1, + 0xff, 0xff, 0x0, 0xff, 0xe1, 0x8, 0x7, 0xff, + 0xe0, 0x8c, 0xc4, 0x5f, 0xfc, 0x13, 0x4b, 0x42, + 0x0, 0xc2, 0x60, 0x1f, 0xfe, 0xf1, 0x78, 0xcd, + 0xdf, 0xfe, 0xe, 0x5b, 0x98, 0x6, 0x3c, 0x40, + 0xf, 0xff, 0x78, 0xaf, 0xb0, 0x80, 0x7f, 0xc2, + 0x22, 0x34, 0x57, 0xad, 0xc6, 0x10, 0xf, 0xff, + 0x8a, 0x4f, 0x7f, 0xff, 0xdd, 0xcd, 0xcb, 0xa8, + 0x52, 0x0, 0xff, 0xef, 0x80, + + /* U+6253 "打" */ + 0x0, 0xff, 0xe2, 0x13, 0x5e, 0xee, 0x84, 0x0, + 0xff, 0xff, 0x80, 0x6e, 0x62, 0x2e, 0x10, 0xf, + 0xff, 0xf8, 0x7, 0xff, 0x2c, 0x8d, 0x57, 0xff, + 0xc4, 0x84, 0x1, 0xff, 0xd9, 0x78, 0xaa, 0xff, + 0xf1, 0x42, 0x90, 0x7, 0xff, 0x64, 0x8b, 0xff, + 0x9a, 0x20, 0x1e, 0x12, 0x2f, 0xfe, 0x13, 0x8, + 0x7, 0x84, 0x7f, 0xe6, 0x0, 0xf0, 0x98, 0x8f, + 0xfc, 0xb3, 0xbb, 0xff, 0xcb, 0xf9, 0x20, 0xc, + 0x4d, 0xfb, 0xbf, 0xfc, 0x1a, 0x62, 0x0, 0x96, + 0xbb, 0xbf, 0xeb, 0x72, 0x0, 0xc9, 0x3d, 0xdf, + 0xed, 0x72, 0x0, 0xff, 0xff, 0x80, 0x7f, 0xfd, + 0x16, 0xbf, 0xff, 0xec, 0x72, 0x0, 0xcb, 0x5f, + 0xff, 0xec, 0x72, 0x0, 0xff, 0xfa, 0x88, 0x7, + 0xff, 0xfc, 0x3, 0xff, 0xfe, 0x1, 0xff, 0xff, + 0x0, 0xff, 0xf4, 0x9, 0x98, 0x84, 0x3, 0xff, + 0xf8, 0xda, 0xaf, 0x15, 0x7b, 0xdf, 0xd9, 0x88, + 0x50, 0xf, 0xff, 0x89, 0x1a, 0x35, 0x21, 0x80, + 0x63, 0x7a, 0x87, 0x54, 0x21, 0x0, 0x84, 0xc0, + 0x3f, 0xfd, 0x2, 0x6d, 0x13, 0x79, 0xbf, 0xed, + 0xcb, 0x97, 0x31, 0x0, 0xf0, 0x9a, 0xb4, 0x4d, + 0xef, 0x7f, 0x4a, 0x0, 0x7f, 0xf9, 0xc5, 0xb1, + 0xd9, 0xc, 0x80, 0x38, 0x48, 0x40, 0x39, 0x6b, + 0xb2, 0xa5, 0xd9, 0x8, 0x40, 0x3f, 0xfd, 0x89, + 0xec, 0x68, 0xd1, 0x37, 0x9d, 0xfd, 0xec, 0x40, + 0x1f, 0xff, 0xb1, 0x59, 0xcb, 0x97, 0x64, 0x31, + 0x0, 0xff, 0xff, 0x80, 0x7f, 0xff, 0xc0, 0x3f, + 0xff, 0xe0, 0x1f, 0xff, 0xf0, 0xf, 0xff, 0xf8, + 0x7, 0xff, 0xfc, 0x3, 0xff, 0xea, 0x23, 0xfc, + 0xe4, 0x60, 0x1c, 0x20, 0x1f, 0xfc, 0x82, 0x33, + 0xfc, 0x45, 0xc6, 0x8b, 0x84, 0x1, 0xde, 0x1, + 0xff, 0xcb, 0x5b, 0xee, 0xfd, 0x4a, 0x20, 0x11, + 0xeb, 0x0, 0x7f, 0xf2, 0x1a, 0x77, 0x33, 0xdb, + 0xbd, 0x97, 0x8, 0x1, 0x85, 0xc, 0x80, 0x3f, + 0xf9, 0x4b, 0xea, 0x1, 0xf0, 0x91, 0xab, 0xd7, + 0x39, 0x0, 0x7f, 0xf2, 0x13, 0x9c, 0x40, 0x3f, + 0xf8, 0x22, 0x48, 0xd5, 0x92, 0x80, 0x1f, 0xfc, + 0xc5, 0xaf, 0xff, 0xbb, 0x72, 0xa1, 0x48, 0x3, + 0xff, 0x96, 0x93, 0xfb, 0xbd, 0xdd, 0xdf, 0xf7, + 0x6d, 0xca, 0x90, 0x7, 0xff, 0x1c, + + /* U+627E "找" */ + 0x0, 0xff, 0xe1, 0x88, 0xf8, 0x3, 0xff, 0xfe, + 0x1, 0xcb, 0x7d, 0xdb, 0x5c, 0x80, 0x3f, 0xf9, + 0x22, 0xd7, 0xff, 0xba, 0xc, 0x3, 0xe1, 0x23, + 0x20, 0xf, 0xff, 0xb0, 0x80, 0x7c, 0x20, 0x1c, + 0x6f, 0x7f, 0xb9, 0x8b, 0x62, 0x0, 0xff, 0xfa, + 0x18, 0x80, 0x7f, 0xc6, 0xba, 0xa2, 0x2, 0x93, + 0x98, 0x73, 0x0, 0xff, 0xf8, 0x88, 0x7, 0xce, + 0x1, 0xc4, 0xd7, 0x92, 0x82, 0x2, 0x71, 0xb6, + 0xc4, 0x1, 0xff, 0xee, 0x73, 0x10, 0x8, 0x4c, + 0x40, 0x3f, 0x13, 0x5e, 0xb9, 0x80, 0x5, 0x27, + 0xe5, 0x4, 0x3, 0xff, 0x82, 0x23, 0xff, 0x18, + 0x80, 0x61, 0xf1, 0x1f, 0xe0, 0xf, 0xfe, 0x10, + 0xf1, 0x0, 0x61, 0x31, 0x0, 0xff, 0x1c, 0x6d, + 0x20, 0x92, 0xd5, 0x14, 0x40, 0x3f, 0xe4, 0xae, + 0xef, 0xfa, 0x50, 0x3, 0x13, 0xe7, 0x77, 0xec, + 0x71, 0x0, 0xff, 0x88, 0x5c, 0x3, 0x37, 0x18, + 0x7, 0xff, 0x0, 0x56, 0xfb, 0x69, 0xc8, 0x8, + 0x86, 0x71, 0x0, 0x7f, 0xf9, 0x84, 0xc4, 0x3, + 0x11, 0xd3, 0x3b, 0xa2, 0x13, 0x54, 0xbb, 0x66, + 0x37, 0x5d, 0xcf, 0xfb, 0xb9, 0xba, 0xcc, 0x6d, + 0x18, 0x7, 0x25, 0x7f, 0xff, 0xd4, 0x80, 0x18, + 0xa3, 0x7f, 0xff, 0x63, 0x24, 0xde, 0x63, 0x75, + 0xdc, 0xff, 0xba, 0x94, 0x3, 0x91, 0xe6, 0x20, + 0xee, 0x65, 0x52, 0x20, 0xcc, 0x44, 0x11, 0x0, + 0x70, 0x88, 0x8a, 0xf0, 0xf, 0xfe, 0x40, 0x80, + 0x61, 0x0, 0xff, 0x84, 0xc9, 0xc, 0xc4, 0x41, + 0x10, 0x7, 0xff, 0x0, 0x91, 0x59, 0x8e, 0xe8, + 0x99, 0x55, 0x2e, 0xd9, 0xba, 0xee, 0x7f, 0xdd, + 0xcd, 0xd6, 0x39, 0x80, 0x7f, 0xf6, 0x53, 0xe6, + 0xa9, 0x79, 0x8d, 0xd7, 0x73, 0xfd, 0x6a, 0x1, + 0xc9, 0xf5, 0x32, 0x88, 0x3b, 0x31, 0x54, 0x88, + 0x32, 0x20, 0x88, 0x3, 0xff, 0xc6, 0x48, 0xca, + 0xa4, 0x33, 0x11, 0x4, 0x40, 0x6, 0xd3, 0x0, + 0xca, 0x64, 0x1, 0xff, 0xc1, 0x38, 0xba, 0x63, + 0x10, 0xf, 0xfe, 0xe8, 0x88, 0x3, 0xff, 0x84, + 0x46, 0xc0, 0x18, 0xf9, 0x80, 0x3f, 0xe2, 0x7f, + 0x74, 0x59, 0xd8, 0x40, 0xf, 0xfe, 0x88, 0xf2, + 0x2b, 0xc5, 0x5e, 0xf7, 0xf4, 0x20, 0x7, 0xff, + 0x9, 0xb4, 0xc0, 0x32, 0x98, 0x80, 0x7e, 0x15, + 0x89, 0x30, 0x9, 0x22, 0x8, 0x1, 0xff, 0xc6, + 0x12, 0x45, 0x7f, 0x70, 0xc, 0x4d, 0x35, 0xe, + 0xa8, 0x42, 0x0, 0x31, 0x0, 0xff, 0xe1, 0x11, + 0x18, 0x3, 0x1e, 0xa0, 0x7, 0xc7, 0x10, 0x51, + 0x0, 0x14, 0x4b, 0x8, 0x7, 0xf8, 0x51, 0xe6, + 0xaf, 0x7b, 0xfb, 0x6e, 0xa1, 0x48, 0x3, 0xc4, + 0x6a, 0xd1, 0x57, 0xbd, 0xf4, 0xa0, 0x1f, 0xfc, + 0x34, 0xd3, 0x0, 0xc9, 0xa6, 0x1, 0xa, 0xd6, + 0xb1, 0x0, 0x5, 0xa5, 0xc8, 0x3, 0xff, 0x82, + 0x58, 0xca, 0x84, 0x20, 0x18, 0x4c, 0x84, 0x3, + 0x1c, 0x7e, 0x54, 0xba, 0xa1, 0x8, 0x7, 0xff, + 0x18, 0x55, 0x8, 0x2, 0x14, 0x41, 0x11, 0xaa, + 0x8a, 0x20, 0x1, 0x6a, 0x84, 0x0, 0xff, 0xe1, + 0xb, 0xf3, 0x2b, 0xc5, 0x5e, 0xf7, 0xf6, 0x42, + 0x0, 0x7f, 0xf5, 0x8b, 0x10, 0x40, 0x23, 0xaf, + 0xf4, 0xa0, 0x4, 0x71, 0xb2, 0x82, 0x1, 0xff, + 0xc4, 0x15, 0x9a, 0x87, 0x54, 0x21, 0x0, 0xff, + 0xee, 0x26, 0x20, 0x6, 0x22, 0x80, 0x2, 0xb5, + 0xae, 0x60, 0x1f, 0xff, 0xa1, 0x32, 0x0, 0xf1, + 0x3e, 0xd2, 0x88, 0x7, 0xfc, 0x23, 0x0, 0x7f, + 0xfa, 0x89, 0xab, 0x6d, 0x88, 0x3, 0xef, 0x10, + 0xf, 0xfe, 0x13, 0xd7, 0xdc, 0x29, 0x0, 0x7f, + 0xf8, 0x89, 0x67, 0x75, 0x2a, 0x40, 0x10, 0x8c, + 0x1, 0x14, 0xc2, 0x0, 0x7f, 0xf0, 0xb, 0x98, + 0x51, 0xe1, 0x48, 0x3, 0xff, 0xb8, 0x26, 0xd3, + 0x98, 0xa6, 0x20, 0x8, 0x96, 0x77, 0xbe, 0x4c, + 0x2, 0x15, 0xa9, 0x40, 0xf, 0xf3, 0x99, 0x0, + 0x4e, 0x64, 0x1, 0xff, 0xd6, 0x13, 0x58, 0xbd, + 0xec, 0x96, 0x31, 0x0, 0xa, 0x46, 0x62, 0x98, + 0x80, 0x5f, 0xdc, 0x80, 0x21, 0x6a, 0xb7, 0x30, + 0xf, 0x2f, 0xa0, 0x4, 0x78, 0xa0, 0x1f, 0xfc, + 0x31, 0x36, 0x0, 0xf1, 0x80, 0x7c, 0x4d, 0x7f, + 0x94, 0xe8, 0x40, 0x10, 0x9b, 0x4e, 0x7d, 0xb9, + 0x88, 0x7, 0x8e, 0x39, 0xcc, 0x2, 0x14, 0x8c, + 0xec, 0xa9, 0x8b, 0x85, 0x0, 0x8e, 0xd0, 0x40, + 0x38, 0xe3, 0x7f, 0xfe, 0xe9, 0x30, 0xc, 0xa6, + 0x20, 0x1f, 0x13, 0x4c, 0x20, 0x80, 0xa3, 0xd6, + 0x7e, 0x4b, 0x18, 0x80, 0x7f, 0xf0, 0xe, 0x36, + 0x98, 0x80, 0x30, 0x9a, 0xb3, 0xa1, 0x0, 0x49, + 0x4c, 0x40, 0x1e, 0x3b, 0x52, 0x0, 0xf0, 0x88, + 0xd1, 0x63, 0x21, 0x0, 0x3f, 0xc4, 0xd7, 0xfd, + 0xcb, 0x85, 0x31, 0x0, 0xff, 0xe3, 0x8a, 0xce, + 0xf5, 0xc2, 0x99, 0x8, 0x6, 0x26, 0xaa, 0x30, + 0x80, 0x7e, 0x38, 0xdf, 0xff, 0x77, 0x32, 0xe9, + 0xcc, 0x40, 0x3f, 0xf8, 0x42, 0x20, 0xf, 0xfe, + 0x88, 0xa3, 0xd6, 0x6f, 0x7f, 0xed, 0x95, 0x10, + 0xf, 0x0, + + /* U+62A4 "护" */ + 0x0, 0xff, 0xe1, 0x9, 0x19, 0xe2, 0x10, 0xf, + 0xff, 0xf8, 0x24, 0xe6, 0x6e, 0x71, 0x0, 0xff, + 0xe7, 0x8a, 0x45, 0xef, 0x7e, 0x39, 0x0, 0x7f, + 0xff, 0x85, 0xb8, 0x8, 0x40, 0xe3, 0xe0, 0xc0, + 0x3f, 0xff, 0xa4, 0xd5, 0x28, 0x20, 0x2, 0x7e, + 0x93, 0x0, 0xff, 0xfe, 0x8b, 0x4c, 0x18, 0x4, + 0x4d, 0xee, 0x40, 0x1f, 0xff, 0xd2, 0x6f, 0x72, + 0x22, 0x35, 0x98, 0x7, 0xff, 0x2c, 0x47, 0xfc, + 0x60, 0x1e, 0x13, 0x11, 0xfc, 0x1, 0xc4, 0xf7, + 0xdd, 0xff, 0xc6, 0xd7, 0x22, 0x2b, 0xcd, 0x67, + 0x77, 0xff, 0x7, 0x60, 0xc0, 0x21, 0x6b, 0xee, + 0xff, 0x4a, 0x0, 0x63, 0x8d, 0xee, 0xfb, 0xe0, + 0xc0, 0x39, 0xc4, 0x7f, 0xf8, 0xe0, 0x10, 0x8f, + 0xff, 0x18, 0xc4, 0x3, 0xff, 0xc4, 0x2b, 0x5d, + 0xdf, 0xfc, 0xfa, 0x50, 0xf, 0xf0, 0xb5, 0xff, + 0xff, 0x74, 0xa0, 0x6, 0x38, 0xdf, 0xff, 0xba, + 0xc, 0x3, 0xfe, 0x36, 0x11, 0xff, 0xe8, 0x18, + 0x80, 0x7f, 0xf2, 0x44, 0xc0, 0x3c, 0x26, 0x1, + 0xff, 0xff, 0x0, 0xff, 0xff, 0x80, 0x7f, 0xff, + 0xc0, 0x3f, 0xfc, 0x86, 0xc4, 0x5f, 0xfc, 0xf1, + 0x31, 0x0, 0xff, 0xe8, 0xf2, 0x9a, 0xbc, 0x55, + 0xee, 0x41, 0x80, 0x7f, 0x85, 0x6b, 0x77, 0xff, + 0x9f, 0x4a, 0x1, 0xff, 0xc8, 0x12, 0x4c, 0x60, + 0xc, 0x6f, 0x79, 0x50, 0xea, 0x84, 0x64, 0xc0, + 0x1c, 0x20, 0x1f, 0xfe, 0x22, 0x46, 0x78, 0xab, + 0xce, 0xfe, 0xdb, 0x62, 0x0, 0xf8, 0x4d, 0x5a, + 0x26, 0xf2, 0xd4, 0x2, 0x1f, 0x0, 0xe1, 0x7c, + 0xff, 0xff, 0xe7, 0xdb, 0x8, 0x7, 0xf3, 0xf4, + 0xc3, 0xaa, 0x18, 0x80, 0x42, 0x20, 0xe, 0x38, + 0xee, 0x65, 0x4b, 0xb2, 0x18, 0x80, 0x70, 0x98, + 0x6, 0x3f, 0x10, 0xf, 0xfe, 0x7b, 0xf2, 0xa2, + 0x4b, 0xc2, 0x1, 0x2f, 0xb1, 0xab, 0x44, 0xde, + 0xf7, 0xf5, 0xa0, 0x7, 0x8, 0x7, 0xff, 0x9, + 0x88, 0x40, 0x30, 0x88, 0xc0, 0x3f, 0xf9, 0xe6, + 0xf7, 0x7c, 0xe4, 0x1, 0x96, 0x72, 0xa5, 0xd9, + 0x8, 0x40, 0x3f, 0xf9, 0x64, 0x47, 0x0, 0xe6, + 0x31, 0x0, 0xff, 0xfe, 0xb7, 0x18, 0x6, 0x3c, + 0x40, 0xf, 0xff, 0xea, 0x6b, 0x80, 0x61, 0x45, + 0x10, 0xf, 0xff, 0xe2, 0x6b, 0x88, 0x6, 0x4c, + 0x30, 0xf, 0xff, 0xe1, 0xeb, 0x88, 0x4, 0x2d, + 0xc8, 0x1, 0xff, 0xfb, 0x26, 0xf6, 0x10, 0x8, + 0xa6, 0xd0, 0x3, 0xff, 0xc4, 0x23, 0xfc, 0x7a, + 0xe0, 0x1f, 0xfc, 0x2, 0x69, 0x83, 0x0, 0xc9, + 0x6c, 0x40, 0x1f, 0xfe, 0x21, 0x7a, 0xee, 0xfb, + 0x1c, 0xc0, 0x21, 0x55, 0x8, 0x4, 0x4f, 0xd2, + 0x82, 0x0, 0x15, 0xaa, 0x30, 0x80, 0x7f, 0xf8, + 0xc5, 0xf5, 0x0, 0x3e, 0x13, 0x46, 0x9d, 0x93, + 0x0, 0xc4, 0xfd, 0x4a, 0x44, 0x6a, 0xb5, 0x10, + 0xf, 0xff, 0x30, 0xb5, 0xff, 0xfd, 0xd9, 0x72, + 0xc6, 0x1, 0xf8, 0x96, 0xb7, 0x52, 0x82, 0x1, + 0xff, 0xe4, + + /* U+6309 "按" */ + 0x0, 0xff, 0xe2, 0x88, 0xf8, 0x3, 0xff, 0xac, + 0x23, 0xc0, 0x1f, 0xfd, 0xc3, 0x8c, 0xee, 0xd6, + 0xa0, 0x1f, 0xfd, 0x34, 0x9e, 0xed, 0xf2, 0x60, + 0x1f, 0xff, 0xf0, 0xf, 0xff, 0xf8, 0x7, 0xff, + 0xfc, 0x3, 0xff, 0xfe, 0x1, 0xff, 0xc5, 0x27, + 0xcf, 0xff, 0xfe, 0x3d, 0xb0, 0x6, 0x16, 0xcf, + 0xff, 0xfe, 0x3f, 0x4a, 0x0, 0x70, 0x8f, 0xfc, + 0xc2, 0x60, 0x18, 0x4c, 0x47, 0xf8, 0x3, 0xff, + 0xcc, 0x20, 0x1e, 0x5b, 0xee, 0xff, 0x53, 0x8, + 0x6, 0x49, 0xee, 0xfd, 0x54, 0xf0, 0xe, 0x49, + 0xef, 0xff, 0xfe, 0xb5, 0xb0, 0x80, 0x7f, 0xf6, + 0xc7, 0xc0, 0x3c, 0x26, 0x20, 0x1f, 0x89, 0xef, + 0x72, 0xea, 0x10, 0x40, 0x3f, 0xf8, 0x8e, 0x1, + 0xff, 0xc0, 0x5a, 0xff, 0xff, 0x63, 0x90, 0x6, + 0x5a, 0xff, 0xfd, 0x4b, 0xe0, 0x1f, 0xfc, 0x31, + 0x5b, 0x42, 0x34, 0x40, 0x38, 0x80, 0x7f, 0xfb, + 0xcc, 0x58, 0x8b, 0x18, 0x80, 0x7c, 0x2f, 0x66, + 0x1, 0xb, 0x59, 0x80, 0x7f, 0xf1, 0x84, 0x8b, + 0x84, 0x3, 0xff, 0xae, 0x2d, 0x5b, 0xba, 0x50, + 0x3, 0xc2, 0xfa, 0x60, 0x10, 0xbd, 0x98, 0x7, + 0xff, 0x18, 0xe3, 0x37, 0x74, 0x20, 0x7, 0xff, + 0x5c, 0x47, 0xff, 0x82, 0x4d, 0xa8, 0x1, 0xa, + 0x61, 0x8, 0xff, 0xf3, 0xc0, 0x3f, 0xfa, 0xc2, + 0xd5, 0xdd, 0xff, 0xc0, 0xd8, 0x40, 0xc, 0x2b, + 0x5d, 0xdf, 0xfc, 0xfa, 0x61, 0x0, 0xff, 0xe5, + 0x9, 0x1a, 0xb4, 0x4d, 0xef, 0x65, 0xb0, 0x7, + 0xff, 0xd0, 0x49, 0x10, 0x66, 0x0, 0xc9, 0x19, + 0x52, 0xec, 0x84, 0x24, 0x93, 0xff, 0xfd, 0xd0, + 0x60, 0x18, 0x9f, 0x7f, 0xff, 0xf8, 0x5d, 0x26, + 0x1, 0x8e, 0x3b, 0xff, 0xd6, 0xc2, 0x0, 0x13, + 0x67, 0x9a, 0xbd, 0xef, 0xed, 0xb8, 0x41, 0x0, + 0xf1, 0x1a, 0xbc, 0x56, 0x6f, 0xca, 0x0, 0x7e, + 0x26, 0xa3, 0x0, 0x8e, 0xa8, 0x40, 0x1f, 0xfc, + 0x24, 0xc3, 0x0, 0x89, 0x10, 0x20, 0x1f, 0xfc, + 0x4, 0xa8, 0x65, 0x42, 0x10, 0x8, 0x48, 0x40, + 0x39, 0x6b, 0x72, 0xa1, 0xd4, 0xc8, 0x3, 0xfc, + 0x75, 0x42, 0x0, 0x8e, 0x98, 0x80, 0x3f, 0xf8, + 0x47, 0x88, 0x1, 0xa, 0x61, 0x80, 0x7f, 0xf0, + 0x5, 0x69, 0x51, 0x9e, 0x6f, 0x3b, 0xfb, 0x8c, + 0x40, 0x1f, 0xfc, 0xb4, 0xa6, 0x20, 0x9, 0x29, + 0xc4, 0x3, 0xff, 0x84, 0x76, 0x82, 0x1, 0x26, + 0x20, 0x7, 0xff, 0x8, 0x9a, 0xae, 0x61, 0x90, + 0xc4, 0x3, 0xff, 0x9e, 0xbc, 0xc2, 0x1, 0x8, + 0x72, 0x18, 0x80, 0x7f, 0xc2, 0xb0, 0xe4, 0x0, + 0x16, 0xe5, 0x0, 0xff, 0xf3, 0xb, 0x4a, 0x80, + 0x70, 0xa3, 0xd6, 0x77, 0x36, 0xe5, 0x90, 0x84, + 0x0, 0x71, 0x68, 0x1, 0x1c, 0x41, 0x0, 0x3f, + 0xfc, 0xeb, 0xc0, 0x20, 0x2, 0x6a, 0xb8, 0x64, + 0x20, 0x12, 0x46, 0x9b, 0xde, 0xeb, 0x58, 0x40, + 0x2, 0xde, 0xc2, 0x1, 0xff, 0xe8, 0x48, 0xce, + 0xfe, 0xc9, 0x54, 0x79, 0xbd, 0xfd, 0xb8, 0x63, + 0x10, 0x0, 0x8c, 0x1, 0x8c, 0x18, 0x80, 0x3f, + 0xfd, 0xc2, 0x20, 0xf, 0xe1, 0xf2, 0x20, 0x80, + 0x7f, 0x13, 0x56, 0xf5, 0xc2, 0x90, 0x7, 0xff, + 0xb0, 0x49, 0x5e, 0x73, 0xb6, 0x9d, 0x4, 0x4, + 0xde, 0xfb, 0x9b, 0x4c, 0x62, 0x0, 0x14, 0x7a, + 0xdd, 0x53, 0x10, 0x7, 0xff, 0x25, 0xc4, 0xc0, + 0x38, 0x40, 0x3f, 0xe1, 0x23, 0x45, 0x78, 0xab, + 0xde, 0xe6, 0xd4, 0x31, 0x88, 0x9, 0xac, 0x5f, + 0xe4, 0x20, 0x88, 0x96, 0x73, 0xf2, 0x14, 0x80, + 0x22, 0x59, 0xdd, 0x4a, 0x90, 0x7, 0xc9, 0x3d, + 0xff, 0xf5, 0xb0, 0x80, 0x47, 0xac, 0x1, 0xe2, + 0x7c, 0xef, 0xed, 0xcb, 0xa8, 0x75, 0x42, 0x10, + 0x12, 0x46, 0x8b, 0xde, 0xca, 0x74, 0x10, 0xf, + 0xe1, 0x37, 0xad, 0xc8, 0x41, 0x0, 0x89, 0xa2, + 0x8c, 0x3, 0xc9, 0xae, 0x20, 0x1e, 0x12, 0x34, + 0x69, 0xe7, 0x20, 0xf, 0x13, 0xfb, 0x88, 0x0, + 0x49, 0x15, 0xa2, 0x6f, 0x7b, 0x9b, 0x72, 0xe8, + 0x40, 0x1f, 0xfc, 0x83, 0x7b, 0xfa, 0x63, 0x49, + 0xf8, 0x30, 0xf, 0x92, 0x7b, 0xff, 0xdd, 0xb9, + 0x72, 0xc4, 0x1, 0xfe, 0x39, 0xef, 0xf7, 0x6d, + 0xd4, 0xbb, 0x21, 0x8, 0x7, 0xff, 0x48, 0x56, + 0x72, 0xd8, 0x80, 0x20, + + /* U+636E "据" */ + 0x0, 0xff, 0xe1, 0x9, 0x17, 0x8, 0x7, 0xff, + 0xfc, 0x3, 0xb, 0x76, 0xee, 0x84, 0x0, 0xff, + 0xff, 0x80, 0x7f, 0xf3, 0xe, 0x37, 0xbb, 0xff, + 0xbf, 0x8e, 0x40, 0x1f, 0xfd, 0xa7, 0x13, 0x11, + 0xff, 0xf0, 0x78, 0x80, 0x7f, 0xf8, 0x52, 0xbf, + 0xff, 0xfa, 0x76, 0xc2, 0x1, 0xff, 0xe7, 0x10, + 0xf, 0xfe, 0xa3, 0x80, 0x7f, 0xf1, 0x4, 0x7f, + 0x8b, 0xc4, 0x3, 0x18, 0x8f, 0xf8, 0x3, 0xff, + 0xdc, 0x51, 0x9d, 0xdf, 0xb1, 0xc8, 0x3, 0x2d, + 0x77, 0x7e, 0xb5, 0x0, 0xfe, 0x10, 0xf, 0xfe, + 0xa3, 0x80, 0x7f, 0xfa, 0x52, 0xbf, 0xff, 0xfa, + 0x76, 0xc2, 0x1, 0xff, 0xc0, 0x28, 0xdf, 0xff, + 0xdd, 0x6, 0x1, 0x9a, 0xff, 0xff, 0x52, 0x80, + 0x7f, 0xc2, 0x3f, 0xfc, 0x30, 0xf, 0xe1, 0x1f, + 0xfe, 0x17, 0x88, 0x7, 0xff, 0x85, 0x6b, 0xbb, + 0xff, 0x87, 0x8e, 0x40, 0x10, 0xb6, 0x77, 0x7f, + 0xf0, 0x71, 0xc8, 0x3, 0xff, 0xb8, 0x20, 0x1f, + 0xff, 0xf0, 0xf, 0xff, 0xf8, 0x7, 0xff, 0x28, + 0xc0, 0x39, 0x6f, 0xb7, 0x7f, 0xf8, 0x6e, 0x40, + 0x10, 0xb6, 0xef, 0xff, 0x1e, 0x10, 0x3, 0xff, + 0x90, 0x46, 0xad, 0x15, 0x9b, 0xfa, 0xe4, 0x0, + 0x10, 0xf, 0x84, 0x44, 0x5f, 0xfc, 0x21, 0x0, + 0xf8, 0x48, 0xbf, 0xf8, 0xc2, 0x1, 0xff, 0x9, + 0x23, 0x69, 0x0, 0x64, 0x8a, 0x97, 0x53, 0x20, + 0x2d, 0x60, 0x8, 0x40, 0x31, 0xc7, 0x7f, 0xff, + 0xf0, 0xf1, 0xc4, 0x2, 0x16, 0xbf, 0xff, 0xfe, + 0x34, 0xa0, 0x0, 0x95, 0xe2, 0xb3, 0x7f, 0xb6, + 0xe1, 0x44, 0x3, 0xc2, 0x48, 0xd1, 0x57, 0xb6, + 0x80, 0x44, 0x70, 0xc, 0xc4, 0x20, 0x1f, 0xfc, + 0x53, 0x0, 0xe7, 0x0, 0xff, 0xe5, 0x3f, 0x43, + 0xa9, 0x90, 0x7, 0xfc, 0xb7, 0xdb, 0x72, 0xea, + 0x84, 0x20, 0x1, 0xf2, 0x0, 0xe1, 0x0, 0xff, + 0xf1, 0xa6, 0x21, 0x22, 0xbc, 0xde, 0x76, 0xc1, + 0x80, 0x63, 0x0, 0xff, 0xe0, 0x31, 0x8, 0x4, + 0x24, 0xe0, 0x1f, 0xfc, 0x63, 0x0, 0xe7, 0x0, + 0xff, 0xe5, 0xb, 0xde, 0xdd, 0x43, 0x21, 0x89, + 0x80, 0x7f, 0xf1, 0x84, 0x98, 0x3, 0x2f, 0x11, + 0x1f, 0x3f, 0xff, 0xf8, 0x38, 0xe2, 0x1, 0xb, + 0x5f, 0xff, 0xff, 0x7, 0x60, 0xc0, 0x3f, 0xfb, + 0x9, 0x86, 0x1, 0x9, 0xa8, 0x80, 0x7c, 0x24, + 0x5f, 0xfc, 0xc1, 0x10, 0x7, 0xff, 0x79, 0x31, + 0x0, 0x32, 0xe9, 0x80, 0x7c, 0x73, 0x9b, 0xbf, + 0xfc, 0xc7, 0x10, 0xf, 0xfe, 0xe1, 0xe2, 0x0, + 0x63, 0xd4, 0x0, 0xff, 0xff, 0x81, 0x5a, 0x90, + 0x4, 0x74, 0xe2, 0x1, 0xff, 0xff, 0x4b, 0x62, + 0x0, 0x8e, 0x9c, 0x40, 0x3f, 0xfd, 0x22, 0x3e, + 0x1, 0x2f, 0x10, 0x8, 0x40, 0x3c, 0x4f, 0xc, + 0x20, 0x1, 0x59, 0x71, 0x0, 0xff, 0x1c, 0xe6, + 0x7f, 0xf3, 0x39, 0xc4, 0x3, 0xff, 0x84, 0x91, + 0xfd, 0xdb, 0xfb, 0x1c, 0x80, 0x22, 0xf5, 0x0, + 0xb, 0x4c, 0x18, 0x4, 0x71, 0x5, 0x10, 0xf, + 0xfe, 0x0, 0x91, 0x9f, 0xff, 0x2c, 0x84, 0x3, + 0xff, 0x86, 0x9a, 0xe2, 0x1, 0x84, 0x44, 0x6a, + 0xf5, 0xcc, 0x20, 0x1, 0x4f, 0x84, 0x23, 0x7f, + 0x62, 0x0, 0xff, 0xe0, 0x9c, 0x6f, 0xff, 0xff, + 0x2e, 0xd8, 0x40, 0x3f, 0xf8, 0x69, 0x3d, 0xff, + 0xbb, 0x9b, 0x95, 0xa, 0x40, 0x1c, 0x48, 0xf7, + 0xb9, 0x6, 0x1, 0xfc, 0x4d, 0xd9, 0x97, 0x31, + 0x0, 0x7f, 0xf2, 0xd2, 0x7f, 0xba, 0xc8, 0x30, + 0xc, + + /* U+6392 "排" */ + 0x0, 0xff, 0xe1, 0x9, 0x17, 0x8, 0x7, 0xff, + 0x30, 0x48, 0xcf, 0x10, 0x7, 0xf8, 0x4c, 0xf8, + 0x80, 0x3f, 0xfa, 0x65, 0x3f, 0xbb, 0x7c, 0x90, + 0x7, 0xff, 0x28, 0x5e, 0x73, 0x2d, 0xb4, 0x0, + 0xfc, 0x73, 0xd9, 0x96, 0xd9, 0x80, 0x7f, 0xff, + 0xc0, 0x3f, 0xff, 0xe0, 0x1f, 0xff, 0xf0, 0xf, + 0xff, 0xf8, 0x7, 0xff, 0x2c, 0x5c, 0x3, 0xff, + 0x94, 0xe0, 0x1f, 0xfd, 0x21, 0x0, 0xf8, 0x40, + 0x3f, 0x2d, 0x7f, 0xff, 0xf0, 0x3a, 0xc, 0x3, + 0xff, 0x90, 0x2d, 0x7f, 0xff, 0xfc, 0x1c, 0x72, + 0x0, 0x8e, 0x7b, 0xff, 0xf6, 0x39, 0x0, 0x44, + 0xf9, 0xff, 0xf6, 0x4b, 0x0, 0x7f, 0xff, 0xc0, + 0x3f, 0xd7, 0xdf, 0xff, 0xfc, 0xd, 0x83, 0x0, + 0xff, 0xe4, 0xb, 0x5f, 0xff, 0xff, 0x7, 0x1c, + 0x80, 0x23, 0x9e, 0xff, 0xfd, 0x8e, 0x40, 0x11, + 0x3e, 0x7f, 0xfd, 0x8e, 0x40, 0x1f, 0xfc, 0x3, + 0x17, 0x0, 0xff, 0xe5, 0x38, 0x7, 0xff, 0x48, + 0x40, 0x3e, 0x10, 0xf, 0xff, 0xf8, 0x7, 0xff, + 0xfc, 0x3, 0xff, 0xa8, 0xb5, 0xff, 0xff, 0xc0, + 0xe9, 0x40, 0xf, 0xfe, 0x40, 0xb6, 0x7f, 0xff, + 0xf0, 0x31, 0xc8, 0x3, 0xff, 0x9c, 0x26, 0x8d, + 0xb, 0xa0, 0x1f, 0xfe, 0x71, 0xf0, 0xf, 0xfe, + 0x51, 0x37, 0xef, 0xf6, 0x5c, 0xbc, 0xfc, 0x7f, + 0xff, 0xf0, 0x36, 0xc, 0x3, 0xb, 0x80, 0x7f, + 0xf0, 0x85, 0xaf, 0xff, 0xff, 0x81, 0xb0, 0x40, + 0x1f, 0x84, 0xd5, 0xa2, 0xb3, 0xdc, 0x80, 0x30, + 0x91, 0x0, 0x30, 0x9a, 0x90, 0x7, 0xff, 0x1c, + 0xfc, 0x40, 0x3f, 0xf8, 0x8e, 0x1, 0xff, 0xc6, + 0x26, 0xbe, 0xfe, 0xca, 0x97, 0x53, 0x20, 0xf, + 0x12, 0xc4, 0xde, 0xff, 0x64, 0xa9, 0x0, 0x7f, + 0xf0, 0x7c, 0x40, 0x21, 0x3, 0x0, 0xff, 0xeb, + 0x91, 0x4, 0x40, 0x1c, 0x26, 0xaa, 0x31, 0x0, + 0x89, 0x61, 0xd9, 0x8, 0x3, 0xff, 0x8c, 0x22, + 0x30, 0x9, 0xc4, 0x40, 0x1f, 0xfd, 0x84, 0xe9, + 0x8a, 0xbd, 0xfe, 0xca, 0x84, 0x30, 0xf, 0xfe, + 0x50, 0x92, 0x34, 0x57, 0xb8, 0x80, 0x8, 0xd4, + 0x3, 0xff, 0x88, 0x6c, 0x23, 0xff, 0xc3, 0x0, + 0xe4, 0x67, 0x54, 0x20, 0xf, 0xfe, 0x40, 0x92, + 0x33, 0xcd, 0xef, 0x73, 0x6e, 0x5d, 0x4c, 0x40, + 0x27, 0xd3, 0x0, 0xff, 0xe1, 0x8a, 0xd7, 0x77, + 0xff, 0xe, 0x94, 0x3, 0xff, 0x9c, 0x2d, 0x7d, + 0xb7, 0x30, 0xc8, 0x42, 0x4, 0x8c, 0xa6, 0x1, + 0x8f, 0x50, 0x3, 0xff, 0xe4, 0x2d, 0xca, 0x24, + 0x8d, 0x15, 0x9d, 0xfb, 0x74, 0x64, 0x1, 0xa, + 0x20, 0x40, 0x3f, 0xf8, 0x82, 0xd9, 0xff, 0xff, + 0xc3, 0xa5, 0x0, 0xff, 0xe8, 0x2d, 0x76, 0xdc, + 0xba, 0x98, 0x80, 0xb4, 0x30, 0x80, 0xa, 0x68, + 0xc0, 0x3f, 0xff, 0xc2, 0xb7, 0x8, 0x0, 0x15, + 0x86, 0x20, 0xf, 0xff, 0xe9, 0xc6, 0xd2, 0x88, + 0x1, 0x22, 0xd4, 0x40, 0x3f, 0xfd, 0x2, 0x6, + 0x1, 0xff, 0xc3, 0x14, 0x8c, 0xd7, 0x30, 0x1, + 0x2d, 0xd3, 0x8, 0x7, 0xff, 0x80, 0x5a, 0xff, + 0xfe, 0xc7, 0x10, 0x9, 0xb8, 0x80, 0x3c, 0x29, + 0x5f, 0x6e, 0x62, 0x2, 0xb5, 0xf4, 0x82, 0x1, + 0xff, 0xe2, 0x17, 0xd4, 0x0, 0xf0, 0x91, 0xa3, + 0x54, 0xb0, 0x7, 0xc2, 0x91, 0x4, 0x24, 0x8c, + 0xfa, 0x52, 0x0, 0xff, 0xf3, 0xb, 0x5f, 0xff, + 0xbb, 0x72, 0xe5, 0x48, 0x3, 0xfc, 0x4d, 0x7b, + 0x6e, 0x62, 0x1, 0xff, 0xcb, 0x38, 0xdf, 0xfb, + 0xa4, 0xc0, 0x3f, 0xf8, 0xa0, + + /* U+63D0 "提" */ + 0x0, 0xff, 0xe0, 0x9c, 0x77, 0xfd, 0xb0, 0x40, + 0x1f, 0xff, 0xf0, 0xf, 0xfe, 0x81, 0xcf, 0x7f, + 0xff, 0xf6, 0xf6, 0x8, 0x3, 0xff, 0xce, 0x26, + 0xab, 0xff, 0xd0, 0x42, 0x0, 0xff, 0xf7, 0x15, + 0xda, 0xab, 0xff, 0x9f, 0xe8, 0x1, 0xff, 0xf0, + 0x30, 0xf, 0xfe, 0x78, 0x98, 0x7, 0xff, 0x24, + 0x47, 0xf9, 0xc4, 0x3, 0x85, 0x84, 0x7f, 0x0, + 0x7f, 0xc7, 0x1b, 0xff, 0xff, 0xcf, 0xa5, 0x0, + 0xff, 0xe3, 0x9c, 0xff, 0x77, 0xeb, 0x61, 0x0, + 0x89, 0xaf, 0xbb, 0xec, 0x72, 0x0, 0xfe, 0x14, + 0x67, 0x7f, 0xfe, 0x7a, 0x90, 0x7, 0xff, 0xb8, + 0xb2, 0x23, 0xff, 0xa1, 0xc8, 0x1, 0xff, 0xc7, + 0x39, 0xef, 0xff, 0xd8, 0xe2, 0x1, 0x13, 0xe7, + 0xff, 0xda, 0xe4, 0x1, 0xff, 0x18, 0x7, 0xff, + 0x3c, 0x4c, 0x3, 0xff, 0xb4, 0x20, 0x1f, 0xfc, + 0x73, 0x8d, 0xff, 0xff, 0xe7, 0xd2, 0x80, 0x7f, + 0xfa, 0x7, 0xdd, 0x57, 0xff, 0xb6, 0x9a, 0x60, + 0x1f, 0xfe, 0x12, 0x69, 0xaa, 0xff, 0xed, 0xca, + 0x88, 0x7, 0xff, 0xfc, 0x3, 0xff, 0xc4, 0x22, + 0x34, 0x68, 0x9a, 0x73, 0x49, 0xff, 0xff, 0xf2, + 0xeb, 0x90, 0x7, 0xff, 0x14, 0x58, 0x80, 0x31, + 0x3e, 0x76, 0x5c, 0xbb, 0x2e, 0x28, 0x9, 0x91, + 0x7f, 0xf1, 0xc4, 0x3, 0xc2, 0x45, 0xff, 0xc9, + 0x61, 0x0, 0xfc, 0x26, 0xad, 0x13, 0x59, 0xdf, + 0xd4, 0xa2, 0x1, 0xf0, 0x92, 0x33, 0xcf, 0xa2, + 0x23, 0x37, 0x7f, 0xf8, 0xf4, 0xc0, 0x18, 0xa7, + 0xf7, 0x7f, 0xf9, 0x16, 0xc4, 0x1, 0xe1, 0x78, + 0xa9, 0x76, 0x53, 0x10, 0xf, 0xc2, 0xd7, 0xfd, + 0xb7, 0x30, 0xc8, 0x40, 0x1c, 0x2b, 0x39, 0x76, + 0xa6, 0x30, 0xf, 0xff, 0x10, 0xa6, 0xaa, 0x2b, + 0xc5, 0x66, 0xf6, 0x38, 0x80, 0x46, 0x2c, 0x1, + 0xff, 0xc2, 0x2c, 0x73, 0x44, 0x3f, 0x0, 0x7f, + 0xf9, 0x9, 0xaa, 0xea, 0x1d, 0x4c, 0x84, 0x3, + 0xff, 0x94, 0x2a, 0x42, 0x1, 0x3e, 0x98, 0x7, + 0xff, 0x8, 0xa7, 0xf7, 0x7f, 0xf8, 0x76, 0xc4, + 0x1, 0xff, 0xe1, 0x5c, 0x50, 0x8, 0x49, 0x80, + 0x3f, 0xf8, 0x82, 0x45, 0xff, 0xc4, 0x6e, 0x0, + 0xff, 0xf0, 0xa6, 0xa0, 0x80, 0x42, 0xb6, 0x40, + 0x1f, 0xfc, 0x22, 0x8d, 0xff, 0xff, 0xe1, 0xec, + 0x10, 0x7, 0xff, 0x7d, 0x35, 0xc4, 0x3, 0x89, + 0xa1, 0x44, 0x3, 0xff, 0xfc, 0x2d, 0xec, 0x20, + 0x3, 0x8a, 0x72, 0x15, 0xba, 0x61, 0x0, 0xff, + 0xfd, 0xa, 0xdc, 0x20, 0x0, 0x5a, 0x1d, 0x66, + 0x14, 0x44, 0x93, 0xf6, 0xe6, 0x20, 0x1f, 0xfd, + 0xe1, 0x1f, 0xcc, 0x42, 0x1, 0xff, 0x12, 0xdd, + 0x94, 0x40, 0x7, 0x10, 0x40, 0x0, 0xad, 0x6c, + 0x18, 0x89, 0x23, 0x3a, 0x98, 0x3, 0xbd, 0x84, + 0x40, 0x1f, 0xfd, 0x25, 0xbe, 0xef, 0xa9, 0x40, + 0x33, 0xe9, 0x0, 0x5, 0x6b, 0x29, 0x44, 0x5, + 0x6b, 0x58, 0x40, 0x3c, 0x6f, 0x9f, 0x70, 0x82, + 0x2, 0x1, 0xc4, 0xf7, 0xdc, 0xff, 0xff, 0xe4, + 0x6c, 0x18, 0x7, 0xc9, 0xe8, 0x1, 0xc2, 0x22, + 0x45, 0x8b, 0xb2, 0x80, 0x66, 0xc4, 0x21, 0x38, + 0xca, 0x51, 0x0, 0xff, 0x85, 0x1e, 0xfb, 0x99, + 0x52, 0xec, 0x86, 0x45, 0x8, 0xc0, 0x1f, 0xfc, + 0x51, 0x5b, 0x30, 0xf, 0x85, 0x6f, 0xff, 0xbb, + 0x9b, 0x74, 0xe8, 0x20, 0x18, 0x4d, 0xab, 0x7b, + 0x1c, 0x80, 0x3f, 0xf8, 0xe2, 0x6a, 0xd1, 0x37, + 0x9b, 0xb7, 0x75, 0xff, 0xff, 0xc5, 0xe8, 0x30, + 0xc, + + /* U+63D2 "插" */ + 0x0, 0xff, 0xe1, 0x9, 0x9f, 0x10, 0x7, 0xff, + 0xfc, 0x3, 0x13, 0x76, 0x65, 0xb4, 0x60, 0x1f, + 0xfe, 0x41, 0x34, 0x56, 0x87, 0x41, 0x0, 0xff, + 0xf5, 0x88, 0x88, 0x86, 0x64, 0x42, 0xa9, 0x9d, + 0xd1, 0x35, 0x76, 0xcd, 0xef, 0xf7, 0x65, 0xd4, + 0xbc, 0x5e, 0xb9, 0x80, 0x7f, 0xf6, 0x89, 0xaa, + 0xf3, 0x1b, 0xae, 0xe7, 0xff, 0x77, 0x37, 0x59, + 0x8b, 0xb5, 0x52, 0x62, 0xe, 0xca, 0x88, 0x32, + 0x10, 0x8, 0x48, 0xd1, 0x5a, 0x28, 0x80, 0x40, + 0x3f, 0xfb, 0x24, 0x60, 0x86, 0x62, 0x20, 0x88, + 0x4, 0x44, 0x51, 0x9c, 0x88, 0x32, 0x0, 0xc2, + 0xb1, 0x57, 0x98, 0xde, 0xff, 0xbb, 0x72, 0xea, + 0x5d, 0x94, 0xc4, 0x3, 0xff, 0xb4, 0xb5, 0xdc, + 0xff, 0xf7, 0x73, 0x76, 0xcc, 0xae, 0xde, 0x82, + 0x1, 0x16, 0xaa, 0x90, 0xcc, 0x42, 0x1, 0xff, + 0xea, 0x11, 0x0, 0x7f, 0xfa, 0xa, 0x33, 0xbb, + 0xf6, 0x41, 0x0, 0x42, 0xf9, 0xdd, 0xf6, 0x39, + 0x89, 0x17, 0xff, 0x21, 0x8c, 0x3, 0xf, 0xb1, + 0x17, 0xff, 0x24, 0x40, 0x38, 0x40, 0x47, 0xfc, + 0x1, 0xf8, 0x47, 0xf6, 0x46, 0x6e, 0xff, 0xf2, + 0x29, 0x44, 0x2, 0x27, 0xbd, 0xdf, 0xfe, 0x4d, + 0xa8, 0x6, 0x39, 0xec, 0xcf, 0xd4, 0xc4, 0x1, + 0xa, 0xce, 0x67, 0xdf, 0xe3, 0x12, 0x2f, 0xfe, + 0x40, 0x80, 0x78, 0x44, 0x45, 0xff, 0xc9, 0x31, + 0x0, 0xe1, 0x33, 0xfe, 0x7e, 0x0, 0xe2, 0x53, + 0x3f, 0x89, 0x23, 0x37, 0x7f, 0xf9, 0x2c, 0x20, + 0x11, 0xce, 0x6e, 0xff, 0xf2, 0x65, 0x0, 0x3f, + 0xff, 0xe0, 0x1f, 0xfe, 0xc1, 0x46, 0x9c, 0xef, + 0xd9, 0x41, 0x70, 0xf, 0xf8, 0x47, 0xff, 0x88, + 0x1, 0xff, 0xd5, 0x12, 0x20, 0x81, 0xce, 0xea, + 0xea, 0x97, 0xbd, 0xcb, 0x96, 0x31, 0x2, 0x4f, + 0x63, 0x30, 0x7, 0xc2, 0xf9, 0xdd, 0xff, 0xc3, + 0xf9, 0x30, 0xf, 0xfe, 0x61, 0xd4, 0x4d, 0xef, + 0x73, 0x65, 0xc4, 0x0, 0x64, 0x8a, 0xa4, 0x21, + 0x24, 0x57, 0x9b, 0xdf, 0xdb, 0x74, 0x30, 0xf, + 0xc2, 0xc4, 0x5f, 0xc2, 0x20, 0xf, 0xfe, 0x30, + 0x92, 0x2b, 0x44, 0x28, 0x80, 0x21, 0x46, 0x76, + 0x42, 0x10, 0x10, 0x1, 0x80, 0x78, 0x9f, 0x7f, + 0x6e, 0xa1, 0x90, 0x80, 0x3f, 0xf8, 0x22, 0xd5, + 0xbb, 0xfd, 0xf2, 0x60, 0x1f, 0xf0, 0xad, 0x6f, + 0x7f, 0x6d, 0xd4, 0xba, 0x90, 0x7, 0x12, 0xbc, + 0xde, 0x77, 0xf5, 0xb1, 0x0, 0x78, 0x78, 0xc0, + 0x3f, 0xfc, 0x62, 0xc6, 0x61, 0x0, 0x9, 0xab, + 0x44, 0x14, 0x40, 0x21, 0x59, 0x86, 0x43, 0x10, + 0xf, 0xff, 0x91, 0xc6, 0x6f, 0x7f, 0x65, 0x4b, + 0xae, 0x98, 0x7, 0xff, 0x28, 0xe3, 0x37, 0x7f, + 0xa5, 0x0, 0x3f, 0xc2, 0xd5, 0xbb, 0xfd, 0x92, + 0x60, 0x1f, 0xfc, 0x11, 0x22, 0x8, 0x7, 0xff, + 0x50, 0x48, 0xbf, 0xc6, 0x20, 0x1f, 0xf0, 0xb1, + 0x17, 0xf8, 0x40, 0x3f, 0xfc, 0xa7, 0x1b, 0xff, + 0xfd, 0x4a, 0x1, 0xfe, 0x17, 0xcf, 0xff, 0xed, + 0x83, 0x0, 0xff, 0xf2, 0x89, 0x80, 0x7f, 0xf5, + 0x4c, 0x3, 0xff, 0xfe, 0x1, 0xff, 0xff, 0x0, + 0xff, 0xff, 0xf1, 0x8, 0xff, 0xf0, 0x18, 0xc0, + 0x30, 0xf8, 0x8f, 0xff, 0x4, 0xbc, 0x3, 0xff, + 0x98, 0x3e, 0x1, 0x8c, 0x3, 0xff, 0x8c, 0x6f, + 0x9d, 0xdf, 0xfc, 0xa, 0x51, 0x0, 0x89, 0xf3, + 0xbb, 0xff, 0x81, 0x8e, 0x60, 0x1f, 0xfc, 0x25, + 0xaf, 0xff, 0xb1, 0xc8, 0x2, 0x6e, 0x20, 0xf, + 0xfe, 0x28, 0x91, 0x9f, 0xff, 0x54, 0x84, 0x3, + 0xff, 0x86, 0xbe, 0x80, 0x1e, 0x11, 0x1a, 0x34, + 0xc9, 0x84, 0x3, 0xff, 0x88, 0x71, 0x99, 0xff, + 0xd7, 0x85, 0x22, 0xc2, 0x1, 0xfe, 0x5b, 0xff, + 0xf7, 0x73, 0x2e, 0x58, 0x80, 0x3f, 0xf8, 0x7, + 0x3d, 0xff, 0x63, 0x8, 0x7, 0xff, 0x54, 0x5a, + 0xb7, 0x6c, 0x83, 0x0, 0xc0, + + /* U+641C "搜" */ + 0x0, 0xff, 0xe2, 0x9, 0x9f, 0x10, 0x80, 0x7f, + 0xf5, 0x4, 0xcf, 0x10, 0x80, 0x7f, 0xf7, 0x8e, + 0x7b, 0x33, 0x42, 0x0, 0x7f, 0xf4, 0xca, 0x7b, + 0x32, 0xe6, 0x10, 0xf, 0xff, 0xd0, 0x9b, 0x4e, + 0x77, 0x2d, 0xcc, 0x44, 0x1, 0xff, 0xf9, 0x24, + 0x65, 0x45, 0x8a, 0xdf, 0xc9, 0x63, 0x11, 0x25, + 0x4b, 0xb0, 0x7, 0xca, 0xd5, 0x99, 0xff, 0xc2, + 0xb7, 0x30, 0xf, 0xfe, 0xf3, 0x74, 0xd5, 0xd3, + 0xa9, 0x8, 0x8d, 0x62, 0xb3, 0xb6, 0x99, 0xc0, + 0x3e, 0x1e, 0x73, 0x3f, 0xfe, 0x12, 0xf3, 0x80, + 0x7f, 0xf9, 0xe, 0x37, 0xb9, 0x94, 0xea, 0x62, + 0x1, 0xff, 0x3c, 0x6f, 0xff, 0xee, 0x83, 0x0, + 0xff, 0xe2, 0x89, 0x17, 0xf9, 0x84, 0xc0, 0x30, + 0x99, 0x17, 0xe1, 0x0, 0xfc, 0xc4, 0x41, 0x0, + 0xff, 0xe3, 0x18, 0x7, 0xfc, 0x2e, 0x1, 0xff, + 0xc4, 0x5b, 0xdd, 0xff, 0x53, 0x8, 0x6, 0x49, + 0xdd, 0xfd, 0x4a, 0x1, 0xff, 0xef, 0x13, 0x11, + 0xff, 0x0, 0x7f, 0x8, 0xff, 0x0, 0x7e, 0x5a, + 0xff, 0xfb, 0xa0, 0xc0, 0x3f, 0xc9, 0x1b, 0xff, + 0xfb, 0xa5, 0x0, 0x3f, 0xf8, 0x89, 0x3d, 0xdf, + 0xec, 0x72, 0x0, 0xcb, 0x5d, 0xdf, 0xa9, 0x40, + 0x3e, 0x12, 0x34, 0x4f, 0x2f, 0x8, 0x7, 0xf8, + 0x79, 0xd1, 0x3f, 0x19, 0x8, 0x7, 0xff, 0xa9, + 0x23, 0x2e, 0xfe, 0x62, 0x0, 0xff, 0x2b, 0x55, + 0xdf, 0xed, 0xb5, 0x0, 0xff, 0xff, 0x80, 0x7f, + 0xfe, 0x44, 0x3, 0xff, 0x82, 0x20, 0x1f, 0x18, + 0x7, 0xfc, 0x2e, 0x1, 0xff, 0xea, 0x4a, 0xff, + 0xff, 0xe0, 0x63, 0x90, 0x4, 0x71, 0xbf, 0xff, + 0xee, 0x83, 0x0, 0xff, 0xec, 0x89, 0xa3, 0x44, + 0xde, 0xdb, 0xb, 0x91, 0x9f, 0xff, 0x18, 0x84, + 0x3, 0x84, 0xcf, 0xff, 0x8a, 0xbc, 0xe0, 0x1f, + 0xfc, 0x71, 0x24, 0x41, 0x98, 0x3, 0x2d, 0x76, + 0x5c, 0xbb, 0x21, 0x2f, 0xa9, 0xc6, 0x67, 0xff, + 0x1b, 0xd8, 0x80, 0x23, 0x9d, 0xcc, 0xff, 0xe2, + 0x5b, 0x98, 0x7, 0xf0, 0xa3, 0xc4, 0xde, 0x6f, + 0x7f, 0x6d, 0xc2, 0x8, 0x7, 0x12, 0x2b, 0x44, + 0xde, 0x77, 0x25, 0x0, 0x3f, 0xfd, 0xc5, 0x6e, + 0xc8, 0x64, 0x20, 0x24, 0x88, 0x20, 0xe, 0x58, + 0xba, 0x97, 0x64, 0x31, 0x12, 0xd6, 0xef, 0xff, + 0x23, 0xd8, 0x80, 0x23, 0x9c, 0xdd, 0xff, 0xe1, + 0x5c, 0xb1, 0x0, 0x7f, 0x85, 0x25, 0xda, 0x2a, + 0xf7, 0xb9, 0xb7, 0xa, 0x40, 0x1f, 0xfc, 0x33, + 0x12, 0x2f, 0xfe, 0x48, 0x80, 0x70, 0x91, 0x7f, + 0xf0, 0xd1, 0x44, 0x3, 0xff, 0x80, 0x4b, 0x12, + 0xea, 0x84, 0x20, 0x1f, 0xfc, 0x81, 0x6b, 0xff, + 0xba, 0xdc, 0xc4, 0x0, 0x29, 0x3b, 0xff, 0xff, + 0xc8, 0xeb, 0x62, 0x0, 0xc2, 0xde, 0xe4, 0x1, + 0xff, 0xe2, 0x14, 0xab, 0x20, 0x0, 0xa4, 0xfc, + 0xa0, 0x80, 0x7f, 0xf0, 0xc5, 0x6e, 0x98, 0x80, + 0x4, 0xfb, 0x26, 0x1, 0xff, 0xe6, 0x27, 0xda, + 0x51, 0x0, 0x13, 0x5e, 0xca, 0x90, 0x7, 0xf0, + 0xa4, 0xed, 0x28, 0x80, 0xac, 0xfc, 0x18, 0x7, + 0xff, 0xa8, 0x56, 0xb2, 0x54, 0x40, 0x6, 0xd5, + 0xba, 0xa6, 0x31, 0x12, 0x46, 0x7d, 0xb1, 0x81, + 0xbd, 0xfd, 0x31, 0x0, 0x7f, 0xfb, 0xc9, 0xab, + 0xed, 0xcc, 0x2, 0x25, 0x9c, 0xee, 0x5b, 0x98, + 0x89, 0x67, 0x72, 0x10, 0x40, 0x3f, 0xfe, 0x62, + 0x68, 0x40, 0xc4, 0x1, 0xff, 0x9, 0x18, 0xb9, + 0x88, 0x7, 0xff, 0x59, 0xc4, 0xc0, 0x38, 0x40, + 0x3f, 0xc2, 0x46, 0x8a, 0xcf, 0x35, 0x9d, 0xfd, + 0x95, 0x2e, 0xa4, 0x0, 0x13, 0x56, 0x62, 0x98, + 0x80, 0x9b, 0x45, 0x67, 0x73, 0x6e, 0x61, 0x95, + 0xc, 0x84, 0x3, 0xff, 0x82, 0x93, 0xdf, 0xff, + 0x5b, 0x8, 0x4, 0x7a, 0xc0, 0x18, 0xdf, 0x3b, + 0xfd, 0xdb, 0x97, 0x53, 0xc, 0xa6, 0x20, 0x1, + 0x35, 0x79, 0xbd, 0xee, 0x65, 0x4c, 0xab, 0x3b, + 0x6e, 0x59, 0x4, 0x0, 0x24, 0x8c, 0xf3, 0x57, + 0x9b, 0xdf, 0xd6, 0xc4, 0x1, 0xf9, 0x35, 0xc4, + 0x3, 0xc2, 0x46, 0x8d, 0x3c, 0xe4, 0x1, 0x8d, + 0x6c, 0x80, 0x21, 0x34, 0x56, 0x79, 0xab, 0xce, + 0xfe, 0xca, 0x86, 0x42, 0x10, 0xf, 0xc4, 0x8d, + 0x37, 0xdc, 0xdb, 0xa8, 0x75, 0x42, 0x10, 0x8, + 0x9a, 0x18, 0x80, 0x3f, 0x92, 0x7b, 0xff, 0xdd, + 0xb9, 0x72, 0xc4, 0x1, 0xf1, 0x3e, 0x7f, 0xdd, + 0x97, 0x53, 0xc, 0xa8, 0x62, 0x1, 0xff, 0xcb, + 0x12, 0x45, 0x78, 0xab, 0xde, 0xfe, 0xdc, 0x83, + 0x0, 0xe0, + + /* U+6545 "故" */ + 0x0, 0xff, 0xe3, 0x89, 0xaa, 0xe4, 0x20, 0xf, + 0xfe, 0x69, 0x19, 0x88, 0x40, 0x3f, 0xfd, 0x9, + 0x35, 0x5a, 0x68, 0x80, 0x3f, 0xf9, 0x69, 0x19, + 0x8d, 0xef, 0xb6, 0x0, 0xff, 0xff, 0x80, 0x71, + 0xe3, 0x80, 0x63, 0xc4, 0x0, 0xff, 0xff, 0x80, + 0x61, 0x54, 0x20, 0x8, 0x51, 0x4, 0x1, 0xff, + 0xff, 0x0, 0xc9, 0x86, 0x1, 0x93, 0xc, 0x3, + 0xff, 0xfe, 0x1, 0x97, 0xd4, 0x3, 0x26, 0x28, + 0x7, 0xff, 0x5c, 0x48, 0xbf, 0xf8, 0x82, 0x1, + 0xc2, 0xc4, 0x5f, 0xfc, 0x21, 0x0, 0xcb, 0xea, + 0x1, 0x85, 0xfd, 0x9d, 0xff, 0xf9, 0xea, 0x40, + 0x1c, 0x53, 0xfb, 0xbf, 0xfc, 0x28, 0x40, 0xc, + 0x4d, 0x7b, 0xbf, 0xfc, 0x1c, 0x93, 0x0, 0x2f, + 0xa8, 0x7, 0x9, 0xb4, 0x47, 0xff, 0x43, 0xdc, + 0x3, 0xde, 0x20, 0x1f, 0xfd, 0x83, 0x0, 0xb, + 0x72, 0x80, 0x61, 0x24, 0x55, 0xff, 0xe2, 0x21, + 0x0, 0x70, 0x92, 0x2a, 0xed, 0x60, 0xe, 0x27, + 0xcf, 0xff, 0xfe, 0x15, 0x28, 0x6, 0x27, 0xdf, + 0xff, 0xfe, 0xe, 0xc0, 0x4d, 0xa0, 0x7, 0x92, + 0x2a, 0xbf, 0xf8, 0x9c, 0xc0, 0x1c, 0x93, 0x75, + 0x59, 0xcc, 0x3, 0xff, 0xc0, 0x2b, 0x2e, 0x40, + 0x1e, 0x14, 0x41, 0x0, 0x7f, 0xf0, 0x93, 0x14, + 0x3, 0x1e, 0x28, 0x7, 0xff, 0x99, 0x22, 0xd4, + 0x3, 0xf8, 0xb1, 0x4, 0x3, 0xff, 0x80, 0x46, + 0x82, 0x1, 0xa, 0x28, 0x80, 0x7f, 0xf8, 0xc5, + 0x26, 0x98, 0x40, 0x22, 0x7a, 0x83, 0x0, 0x93, + 0x10, 0x3, 0xfe, 0x14, 0xc2, 0x0, 0xc9, 0xa6, + 0x1, 0xff, 0xe3, 0x26, 0x86, 0x10, 0x8, 0x9f, + 0xa1, 0x55, 0x64, 0x1, 0x26, 0x20, 0x7, 0xf9, + 0x71, 0x0, 0x32, 0xfa, 0x80, 0x7f, 0xf1, 0x8e, + 0x37, 0xff, 0xfd, 0x4a, 0x1, 0x89, 0xf7, 0xff, + 0xf6, 0xc0, 0x33, 0xa1, 0xbf, 0x41, 0x80, 0x9, + 0x54, 0x40, 0x1, 0x7d, 0x40, 0xf, 0xc9, 0xa8, + 0x1, 0x93, 0x10, 0x3, 0xff, 0x90, 0x26, 0x1, + 0xff, 0xd1, 0x7c, 0x8b, 0xc8, 0x30, 0xe, 0x2b, + 0x52, 0x0, 0xb, 0x7b, 0x8, 0x6, 0x16, 0xf6, + 0x10, 0x9, 0x35, 0xc4, 0x3, 0xff, 0x9a, 0x4d, + 0x7b, 0xbf, 0xfc, 0x4c, 0x83, 0x0, 0xff, 0xe2, + 0x9d, 0xa8, 0x80, 0x49, 0x6c, 0x40, 0x2, 0x9b, + 0x40, 0xc, 0xbc, 0xc2, 0x1, 0xff, 0xce, 0x1e, + 0x62, 0x2f, 0xfe, 0x28, 0xb8, 0x7, 0xff, 0x18, + 0xea, 0x4c, 0x2, 0x29, 0xb4, 0x45, 0xb1, 0x0, + 0x42, 0xd2, 0xa0, 0x1f, 0xff, 0x92, 0x79, 0x50, + 0x8, 0x5a, 0xa8, 0xc2, 0x1, 0x1c, 0xd9, 0x80, + 0x7f, 0xff, 0x16, 0x5c, 0x80, 0x21, 0x10, 0x4, + 0x4f, 0xee, 0x40, 0x1f, 0xff, 0xe3, 0xb5, 0x20, + 0xf, 0x25, 0xc9, 0x80, 0x7f, 0xff, 0x85, 0x27, + 0x9c, 0x80, 0x3c, 0x91, 0x6a, 0x20, 0x1f, 0xfd, + 0x31, 0xe6, 0x22, 0xff, 0xe2, 0x8b, 0x80, 0x7f, + 0xf1, 0x45, 0x27, 0x6d, 0x88, 0x2, 0x22, 0x80, + 0x21, 0x5a, 0xc9, 0x41, 0x0, 0xff, 0xe8, 0x13, + 0x5e, 0xef, 0xff, 0x13, 0x20, 0xc0, 0x3f, 0xf8, + 0x22, 0x6f, 0x7f, 0x6c, 0x60, 0x1, 0x38, 0xcd, + 0xd6, 0x52, 0x88, 0x4, 0x4d, 0x7a, 0xe4, 0x1, + 0xff, 0xe8, 0x10, 0xc, 0x4b, 0x39, 0xf9, 0x8, + 0x20, 0x2, 0x59, 0xcc, 0x39, 0x80, 0x5, 0x6b, + 0x25, 0x4, 0x2, 0x38, 0xdc, 0x95, 0x20, 0xf, + 0xfe, 0x51, 0xc6, 0xff, 0xff, 0xf2, 0x7b, 0x3c, + 0xab, 0x3b, 0x69, 0x8c, 0x40, 0x2, 0x6f, 0x79, + 0x4c, 0x40, 0x1f, 0x89, 0xaf, 0x5c, 0xc0, 0x31, + 0xb5, 0x6e, 0xa9, 0xd0, 0x80, 0x3f, 0xf8, 0x1c, + 0xa6, 0x73, 0x9, 0x80, 0x7f, 0xf1, 0xc9, 0xb7, + 0x2a, 0x14, 0xc4, 0x2, 0x25, 0x9c, 0xfc, 0x84, + 0x10, 0xf, 0xfe, 0x11, 0xc6, 0x75, 0xc2, 0x10, + 0x4, 0x4b, 0x17, 0xf0, 0x60, 0x1f, 0xc6, 0xf7, + 0x99, 0x53, 0x8, 0x7, 0xff, 0x1c, 0x9b, 0xa0, + 0xc4, 0x95, 0xeb, 0x3b, 0x69, 0x8c, 0x40, 0x3f, + 0xf9, 0x22, 0x8f, 0x7b, 0xaa, 0x63, 0x24, 0x9f, + 0x83, 0x0, 0xff, 0xed, 0x93, 0xe7, 0x6d, 0x42, + 0x98, 0x80, 0x7f, 0xf4, 0xc9, 0x67, 0x36, 0xd8, + 0x80, 0x38, + + /* U+6559 "教" */ + 0x0, 0xff, 0xff, 0x80, 0x7f, 0xf5, 0x9a, 0xff, + 0xf5, 0x28, 0x7, 0xff, 0xc, 0x48, 0xc8, 0x40, + 0x3f, 0x13, 0xe7, 0x73, 0x72, 0x54, 0x40, 0x3f, + 0xfe, 0xc9, 0x19, 0x8d, 0xee, 0x52, 0x88, 0x6, + 0x7c, 0x31, 0x11, 0x18, 0x8, 0x80, 0x3f, 0xfe, + 0x82, 0xde, 0xc2, 0x1, 0x27, 0xa8, 0x80, 0x47, + 0x8a, 0x1, 0x93, 0xd0, 0x3, 0xff, 0xaa, 0xb5, + 0xdd, 0xfd, 0xf2, 0x80, 0x19, 0x6b, 0xfb, 0xbf, + 0x63, 0xb4, 0xda, 0x0, 0x44, 0xf2, 0xa0, 0x18, + 0x51, 0x44, 0x2, 0x2c, 0x40, 0xf, 0xfe, 0xc0, + 0x8f, 0xf0, 0x7, 0xf8, 0x47, 0xf1, 0x55, 0xb9, + 0x0, 0x49, 0x72, 0x60, 0x18, 0x5f, 0xc, 0x2, + 0x14, 0x32, 0x0, 0xff, 0xeb, 0x2d, 0x7f, 0xff, + 0xa5, 0x0, 0x32, 0xd7, 0xff, 0xdd, 0x68, 0x64, + 0x1, 0x1c, 0x4b, 0x8, 0x7, 0x26, 0x20, 0x7, + 0x16, 0xc4, 0x7f, 0xf2, 0xd4, 0xc0, 0x3f, 0xfb, + 0x9, 0x14, 0xa2, 0x0, 0x27, 0xf7, 0x20, 0xf, + 0x2f, 0xa8, 0x7, 0xa, 0x33, 0xbf, 0xff, 0x2f, + 0x98, 0x3, 0xff, 0x92, 0x20, 0x1e, 0x13, 0x0, + 0x85, 0x26, 0x98, 0x40, 0x2, 0xb1, 0x26, 0x1, + 0xf2, 0xfa, 0x80, 0x61, 0x46, 0x6f, 0xfe, 0xa, + 0x90, 0x7, 0x9, 0xb3, 0x6d, 0x60, 0xf, 0x14, + 0x6f, 0xff, 0xff, 0x3, 0xa5, 0x0, 0x32, 0x4f, + 0xfd, 0xd6, 0xc2, 0x1, 0x85, 0x6b, 0xbf, 0xf7, + 0x4a, 0xb7, 0x28, 0x7, 0x19, 0xaa, 0x67, 0xff, + 0x81, 0xec, 0x1, 0x85, 0xe2, 0x67, 0x31, 0x80, + 0x7d, 0xe2, 0x3f, 0xfc, 0x80, 0xf, 0xf0, 0x8f, + 0xfc, 0x66, 0xea, 0x40, 0xf, 0x12, 0x28, 0x80, + 0x7f, 0x8f, 0x14, 0x3, 0x2f, 0xa8, 0x7, 0xff, + 0x0, 0x9f, 0x3b, 0xbf, 0xf8, 0xb9, 0x28, 0x20, + 0x18, 0x52, 0x77, 0xbb, 0xfe, 0x93, 0x53, 0x0, + 0xfc, 0x78, 0xa0, 0x1f, 0xc2, 0x8a, 0x20, 0x10, + 0x9a, 0x88, 0x7, 0xff, 0x44, 0x9e, 0xf2, 0x10, + 0x40, 0x6, 0xfb, 0x6c, 0x40, 0x1f, 0xc7, 0x12, + 0xc2, 0x1, 0x23, 0x28, 0x80, 0x4f, 0x86, 0x1, + 0xf9, 0x34, 0xc0, 0x32, 0x69, 0x80, 0x7f, 0xf2, + 0x5, 0xab, 0x77, 0xdd, 0xb0, 0x82, 0x1, 0xc4, + 0xbd, 0xbb, 0xfa, 0xe1, 0xa3, 0xdc, 0x80, 0x23, + 0x89, 0x97, 0x38, 0x80, 0x9, 0x10, 0x40, 0x1e, + 0x3d, 0x70, 0xc, 0x98, 0x80, 0x1f, 0xfc, 0xb6, + 0x22, 0xf0, 0x80, 0x7f, 0x9, 0x17, 0xf9, 0x4f, + 0xbd, 0x48, 0x0, 0x4f, 0xee, 0x40, 0x98, 0x80, + 0x11, 0xda, 0x90, 0x6, 0x3b, 0x62, 0x0, 0x8b, + 0x10, 0x40, 0x3f, 0xf8, 0xc4, 0x8f, 0x74, 0x40, + 0x1e, 0x26, 0xad, 0xff, 0xf7, 0x64, 0x20, 0x80, + 0x42, 0x93, 0x97, 0xf, 0x3b, 0xac, 0xf8, 0x30, + 0xc, 0x98, 0x80, 0x11, 0xd5, 0x8, 0x0, 0x94, + 0xc2, 0x1, 0x15, 0x29, 0x0, 0x7f, 0xf0, 0x89, + 0xab, 0x7b, 0x6e, 0x14, 0xc4, 0x4, 0xda, 0xb7, + 0x52, 0xa4, 0x43, 0x45, 0x7b, 0xfc, 0x84, 0x12, + 0x5a, 0xcb, 0x62, 0x0, 0xe2, 0x32, 0x0, 0xf0, + 0xbe, 0xa0, 0x4, 0x4b, 0x46, 0x9c, 0xe2, 0x1, + 0x1d, 0x29, 0x0, 0x7f, 0xf0, 0xc9, 0xfd, 0xcc, + 0x0, 0x26, 0xd5, 0x9f, 0x92, 0xa4, 0x1, 0x1d, + 0x6d, 0xd4, 0x20, 0x92, 0xce, 0xea, 0x94, 0x80, + 0x3f, 0xf8, 0xc2, 0xdc, 0xa0, 0x11, 0x37, 0x4a, + 0x88, 0x4, 0x74, 0xc4, 0x1, 0xff, 0xc5, 0x15, + 0xac, 0xdd, 0x76, 0x4a, 0x98, 0x80, 0x7f, 0xf0, + 0x45, 0xa6, 0x98, 0x80, 0x21, 0x22, 0x19, 0x91, + 0xa, 0xb2, 0x8, 0x7, 0xf2, 0xcb, 0x8, 0x0, + 0x48, 0x80, 0x10, 0xac, 0x30, 0x80, 0x7f, 0xf2, + 0x44, 0x8c, 0x88, 0x66, 0x44, 0x2a, 0x99, 0x8e, + 0xe8, 0x94, 0x10, 0x8, 0x5a, 0xbb, 0x9f, 0xfb, + 0xb7, 0x59, 0x8b, 0xb5, 0x52, 0xf4, 0x80, 0x3f, + 0xc7, 0x6c, 0x40, 0x1e, 0x39, 0x84, 0x0, 0xff, + 0xe4, 0x24, 0xf7, 0xfb, 0xb7, 0x59, 0x8b, 0xb5, + 0x52, 0x65, 0x10, 0x75, 0x30, 0xf, 0x8, 0xc0, + 0x10, 0x88, 0x8c, 0xc8, 0xaa, 0x67, 0x9d, 0x20, + 0xf, 0xf1, 0x2a, 0x10, 0x7, 0xff, 0x49, 0xb8, + 0x80, 0x21, 0x11, 0x10, 0xcc, 0x8a, 0xa6, 0x63, + 0xc3, 0x20, 0x6, 0x15, 0xae, 0xe7, 0xfd, 0xdc, + 0xdc, 0xc5, 0xd5, 0x26, 0x1d, 0x4, 0x3, 0xf1, + 0xc7, 0xc1, 0x80, 0x7c, 0x71, 0xf0, 0x60, 0x1f, + 0xfc, 0x72, 0x7c, 0xff, 0xbb, 0x9b, 0xac, 0xc5, + 0xd5, 0x26, 0x50, 0xf4, 0x62, 0x1, 0x8d, 0x84, + 0x40, 0x1f, 0xfc, 0x93, 0x7c, 0xc3, 0x90, 0x4, + 0x6f, 0xc, 0x40, 0x11, 0x3e, 0xd2, 0x8, 0x7, + 0xff, 0xcc, 0x52, 0x33, 0x10, 0x60, 0x11, 0x35, + 0xec, 0x3c, 0xfc, 0x18, 0x4, 0x2b, 0x54, 0x62, + 0x0, 0xff, 0xf6, 0x92, 0xce, 0x7d, 0xb9, 0x80, + 0x44, 0xb5, 0x92, 0x82, 0x1, 0x13, 0xed, 0x20, + 0x80, 0x5, 0x27, 0x2d, 0xcc, 0x3, 0xff, 0xa4, + 0xe2, 0x1, 0xff, 0xc4, 0x13, 0x69, 0xce, 0xda, + 0x63, 0x10, 0x0, 0x9b, 0x57, 0xd2, 0x88, 0x7, + 0xe1, 0x5a, 0xa3, 0x98, 0x4, 0x29, 0x19, 0xd6, + 0xe8, 0x20, 0x1f, 0xfc, 0x21, 0x6b, 0xff, 0xfd, + 0x6c, 0x20, 0x11, 0x79, 0x0, 0x7f, 0x12, 0x53, + 0x18, 0x80, 0x44, 0xb1, 0x9f, 0x92, 0xa4, 0x1, + 0xff, 0xc1, 0x14, 0x8c, 0xda, 0x62, 0x0, 0x85, + 0x2b, 0x54, 0x40, 0x3f, 0xf8, 0x22, 0xfa, 0x80, + 0x1e, 0x11, 0x11, 0xa3, 0x57, 0x30, 0x80, 0x7f, + 0x1b, 0xf4, 0xaa, 0x3d, 0x6e, 0xa9, 0xcc, 0x40, + 0x3f, 0xf9, 0x24, 0xb3, 0xb9, 0x2a, 0xd3, 0xf2, + 0x82, 0x0, + + /* U+6570 "数" */ + 0x0, 0xff, 0xff, 0x80, 0x7f, 0xf3, 0x44, 0x88, + 0x20, 0x1f, 0x13, 0xe7, 0xfe, 0x94, 0x0, 0xfc, + 0x46, 0x61, 0x0, 0xff, 0xe0, 0xb, 0xe7, 0xf6, + 0xe5, 0x31, 0x0, 0x7f, 0xf5, 0x52, 0x7b, 0x9b, + 0x96, 0xa2, 0x1, 0xff, 0xc8, 0x16, 0xec, 0xc7, + 0x6c, 0xa0, 0x7, 0xf2, 0x69, 0x80, 0x91, 0x81, + 0x90, 0x7, 0xff, 0x55, 0x29, 0x88, 0x5, 0x6e, + 0x10, 0x3, 0xff, 0x8c, 0x91, 0x3, 0x0, 0x12, + 0x52, 0x0, 0x7e, 0x2d, 0x70, 0xc, 0x7a, 0xe0, + 0x1f, 0xfd, 0x73, 0x98, 0x50, 0x0, 0xb7, 0xb0, + 0x80, 0x7f, 0xf0, 0x8e, 0x25, 0x84, 0x9, 0xa6, + 0x46, 0x1, 0xfc, 0xe6, 0x40, 0x10, 0xaa, 0x10, + 0x7, 0xff, 0x60, 0x57, 0x98, 0x40, 0xd, 0xea, + 0x1, 0xff, 0xc1, 0x49, 0x62, 0x2, 0x7e, 0x94, + 0x0, 0xff, 0x26, 0x28, 0x6, 0x5c, 0x30, 0xf, + 0xfe, 0x99, 0x2c, 0x47, 0xb4, 0xc8, 0xd5, 0x7, + 0x22, 0x17, 0x62, 0x0, 0xc9, 0xf1, 0xc, 0x34, + 0x41, 0xb0, 0xdc, 0x47, 0xca, 0x40, 0x3, 0xd7, + 0x10, 0xc, 0xff, 0x11, 0xff, 0xcc, 0x52, 0x0, + 0xf3, 0x63, 0x3b, 0xf3, 0x29, 0x99, 0x59, 0xdf, + 0x31, 0x88, 0x6, 0x24, 0x77, 0x99, 0x50, 0xd1, + 0x9d, 0xff, 0x63, 0x1, 0x5a, 0x8, 0x7, 0x1a, + 0xbb, 0xff, 0xf2, 0xdb, 0x44, 0x3, 0xcb, 0x7b, + 0x77, 0xff, 0xc0, 0xa6, 0x30, 0xf, 0x85, 0x22, + 0xae, 0xff, 0xf8, 0x8a, 0x4a, 0xa2, 0x0, 0xc6, + 0xae, 0xff, 0xfc, 0x15, 0x20, 0xe, 0x24, 0x77, + 0xa7, 0x4, 0x3, 0xc2, 0x46, 0x89, 0xfe, 0x73, + 0x96, 0x30, 0xf, 0x85, 0x22, 0xe3, 0x49, 0xd5, + 0x13, 0xfc, 0x44, 0xb9, 0x20, 0xe, 0x6f, 0x88, + 0xff, 0xe0, 0x4e, 0x88, 0x6, 0x25, 0x88, 0xce, + 0x84, 0x1, 0xff, 0xc3, 0x14, 0x8c, 0xc4, 0x18, + 0x12, 0x19, 0x0, 0x63, 0x55, 0x19, 0x9a, 0x73, + 0xf2, 0x14, 0x80, 0x3c, 0xb2, 0xc2, 0x1, 0xe4, + 0xc3, 0x0, 0xff, 0x97, 0x4c, 0x3, 0x3e, 0x98, + 0x7, 0xff, 0x14, 0x51, 0xef, 0xed, 0xcc, 0x9, + 0xaf, 0x26, 0xc4, 0x3, 0x2f, 0x56, 0xea, 0x54, + 0x84, 0xde, 0xb7, 0x54, 0xc6, 0x4d, 0x2a, 0x1, + 0xf8, 0x55, 0x4, 0x3, 0xf8, 0x8d, 0xc0, 0x31, + 0x11, 0xc0, 0x3f, 0xf8, 0x22, 0x6d, 0x39, 0xf7, + 0x8, 0x20, 0x4d, 0x79, 0x28, 0x20, 0x1f, 0xf1, + 0x35, 0x6e, 0x42, 0x8, 0x10, 0xf2, 0x4c, 0x18, + 0x4, 0x2a, 0xa4, 0x0, 0x8f, 0x50, 0x3, 0xf9, + 0xf0, 0x80, 0x33, 0xe1, 0x0, 0x7f, 0xf0, 0x9, + 0xbe, 0x58, 0xc4, 0x46, 0xd5, 0xba, 0x94, 0x10, + 0xf, 0xfe, 0x31, 0xbd, 0xfe, 0x5e, 0x94, 0xa0, + 0x80, 0x47, 0x31, 0x78, 0x60, 0x12, 0x69, 0x80, + 0x7c, 0x78, 0xa0, 0x19, 0x31, 0x0, 0x3f, 0xf8, + 0x24, 0xfd, 0x2f, 0x17, 0xf9, 0x2a, 0x40, 0x1c, + 0x8f, 0x36, 0x40, 0x24, 0x9c, 0xe0, 0x1f, 0xc2, + 0x43, 0x88, 0x20, 0x11, 0x37, 0xb9, 0xa, 0xa1, + 0x0, 0x5, 0xac, 0xc0, 0x38, 0xed, 0xc4, 0x2, + 0x3c, 0x40, 0xf, 0xfe, 0x21, 0x34, 0x3a, 0x8, + 0x7, 0xc4, 0xf1, 0x4, 0x31, 0x39, 0xfb, 0x73, + 0x0, 0xff, 0xa, 0xd6, 0x52, 0xa3, 0x4c, 0x8c, + 0x2, 0x2b, 0x41, 0x0, 0xb, 0x51, 0x80, 0x47, + 0x6c, 0x20, 0x11, 0x22, 0x90, 0x7, 0xff, 0x3c, + 0x52, 0xe4, 0xc0, 0x24, 0xa6, 0x20, 0xf, 0xfe, + 0x21, 0x2d, 0x5c, 0xa0, 0x7, 0x8f, 0x50, 0x2, + 0x17, 0xa4, 0x4, 0xa6, 0x10, 0x8, 0xaa, 0x84, + 0x1, 0xff, 0xc4, 0x49, 0xef, 0xff, 0xee, 0xb6, + 0x10, 0xc, 0x93, 0xdf, 0xff, 0xfc, 0x99, 0x40, + 0xf, 0x93, 0x98, 0x40, 0x2, 0xfb, 0x1a, 0xe2, + 0x1, 0x1d, 0x29, 0x0, 0x7f, 0xf1, 0x5c, 0x48, + 0xbf, 0x8, 0x7, 0x84, 0x8b, 0xfe, 0x10, 0xf, + 0x9, 0x17, 0x8c, 0x5c, 0x3, 0xf2, 0x53, 0x10, + 0x0, 0x59, 0xd8, 0x40, 0x24, 0xa6, 0x20, 0xf, + 0xfe, 0x31, 0xc6, 0x6e, 0xf6, 0x59, 0x0, 0x62, + 0x7d, 0xdf, 0xfb, 0xe4, 0x80, 0x32, 0x5e, 0xef, + 0xb2, 0xc, 0x3, 0xf8, 0xea, 0x84, 0x1, 0xf0, + 0xb7, 0xb0, 0x80, 0x7f, 0xf3, 0x92, 0x20, 0x60, + 0x12, 0xc4, 0x98, 0x7, 0xf1, 0x2d, 0x90, 0x4, + 0x9a, 0x80, 0x1f, 0xfc, 0x72, 0x37, 0x10, 0xe, + 0x16, 0xa4, 0x0, 0xff, 0xe7, 0x13, 0xcb, 0x8, + 0x4, 0x2d, 0xae, 0x62, 0x1, 0xf2, 0x5c, 0x98, + 0x4, 0x78, 0x82, 0x1, 0xff, 0xc5, 0x26, 0xba, + 0x51, 0x0, 0xe1, 0x78, 0x62, 0x0, 0xff, 0xe5, + 0x8b, 0x4c, 0x10, 0x7, 0x9, 0xbc, 0xe7, 0x73, + 0x29, 0xd5, 0x53, 0x26, 0x10, 0x0, 0xb4, 0x39, + 0x0, 0x7f, 0xf0, 0xc5, 0x27, 0xe5, 0x4, 0x2, + 0x22, 0x8, 0x4, 0x93, 0xf0, 0x60, 0x1f, 0xfc, + 0xa4, 0xf8, 0x65, 0x6a, 0xdd, 0x5c, 0x31, 0x88, + 0x9, 0xac, 0x55, 0x18, 0x80, 0x24, 0x88, 0x20, + 0x7, 0xff, 0x8, 0x4d, 0xf6, 0xd8, 0x80, 0x22, + 0x6b, 0xcd, 0xa6, 0x20, 0x8, 0x9f, 0x65, 0x4, + 0x3, 0xff, 0x8c, 0x24, 0x8f, 0x35, 0x2a, 0x44, + 0x47, 0x9d, 0xd4, 0x20, 0x80, 0x7f, 0x24, 0x54, + 0x29, 0x0, 0x7e, 0x14, 0x8b, 0xfc, 0x83, 0x0, + 0x89, 0x6f, 0x25, 0x4, 0x12, 0x7e, 0xc, 0x2, + 0x16, 0xbd, 0x84, 0x10, 0xf, 0xfe, 0x50, 0x9a, + 0xc5, 0x6f, 0x64, 0x20, 0x80, 0x4, 0xd9, 0x88, + 0x40, 0x1, 0x47, 0xad, 0xd5, 0xba, 0x21, 0x67, + 0x3a, 0xdd, 0x4, 0x2, 0x15, 0xac, 0xa4, 0x10, + 0xf, 0x13, 0xed, 0x20, 0x80, 0x46, 0xf7, 0xf6, + 0xe8, 0x20, 0x1f, 0x89, 0x19, 0xe2, 0xaf, 0x3b, + 0xfb, 0x29, 0xd4, 0x80, 0x2, 0x4b, 0x17, 0xf9, + 0x32, 0xbd, 0xd5, 0x39, 0x88, 0x0, 0x92, 0x2e, + 0xd4, 0xc6, 0x1, 0x89, 0x67, 0x3e, 0x94, 0x40, + 0x3f, 0xe1, 0x5b, 0xca, 0x62, 0x0, 0x85, 0x22, + 0xfe, 0x94, 0x40, 0x38, 0xc3, 0x25, 0xd5, 0xc, + 0x40, 0x2, 0x68, 0xd1, 0x5b, 0xdb, 0x4e, 0x82, + 0x1, 0xc4, 0xb1, 0x9f, 0x71, 0xa, 0x95, 0x10, + 0x0, 0xa4, 0x5f, 0x6d, 0x31, 0x88, 0x7, 0xff, + 0x14, 0x96, 0x77, 0x52, 0xa4, 0x2, 0xd5, 0x6a, + 0x20, 0x1c, 0x29, 0x17, 0x10, 0x9b, 0xcd, 0xfe, + 0xcb, 0x97, 0x52, 0x0, 0xff, 0xe1, 0x8a, 0x3b, + 0x95, 0xaf, 0x73, 0x7a, 0xdd, 0x4, 0x3, 0xff, + 0x9c, 0x4d, 0x5b, 0xdf, 0x28, 0x20, 0x18, + + /* U+6587 "文" */ + 0x0, 0xff, 0xff, 0x80, 0x7f, 0xf9, 0x92, 0x7f, + 0xfa, 0x50, 0x3, 0xff, 0xfe, 0x1, 0xff, 0xff, + 0x0, 0xff, 0xff, 0x80, 0x7f, 0xff, 0xc0, 0x3f, + 0xfb, 0x86, 0x1, 0xc6, 0x1, 0xff, 0xde, 0x27, + 0xdf, 0xff, 0xfe, 0xb5, 0xa8, 0x7, 0x2d, 0xff, + 0xff, 0xf5, 0xed, 0x80, 0x3f, 0xff, 0xe0, 0x1f, + 0xfc, 0x42, 0x6f, 0xdd, 0xff, 0xa9, 0x88, 0x3, + 0xa, 0xd6, 0x6e, 0xff, 0xf5, 0x72, 0x10, 0x3, + 0x85, 0x6b, 0x37, 0x7f, 0xe9, 0x70, 0xe, 0x12, + 0x2f, 0xfe, 0x2, 0xdd, 0x18, 0x4, 0x29, 0x8e, + 0x45, 0xff, 0xd4, 0x36, 0xc4, 0x0, 0xc4, 0xd2, + 0xa6, 0x45, 0xff, 0xc0, 0x10, 0xf, 0xfe, 0x39, + 0x35, 0x20, 0x4, 0x2d, 0xca, 0x1, 0xff, 0xd2, + 0x17, 0x94, 0x0, 0xc7, 0x54, 0x30, 0xf, 0xfe, + 0xb8, 0xb7, 0x28, 0x6, 0x58, 0x72, 0x0, 0xff, + 0xe7, 0x9c, 0xd9, 0x80, 0x64, 0xa6, 0x20, 0xf, + 0xfe, 0xd2, 0xc4, 0x8, 0x2, 0x28, 0x95, 0x10, + 0xf, 0xfe, 0x58, 0xb4, 0x39, 0x0, 0x44, 0xf0, + 0xc2, 0x1, 0xff, 0xdc, 0x27, 0x95, 0x10, 0x9, + 0x2e, 0x10, 0x3, 0xff, 0x92, 0x97, 0x8, 0x1, + 0x92, 0x24, 0xc0, 0x3f, 0xfc, 0x9, 0x12, 0x60, + 0x10, 0xb4, 0xc8, 0xc0, 0x3f, 0xf8, 0xa9, 0x32, + 0x51, 0x0, 0x8a, 0x25, 0x44, 0x3, 0xff, 0xc4, + 0x4f, 0xd0, 0x40, 0x11, 0x36, 0xca, 0x0, 0x7f, + 0xf0, 0x52, 0x69, 0x88, 0x2, 0x27, 0xe7, 0x20, + 0xf, 0xff, 0x31, 0x3f, 0x39, 0x0, 0x42, 0xd5, + 0x45, 0x10, 0xf, 0x85, 0x6a, 0x8c, 0x20, 0x11, + 0x3f, 0x41, 0x80, 0x7f, 0xfa, 0x8e, 0x39, 0xcc, + 0x2, 0x15, 0xac, 0x83, 0x10, 0x1, 0xc6, 0xd2, + 0x88, 0x4, 0x51, 0xd0, 0x60, 0x1f, 0xfe, 0xe3, + 0x8d, 0xa5, 0x10, 0x8, 0x9f, 0x75, 0x79, 0xae, + 0x60, 0x10, 0xad, 0x63, 0x98, 0x7, 0xff, 0xc8, + 0x56, 0xb5, 0xcc, 0x2, 0x13, 0x43, 0x10, 0x8, + 0xe3, 0x29, 0x44, 0x3, 0xff, 0xee, 0x3a, 0xc4, + 0x1, 0xfc, 0x4c, 0x20, 0x1f, 0xff, 0x72, 0x6a, + 0xdd, 0x52, 0x90, 0x7, 0xf1, 0x2c, 0xee, 0xa9, + 0x88, 0x3, 0xff, 0xda, 0x4b, 0x17, 0xba, 0x95, + 0x20, 0x8, 0x4d, 0xef, 0x7b, 0x25, 0x4, 0x3, + 0x12, 0xce, 0xf5, 0xc2, 0x90, 0x7, 0xff, 0x88, + 0x4d, 0xa7, 0x3b, 0x69, 0xd0, 0x80, 0x21, 0x37, + 0xbf, 0xc8, 0x42, 0x13, 0x6b, 0xfc, 0x84, 0x10, + 0xc, 0x28, 0xf5, 0xbd, 0x92, 0xc8, 0x20, 0x1f, + 0xfd, 0x51, 0x35, 0x8a, 0xce, 0xe6, 0x4b, 0x18, + 0x80, 0x42, 0x6d, 0x39, 0xf9, 0x8, 0x20, 0x1f, + 0x84, 0xde, 0xfb, 0x69, 0xcc, 0x40, 0x30, 0x9b, + 0x4d, 0xf7, 0x36, 0xa1, 0x90, 0x80, 0x3f, 0xf8, + 0xa2, 0x48, 0xd1, 0x37, 0xbd, 0xcc, 0xa7, 0x53, + 0x10, 0xc, 0x28, 0xd3, 0x9f, 0x92, 0xc6, 0x20, + 0x1f, 0xfc, 0x52, 0x58, 0xce, 0xda, 0x74, 0x20, + 0xe, 0x12, 0x57, 0x9b, 0xdf, 0xec, 0xa9, 0x76, + 0x43, 0x10, 0xe, 0x38, 0xcd, 0xb9, 0x76, 0x42, + 0x10, 0xc, 0x24, 0xaf, 0x59, 0xdc, 0xb9, 0x63, + 0x10, 0xf, 0xfe, 0x79, 0x2c, 0x5e, 0xf6, 0xd4, + 0x31, 0x88, 0x7, 0x84, 0xd5, 0xa2, 0x6f, 0xa4, + 0xc0, 0x31, 0xc7, 0x39, 0x0, 0x44, 0x8d, 0x15, + 0x9b, 0xdb, 0x50, 0xa6, 0x20, 0x1f, 0xfd, 0xa1, + 0x25, 0x79, 0xce, 0xe6, 0xdc, 0xc3, 0x21, 0x8, + 0x0, 0xe3, 0xe0, 0xc0, 0x3c, 0x71, 0xfb, 0xdf, + 0xb7, 0x2e, 0xa6, 0x40, 0x1f, 0xfe, 0x81, 0x24, + 0x67, 0x9b, 0xde, 0xfe, 0xc7, 0x20, 0xe, + + /* U+6599 "料" */ + 0x0, 0xff, 0xe3, 0x11, 0xa2, 0x46, 0x40, 0x1f, + 0xfd, 0xf2, 0x45, 0x5c, 0x62, 0x1, 0xff, 0xd3, + 0x3a, 0xdb, 0xbb, 0xa8, 0x80, 0x3f, 0xfb, 0xa4, + 0xb3, 0x55, 0x5d, 0x10, 0x7, 0xff, 0x1c, 0x49, + 0x10, 0x62, 0x1, 0xff, 0xc9, 0x14, 0x65, 0x43, + 0x10, 0xf, 0xff, 0x5a, 0xde, 0xdd, 0xbd, 0x84, + 0x3, 0xff, 0x8e, 0x2f, 0x13, 0x57, 0xb0, 0x60, + 0x1e, 0x26, 0xbe, 0xe5, 0xba, 0x8, 0x7, 0xff, + 0x6d, 0x7d, 0x0, 0x7, 0x6e, 0x20, 0x1f, 0xfc, + 0x64, 0xd3, 0x0, 0xb, 0xd1, 0x80, 0x71, 0x26, + 0xa8, 0x89, 0x22, 0xff, 0x21, 0x4, 0x3, 0xff, + 0xb0, 0x9a, 0x80, 0x3, 0xa7, 0x10, 0xf, 0xfe, + 0x22, 0x62, 0x80, 0x5, 0xe8, 0xc0, 0x3c, 0x4d, + 0x7f, 0x90, 0x82, 0x2, 0x6f, 0x7f, 0x6e, 0x60, + 0x1f, 0xfd, 0x51, 0x4c, 0x30, 0x1, 0xea, 0x0, + 0x7f, 0xf0, 0xcf, 0x5c, 0x40, 0x5e, 0x8c, 0x3, + 0xfc, 0x26, 0xf7, 0xf9, 0x6, 0x20, 0x29, 0x19, + 0x4a, 0x1, 0xff, 0xd4, 0x24, 0x40, 0x80, 0x17, + 0x10, 0x3, 0xff, 0x82, 0x76, 0x82, 0x2, 0xf4, + 0x60, 0x1f, 0xfc, 0x31, 0x37, 0xcc, 0x4a, 0x88, + 0x9b, 0x94, 0x3, 0xff, 0xaa, 0x7a, 0xa0, 0x1, + 0x53, 0x10, 0xf, 0xf8, 0xed, 0x48, 0x9, 0xa8, + 0xc0, 0x3f, 0xf9, 0x4, 0xd5, 0xfe, 0x94, 0x0, + 0xff, 0xeb, 0xb6, 0xab, 0x3d, 0x20, 0x7, 0xff, + 0x7, 0x91, 0xb, 0x74, 0x60, 0x1f, 0xfc, 0xc1, + 0x10, 0x7, 0xff, 0x54, 0x47, 0x13, 0xdc, 0x4b, + 0x90, 0xb, 0x88, 0x7, 0x98, 0x49, 0xe2, 0xad, + 0xcc, 0x47, 0x80, 0x31, 0x22, 0x8, 0x3, 0xff, + 0xc4, 0xb7, 0xdd, 0xff, 0xc0, 0xb6, 0x10, 0x8, + 0x9e, 0xfb, 0xbf, 0xf8, 0x14, 0xc2, 0x71, 0xf7, + 0x6d, 0xeb, 0x85, 0x20, 0xf, 0xff, 0xf8, 0x6, + 0x1c, 0x54, 0x10, 0x14, 0x7a, 0xde, 0xb8, 0x41, + 0x0, 0xff, 0xec, 0x2d, 0x7f, 0xff, 0xa9, 0x40, + 0x3c, 0x2b, 0x5d, 0xff, 0xff, 0x5b, 0x9, 0x24, + 0x5f, 0x6d, 0x39, 0x88, 0xa, 0x3d, 0xfe, 0x39, + 0x80, 0x7f, 0xf8, 0x17, 0x94, 0x3, 0xc2, 0xb7, + 0x4c, 0x40, 0x1f, 0xfc, 0x52, 0x58, 0xcf, 0xb7, + 0x31, 0x1, 0x0, 0x8, 0x7, 0xff, 0x78, 0x5b, + 0x90, 0x3, 0xf8, 0x52, 0x7e, 0xc, 0x3, 0xff, + 0x8e, 0x29, 0x19, 0x8b, 0xb7, 0x39, 0x0, 0x7f, + 0xf7, 0x4a, 0x6d, 0x0, 0x8c, 0xc2, 0x1, 0x12, + 0xa8, 0xc0, 0x9f, 0x69, 0x44, 0x3, 0xff, 0x90, + 0x48, 0x82, 0x0, 0xff, 0xef, 0x24, 0x31, 0x1, + 0xd4, 0xa0, 0x7, 0x14, 0xf4, 0x18, 0xa, 0xd5, + 0x18, 0x80, 0x3f, 0xfb, 0x22, 0x56, 0xcf, 0x13, + 0x57, 0x9b, 0x8e, 0x60, 0x1f, 0xf1, 0x3c, 0x28, + 0x82, 0x4b, 0x30, 0x3, 0xe1, 0x27, 0xf7, 0x20, + 0x2, 0x4f, 0x39, 0x0, 0x7f, 0xf0, 0xc4, 0x8d, + 0x15, 0x98, 0xf1, 0x35, 0x79, 0xb9, 0x4, 0x1, + 0x91, 0xe6, 0x1d, 0x95, 0xc, 0x8f, 0x18, 0x3, + 0xf8, 0x56, 0x60, 0xc0, 0x5b, 0xd4, 0x40, 0x3f, + 0xe3, 0x89, 0x61, 0x0, 0x1e, 0x21, 0x99, 0x59, + 0xe2, 0x6a, 0xed, 0x9b, 0xdf, 0xee, 0xdc, 0xba, + 0x99, 0x43, 0xb2, 0xa1, 0x90, 0x80, 0x78, 0x4d, + 0x59, 0xe2, 0x6a, 0xf3, 0x69, 0x40, 0x3e, 0x14, + 0xbb, 0x20, 0x0, 0x9a, 0x90, 0x3, 0xff, 0x86, + 0x91, 0x6e, 0xeb, 0xa6, 0x1b, 0x89, 0x87, 0x65, + 0x44, 0x19, 0x8, 0x4, 0x24, 0x66, 0x45, 0x67, + 0x89, 0xab, 0xca, 0x62, 0x0, 0x85, 0xfe, 0xa6, + 0x1d, 0x95, 0xc, 0x84, 0x3, 0xc2, 0xb7, 0x4a, + 0x20, 0x2b, 0x12, 0x60, 0x1f, 0xfc, 0x51, 0x58, + 0x82, 0x8, 0x16, 0x52, 0xa9, 0x9e, 0x26, 0xaf, + 0x37, 0xbf, 0xdd, 0xb9, 0x8b, 0xa9, 0x87, 0x65, + 0x43, 0x7e, 0x0, 0xff, 0xe5, 0xae, 0x20, 0x80, + 0xe, 0x61, 0x44, 0x3, 0xff, 0x9c, 0x8f, 0x54, + 0x98, 0x76, 0x54, 0x32, 0x10, 0xf, 0xfe, 0xe2, + 0x44, 0x10, 0xe3, 0x9c, 0x80, 0x3f, 0xff, 0xe0, + 0x1f, 0xb, 0x5e, 0x39, 0x0, 0x7f, 0xff, 0xc0, + 0x3f, 0xff, 0xe0, 0x1f, 0xff, 0xf0, 0xf, 0xff, + 0xf8, 0x7, 0xff, 0x9c, + + /* U+65B0 "新" */ + 0x0, 0xff, 0xe4, 0xad, 0x77, 0x6b, 0x62, 0x0, + 0xff, 0xf0, 0x12, 0x34, 0x41, 0x8c, 0x3, 0xff, + 0x9e, 0x62, 0x3c, 0xe2, 0x1, 0xff, 0xd8, 0x23, + 0x56, 0x8a, 0xce, 0xfd, 0xb9, 0x77, 0x4e, 0xdb, + 0x98, 0x7, 0xff, 0x98, 0x51, 0xd9, 0x4c, 0x88, + 0x8a, 0xd1, 0x37, 0x9b, 0xfe, 0xdc, 0xa9, 0x75, + 0x31, 0x0, 0x9, 0x23, 0x45, 0xc3, 0x18, 0x7, + 0xc7, 0x1b, 0xdd, 0xff, 0xc2, 0x94, 0x0, 0xc7, + 0x19, 0xdd, 0xff, 0xc2, 0x94, 0x2, 0xca, 0x9a, + 0xcd, 0xd5, 0xd4, 0xbb, 0x21, 0x90, 0x0, 0x8d, + 0x15, 0xe2, 0xaf, 0x7b, 0x9b, 0x72, 0xea, 0x62, + 0x1, 0xf9, 0xc4, 0xc4, 0x7f, 0xf8, 0x40, 0x1f, + 0x84, 0x7f, 0xf8, 0x66, 0x1, 0xfc, 0x48, 0xd1, + 0x35, 0x7b, 0xdf, 0xed, 0xcb, 0xa8, 0x75, 0x42, + 0x10, 0xf, 0xfe, 0x22, 0x4f, 0x7f, 0xd9, 0x2a, + 0x84, 0x91, 0xbf, 0xff, 0xfc, 0x2a, 0x63, 0x45, + 0x7a, 0xdf, 0xfd, 0x48, 0x1, 0xf0, 0xac, 0x4b, + 0xb2, 0xa1, 0x8, 0x7, 0xff, 0x58, 0x81, 0x90, + 0x92, 0xa8, 0x40, 0x1f, 0xfc, 0x4, 0xf6, 0x34, + 0x54, 0x33, 0x0, 0x7f, 0xfb, 0x45, 0xec, 0xc0, + 0x4, 0xb4, 0x60, 0x1f, 0xe4, 0xe4, 0x0, 0x96, + 0x58, 0x40, 0x3f, 0xfd, 0xc2, 0x88, 0x20, 0x1, + 0x22, 0x88, 0x7, 0xc2, 0xbe, 0xa2, 0x2, 0xd2, + 0xa0, 0x1f, 0xfe, 0x91, 0x1f, 0xee, 0x72, 0x35, + 0x40, 0x21, 0x1f, 0x12, 0x90, 0x98, 0x9b, 0x69, + 0x8, 0xfe, 0x0, 0xff, 0xf0, 0xad, 0xf7, 0x7d, + 0xb2, 0xa4, 0x6a, 0xf3, 0x9d, 0xde, 0xdb, 0x85, + 0x31, 0x37, 0xbe, 0xef, 0xd4, 0xc2, 0x1, 0xe1, + 0x7c, 0xff, 0xff, 0xe8, 0x4a, 0x0, 0x61, 0x23, + 0x3f, 0xfe, 0x20, 0x80, 0x78, 0x48, 0xcf, 0xff, + 0x84, 0x46, 0x20, 0x1f, 0xfd, 0xf4, 0x8c, 0xcf, + 0xfe, 0x24, 0x20, 0x6, 0x39, 0xfc, 0xcf, 0xfe, + 0x14, 0xa8, 0x4, 0x60, 0x10, 0xb5, 0xff, 0xff, + 0xdd, 0x26, 0x1, 0x8e, 0x37, 0xff, 0xe9, 0x40, + 0xf, 0xff, 0x28, 0x80, 0x63, 0x17, 0x0, 0xff, + 0x84, 0x1c, 0x3, 0xc6, 0x1, 0xff, 0xd2, 0x10, + 0xf, 0xfe, 0x73, 0x80, 0x80, 0x6f, 0x10, 0xf, + 0xfe, 0xb2, 0xd7, 0xff, 0xff, 0xf, 0xa5, 0x0, + 0x31, 0xc6, 0xff, 0xff, 0xf0, 0xad, 0x84, 0xc, + 0x3, 0x8, 0x8c, 0x3, 0xff, 0xac, 0x26, 0x45, + 0xff, 0xc2, 0x10, 0xf, 0xc2, 0x22, 0x2f, 0xfe, + 0x10, 0x99, 0x88, 0x40, 0x33, 0x98, 0x80, 0x7f, + 0xf5, 0x92, 0x77, 0x7f, 0xf8, 0x19, 0x8, 0x20, + 0x1e, 0x27, 0xad, 0xdf, 0xfe, 0x15, 0x28, 0xf2, + 0x80, 0x42, 0x4c, 0x1, 0xff, 0xe3, 0x14, 0xbb, + 0x28, 0x80, 0x78, 0x9a, 0xf6, 0x98, 0x80, 0x3f, + 0xf8, 0xa, 0x62, 0x1, 0x2f, 0x90, 0x7, 0xff, + 0x84, 0x9a, 0xa8, 0xa2, 0x2, 0x30, 0x7, 0x8, + 0x89, 0x67, 0x75, 0x2a, 0x40, 0x1f, 0x1f, 0xa8, + 0x4, 0x24, 0xa2, 0x1, 0xff, 0xdf, 0x38, 0xf9, + 0x41, 0x2, 0x7a, 0x85, 0x0, 0xc7, 0x3b, 0x6c, + 0x40, 0x4d, 0x59, 0x88, 0x41, 0x0, 0x1d, 0x38, + 0x80, 0x49, 0x86, 0x1, 0xff, 0xdd, 0x38, 0xcc, + 0x39, 0x0, 0x12, 0x7e, 0x10, 0x3, 0xf0, 0xa4, + 0xe5, 0xb9, 0x80, 0x9b, 0xd5, 0xaa, 0xa9, 0xc4, + 0x2, 0x5e, 0x50, 0xf, 0xfe, 0xd0, 0xa4, 0x66, + 0x1c, 0xc0, 0x2, 0xb5, 0x46, 0x20, 0xf, 0xfe, + 0x8, 0xa4, 0x6d, 0xba, 0x35, 0xd8, 0x7d, 0xc4, + 0x0, 0x2d, 0xc8, 0x1, 0xff, 0xd8, 0x15, 0xaf, + 0xb7, 0x30, 0x0, 0xa4, 0xe5, 0x28, 0x80, 0x7f, + 0xf1, 0x85, 0x22, 0xe5, 0xda, 0x54, 0x40, 0x2, + 0xfa, 0x80, 0x1f, 0xfd, 0x91, 0x58, 0x82, 0x9, + 0x2d, 0x65, 0xb1, 0x0, 0x7f, 0xf3, 0x9, 0xfa, + 0x8, 0x2, 0x38, 0x82, 0x0, 0x7f, 0xf7, 0x9, + 0xaf, 0xb6, 0x94, 0x80, 0x3f, 0xf9, 0xa9, 0x3f, + 0x6, 0x1, 0x1c, 0x73, 0x8, 0x7, 0xff, 0xf9, + 0x2e, 0xc8, 0x22, 0x5a, 0xd7, 0x20, 0xf, 0xff, + 0x8b, 0x5f, 0xfe, 0xc7, 0x20, 0xf, 0x89, 0xaf, + 0xfd, 0x4a, 0x20, 0x1f, 0xfc, 0xb6, 0xbf, 0xfd, + 0x8e, 0x20, 0x1f, 0xe0, + + /* U+65E0 "无" */ + 0x0, 0xff, 0xff, 0x80, 0x7f, 0xf2, 0x56, 0xff, + 0xff, 0xfe, 0xf4, 0xa0, 0x1f, 0xff, 0xf0, 0xf, + 0xfe, 0x82, 0xdf, 0xff, 0xff, 0x3f, 0x18, 0x80, + 0x32, 0x4f, 0x7f, 0xff, 0xf4, 0xa9, 0x40, 0x3f, + 0xfc, 0x42, 0x1, 0xe3, 0x10, 0xf, 0xff, 0xf8, + 0x6, 0x30, 0xf, 0xff, 0xf8, 0x7, 0xf8, 0x40, + 0x38, 0x40, 0x3f, 0xff, 0xe0, 0x19, 0xc0, 0x40, + 0x31, 0x88, 0x7, 0xff, 0xfc, 0x2, 0x13, 0x0, + 0xc2, 0x27, 0x0, 0xff, 0xf0, 0x8, 0x88, 0xbf, + 0xfa, 0x66, 0x4c, 0x1, 0x8c, 0x1c, 0x8b, 0xff, + 0xb0, 0x20, 0x1e, 0x39, 0xcd, 0xdf, 0xfe, 0x9e, + 0x41, 0x80, 0x62, 0x7b, 0xdd, 0xff, 0xec, 0x53, + 0x8, 0x7, 0xff, 0xfc, 0x3, 0xff, 0x88, 0x71, + 0xbf, 0xff, 0xfd, 0x2c, 0x71, 0x0, 0xc9, 0x3d, + 0xff, 0xff, 0xd9, 0xb6, 0x10, 0xf, 0xfe, 0xc1, + 0x5a, 0x88, 0x4, 0x58, 0x73, 0xbf, 0xfa, 0xd8, + 0x40, 0x3f, 0xfe, 0xe2, 0x88, 0x20, 0x8, 0x51, + 0xc, 0x1, 0xff, 0xff, 0x17, 0xd3, 0x0, 0xc9, + 0x86, 0x1, 0xff, 0xff, 0x16, 0xa4, 0x0, 0xc9, + 0x88, 0x1, 0xff, 0xff, 0x48, 0x93, 0x0, 0x85, + 0x7d, 0x84, 0x3, 0xff, 0xfa, 0x73, 0x26, 0x10, + 0x8, 0x9a, 0x10, 0x3, 0xff, 0xf8, 0x2b, 0x5a, + 0xc4, 0x1, 0x13, 0xf4, 0x10, 0x7, 0xff, 0x69, + 0x66, 0xe1, 0x8c, 0x40, 0x3f, 0xf9, 0xa2, 0xb3, + 0x94, 0xa2, 0x1, 0x13, 0xf4, 0x18, 0x7, 0xff, + 0x6c, 0x4c, 0x91, 0xe7, 0x29, 0x84, 0x3, 0xff, + 0x8e, 0x29, 0x17, 0xf4, 0xc4, 0x1, 0xa, 0xd6, + 0x41, 0x80, 0x7f, 0xf7, 0x85, 0xc0, 0x38, 0xc4, + 0x3, 0xff, 0x84, 0x28, 0xd3, 0x9f, 0x6e, 0x82, + 0x1, 0x12, 0xd6, 0x52, 0x88, 0x7, 0xff, 0x15, + 0xc0, 0x3f, 0xf9, 0xab, 0xc6, 0x1, 0x88, 0x40, + 0x3f, 0x9, 0xab, 0xce, 0x77, 0x2e, 0x58, 0xc4, + 0x2, 0x25, 0x9c, 0xda, 0x52, 0x0, 0xff, 0xe0, + 0x97, 0x88, 0x6, 0x2d, 0x64, 0x33, 0xff, 0xe3, + 0xa2, 0xc4, 0x18, 0x3, 0x1f, 0x30, 0x6, 0x37, + 0xcf, 0xec, 0xa8, 0x63, 0x10, 0xc, 0x4b, 0x17, + 0xdb, 0x4c, 0x60, 0x1f, 0xfc, 0x51, 0x44, 0x10, + 0x4, 0x29, 0x17, 0x99, 0xff, 0xc7, 0xba, 0x73, + 0x0, 0xc7, 0x6a, 0x40, 0x18, 0xda, 0x18, 0x40, + 0x22, 0x46, 0x8a, 0xde, 0xda, 0x74, 0x10, 0xf, + 0xfe, 0x51, 0xc7, 0xd3, 0xa9, 0x90, 0x88, 0x3, + 0xff, 0x90, 0x22, 0x23, 0x58, 0xcd, 0x72, 0x0, + 0xf0, 0xa4, 0xe6, 0xf7, 0xed, 0xcb, 0xa9, 0x8, + 0x7, 0xff, 0x44, 0x96, 0x2b, 0x37, 0xb9, 0xff, + 0xff, 0xc8, 0xee, 0x6e, 0x53, 0x98, 0x80, 0x60, + + /* U+65E5 "日" */ + 0x0, 0xff, 0xfa, 0x2d, 0xff, 0xff, 0xfb, 0x31, + 0x84, 0x3, 0xff, 0xf6, 0x2d, 0x5b, 0xbf, 0xfd, + 0xea, 0x51, 0x0, 0xff, 0xe1, 0x98, 0xb1, 0x17, + 0xff, 0x79, 0x8c, 0x3, 0xff, 0xfe, 0x1, 0xff, + 0xff, 0x0, 0xff, 0xff, 0x80, 0x7f, 0xff, 0xc0, + 0x3f, 0xff, 0xe0, 0x1f, 0xfc, 0x72, 0x7c, 0xff, + 0xff, 0xef, 0x63, 0x8, 0x7, 0xff, 0xfc, 0x2, + 0x15, 0x9c, 0xcf, 0xfe, 0xf4, 0xa8, 0x7, 0xff, + 0x10, 0xc9, 0x4c, 0xff, 0xfb, 0xca, 0x62, 0x1, + 0xff, 0xff, 0x0, 0xff, 0xff, 0x80, 0x7f, 0xff, + 0xc0, 0x3f, 0xff, 0xe0, 0x1f, 0xff, 0xf0, 0xf, + 0xfe, 0x31, 0x93, 0x11, 0x7f, 0xf7, 0x94, 0xc0, + 0x3f, 0xf8, 0x82, 0xb5, 0xbb, 0xff, 0xde, 0x95, + 0x10, 0xf, 0xff, 0xf8, 0x4, 0x4f, 0x9f, 0xff, + 0xfd, 0xec, 0x61, 0x0, 0xff, 0xf8, 0x89, 0x17, + 0x31, 0x80, 0x0, + + /* U+65F6 "时" */ + 0x0, 0xff, 0xf9, 0x89, 0x17, 0x8, 0x7, 0xff, + 0xfc, 0xe, 0x73, 0x77, 0x5a, 0x80, 0x7f, 0xff, + 0xc0, 0x3f, 0xf9, 0x66, 0xf7, 0x99, 0xff, 0xcd, + 0x95, 0x0, 0xff, 0xf5, 0xfa, 0x99, 0xff, 0xf3, + 0x48, 0xc0, 0x3f, 0xfe, 0x2, 0xb5, 0x99, 0xff, + 0xc1, 0x83, 0x0, 0xff, 0xfb, 0x19, 0x31, 0x9f, + 0xff, 0x4, 0x9c, 0x3, 0xf8, 0x47, 0xff, 0xa0, + 0xe2, 0x1, 0xc2, 0x62, 0x3f, 0xe0, 0xf, 0xfe, + 0xc1, 0xc7, 0xf7, 0x7f, 0xf3, 0xad, 0x84, 0x3, + 0x24, 0xf7, 0x7f, 0x42, 0x0, 0x7f, 0xff, 0xc0, + 0x3f, 0xfc, 0x7, 0x3f, 0xdd, 0xff, 0xce, 0xb6, + 0x10, 0xc, 0xb3, 0xdd, 0xfd, 0x28, 0x1, 0xff, + 0xd9, 0x11, 0xff, 0xe7, 0xb8, 0x80, 0x78, 0xc4, + 0x7f, 0x80, 0x3f, 0xe3, 0x10, 0xf, 0xfe, 0x8, + 0x98, 0x7, 0xff, 0x10, 0x91, 0x4c, 0x40, 0x3f, + 0xfc, 0x42, 0xd9, 0xff, 0xff, 0xc0, 0xe9, 0x40, + 0xf, 0xfe, 0x2, 0x4f, 0x6d, 0xd6, 0xda, 0x8, + 0x7, 0xff, 0xf9, 0x29, 0x88, 0x0, 0x2b, 0x56, + 0x82, 0x1, 0xff, 0xde, 0x27, 0xcf, 0xff, 0xfe, + 0xd, 0x20, 0x7, 0xff, 0x4, 0xe3, 0x98, 0x80, + 0x2, 0xb5, 0x68, 0x20, 0x1f, 0xff, 0xd3, 0x99, + 0x30, 0x80, 0x5, 0x6a, 0xd0, 0x40, 0x3f, 0xff, + 0xa9, 0x34, 0xa2, 0x0, 0x15, 0xa8, 0x40, 0xf, + 0xff, 0xf2, 0x5d, 0x90, 0x2, 0x16, 0x98, 0x30, + 0xf, 0xff, 0xe8, 0xac, 0xc1, 0x80, 0x44, 0xf0, + 0xc2, 0x1, 0xff, 0xfd, 0x27, 0xf8, 0x56, 0x9c, + 0xa6, 0x10, 0xf, 0xfe, 0xa9, 0x8b, 0x88, 0xff, + 0xf0, 0x4c, 0x3, 0xff, 0x9a, 0x6f, 0x52, 0xc6, + 0x20, 0x1f, 0xfd, 0x71, 0x6b, 0xee, 0xff, 0xe0, + 0xca, 0x0, 0x7f, 0xff, 0xc0, 0x3f, 0xf8, 0x46, + 0x1, 0xff, 0xf0, 0x27, 0xcf, 0xff, 0xfe, 0x3d, + 0xa8, 0x7, 0xff, 0xb0, 0xc4, 0x60, 0xf, 0xff, + 0x60, 0x80, 0x7f, 0xf2, 0x4e, 0x37, 0xba, 0xd8, + 0x30, 0xf, 0xfe, 0xb9, 0x19, 0xff, 0xf0, 0xd2, + 0xd4, 0x40, 0x31, 0x88, 0x7, 0xff, 0xb9, 0xe7, + 0x33, 0xff, 0x85, 0x6e, 0x60, 0x19, 0x31, 0x40, + 0x3f, 0xfd, 0xcb, 0xcc, 0x20, 0x1f, 0xc2, 0x31, + 0x1a, 0x2b, 0xd6, 0xda, 0x88, 0x7, 0xff, 0x4, + + /* U+662F "是" */ + 0x0, 0xff, 0xe1, 0x2d, 0x7f, 0xff, 0xfb, 0x76, + 0xc, 0x3, 0xff, 0xae, 0x46, 0x89, 0xff, 0xe0, + 0x21, 0x0, 0xc6, 0x20, 0x1f, 0xfd, 0x72, 0xae, + 0xbb, 0xff, 0xf0, 0x4a, 0x0, 0x7f, 0xff, 0xc0, + 0x3f, 0xfd, 0x85, 0x53, 0x55, 0xff, 0xe0, 0x84, + 0x0, 0xff, 0xef, 0x12, 0x2a, 0xff, 0xf8, 0xc, + 0x40, 0x3f, 0xfb, 0xa5, 0x1b, 0xff, 0xff, 0xe0, + 0xb5, 0x0, 0xff, 0xff, 0x80, 0x7f, 0xfb, 0xa, + 0xa6, 0xab, 0xff, 0xc1, 0x8, 0x1, 0xff, 0xde, + 0x24, 0x55, 0xff, 0xf0, 0x18, 0x80, 0x7f, 0xf5, + 0xd6, 0xbf, 0xff, 0xfd, 0xbd, 0x26, 0x1, 0xff, + 0xff, 0x0, 0xff, 0xea, 0x93, 0xe7, 0xff, 0xff, + 0xff, 0xf6, 0xc, 0x3, 0xff, 0xfe, 0x1, 0xff, + 0xcb, 0x27, 0xcf, 0xff, 0xfe, 0x17, 0x73, 0xff, + 0xff, 0x8d, 0x8e, 0x40, 0x19, 0x6b, 0xff, 0xff, + 0xab, 0xb0, 0x60, 0x1f, 0xfc, 0xb2, 0x7d, 0xef, + 0xed, 0xb6, 0x20, 0xf, 0xfe, 0x0, 0x80, 0x7f, + 0xfd, 0x85, 0x30, 0xc0, 0x2, 0x64, 0xa4, 0x1, + 0xff, 0xff, 0x0, 0xcb, 0x88, 0x1, 0x93, 0x4c, + 0x3, 0xff, 0x90, 0xb7, 0xbb, 0xff, 0xcf, 0xc7, + 0x30, 0xf, 0xfe, 0x7a, 0x72, 0x0, 0x70, 0x90, + 0x80, 0x7f, 0xf2, 0x44, 0x8b, 0xff, 0xa1, 0xc0, + 0x1f, 0xfc, 0xe1, 0x6f, 0x51, 0x0, 0xe4, 0xb9, + 0x30, 0xf, 0xfe, 0x3a, 0x4e, 0xf7, 0x7f, 0xf3, + 0xbe, 0xc, 0x3, 0xff, 0x98, 0x53, 0x68, 0x1, + 0x8, 0xc0, 0x2, 0x7e, 0x94, 0x10, 0xf, 0xfe, + 0x20, 0x99, 0x8, 0xff, 0xf4, 0x0, 0x3f, 0xf9, + 0x64, 0xfc, 0xe4, 0x0, 0x15, 0xbf, 0xd6, 0x20, + 0x1, 0x35, 0x6c, 0x18, 0x80, 0x7f, 0xfd, 0x4e, + 0x3e, 0xc, 0x2, 0x48, 0xb5, 0x13, 0x9e, 0x83, + 0x0, 0x9, 0xbe, 0x7e, 0x42, 0x98, 0x80, 0x7f, + 0xfb, 0x49, 0x6b, 0x9c, 0x80, 0x23, 0x89, 0x61, + 0x0, 0xc6, 0xfb, 0x92, 0xa4, 0x0, 0x13, 0x7a, + 0xce, 0xe6, 0x31, 0x0, 0x66, 0xd4, 0x33, 0xc4, + 0x50, 0x8f, 0xff, 0x40, 0x3, 0xe1, 0x37, 0xcc, + 0x52, 0x90, 0x0, 0x96, 0xb5, 0xc8, 0x3, 0xf0, + 0x9b, 0x56, 0xf5, 0xc2, 0x90, 0x4, 0x23, 0x0, + 0x71, 0xbd, 0xe6, 0x6d, 0xdb, 0xbb, 0xff, 0x9d, + 0xac, 0x40, 0x1f, 0x37, 0x8, 0x80, 0x4, 0xb5, + 0x94, 0xa2, 0x1, 0xff, 0xc3, 0x14, 0x7a, 0xdf, + 0xed, 0xca, 0x98, 0x65, 0x43, 0x31, 0x16, 0x11, + 0x80, 0x3f, 0xf9, 0xe7, 0x4c, 0x40, 0x1e, 0x15, + 0x9c, 0xb9, 0xbc, 0xa5, 0x10, 0xf, 0xfe, 0x60, + 0x91, 0xab, 0x3c, 0xd5, 0xe6, 0x37, 0x77, 0x75, + 0xff, 0xff, 0xcf, 0xc6, 0x10, 0xc, + + /* U+663E "显" */ + 0x0, 0xff, 0xe1, 0x24, 0x5d, 0xff, 0xfb, 0x61, + 0x0, 0x3f, 0xf9, 0xc4, 0x68, 0x9f, 0xfe, 0xd2, + 0x10, 0xf, 0xfe, 0xa1, 0xc6, 0xff, 0xff, 0xf7, + 0xf1, 0xc8, 0x3, 0xff, 0xb8, 0x60, 0x1f, 0xff, + 0xf0, 0xf, 0xff, 0xf8, 0x7, 0xff, 0x24, 0xe7, + 0x73, 0x3f, 0xfb, 0xfc, 0xc4, 0x1, 0xff, 0xdb, + 0x13, 0x3f, 0xff, 0x1, 0x8, 0x7, 0xff, 0x6c, + 0xe3, 0xbf, 0xff, 0xfb, 0xf8, 0xe4, 0x1, 0xff, + 0xff, 0x0, 0xff, 0xff, 0x80, 0x7f, 0xfc, 0x8e, + 0x3b, 0xff, 0xff, 0xbf, 0x8e, 0x40, 0x1f, 0xfd, + 0x43, 0x12, 0x2f, 0xff, 0x69, 0x80, 0x7f, 0xf3, + 0xd6, 0xb7, 0x7f, 0xfd, 0xb2, 0xa0, 0x1f, 0xfd, + 0xe4, 0x9e, 0xed, 0x8e, 0x40, 0x1f, 0xe1, 0x6b, + 0xee, 0xd4, 0xa0, 0x1f, 0xfd, 0xd2, 0x46, 0x75, + 0x20, 0xf, 0xfe, 0x10, 0x8f, 0x0, 0x7f, 0xf0, + 0x45, 0xc4, 0x70, 0x7, 0xff, 0xc, 0xde, 0xa8, + 0xea, 0x40, 0x1f, 0xfc, 0x73, 0x8f, 0xb9, 0x8a, + 0x95, 0x10, 0xf, 0xff, 0x29, 0xc7, 0x42, 0xaa, + 0x21, 0x66, 0x1, 0xff, 0xc6, 0x38, 0x96, 0x10, + 0x2, 0x5d, 0x94, 0x40, 0x3f, 0xfc, 0x24, 0xfe, + 0xe4, 0x0, 0x27, 0xe9, 0x30, 0xf, 0xfe, 0x42, + 0x45, 0xa8, 0x80, 0xad, 0xc2, 0x0, 0x7f, 0xf7, + 0x89, 0xfa, 0xc, 0x0, 0x4f, 0xd0, 0x60, 0x1f, + 0xfc, 0xb1, 0x58, 0x81, 0x80, 0x5, 0xa6, 0x8, + 0x3, 0xff, 0xb4, 0x71, 0xf0, 0x60, 0x2, 0x7e, + 0x83, 0x0, 0xff, 0xe7, 0x93, 0x7b, 0x10, 0x0, + 0x9e, 0x14, 0x40, 0x3f, 0xfa, 0xa2, 0x93, 0xae, + 0x40, 0x29, 0x3f, 0x6, 0x1, 0xff, 0xd3, 0x38, + 0xb4, 0x12, 0x42, 0x3, 0x0, 0xff, 0xea, 0x98, + 0xa, 0x11, 0x1a, 0xa8, 0xc4, 0x1, 0xff, 0xd6, + 0x16, 0xbe, 0xdb, 0x85, 0x20, 0xf, 0xfe, 0xa9, + 0x24, 0x56, 0xea, 0x50, 0x40, 0x3f, 0xf9, 0x24, + 0x67, 0xff, 0xcf, 0x20, 0xe, 0xe7, 0x33, 0xff, + 0x27, 0x8, 0x6, 0x62, 0x33, 0xff, 0xe7, 0x10, + 0x80, 0x47, 0x7b, 0x99, 0xff, 0xcd, 0x84, 0x0, + 0xc4, 0xd5, 0x99, 0xfe, 0xa6, 0x20, 0xc, 0x71, + 0x99, 0xff, 0xce, 0xe6, 0x20, 0x8, 0x4c, 0x3, + 0xff, 0xfe, 0x1, 0xf0, + + /* U+6709 "有" */ + 0x0, 0xff, 0xff, 0x80, 0x7f, 0xf8, 0x45, 0xab, + 0xb7, 0x2a, 0x14, 0x80, 0x3f, 0xff, 0xe0, 0x2f, + 0xaa, 0x24, 0x6a, 0x40, 0x40, 0x1f, 0xff, 0xf1, + 0x7d, 0x40, 0xc, 0xbe, 0xa0, 0x1f, 0xfe, 0x71, + 0x22, 0xff, 0xe5, 0x9b, 0x52, 0x0, 0x64, 0xc7, + 0x22, 0xff, 0xef, 0x8, 0x7, 0xe4, 0xbd, 0xdf, + 0xfe, 0x5e, 0x41, 0x80, 0x72, 0x4e, 0xef, 0xff, + 0x81, 0x84, 0x3, 0xff, 0xfe, 0x1, 0xfc, 0xe0, + 0x1f, 0x92, 0xbf, 0xff, 0xf8, 0xfb, 0x6, 0x1, + 0x85, 0x6b, 0xbf, 0xff, 0xfc, 0x56, 0xc2, 0x1, + 0xff, 0xcd, 0x15, 0x89, 0x30, 0x9, 0x22, 0xd4, + 0x40, 0x3f, 0xff, 0xa7, 0x16, 0xa2, 0x0, 0x28, + 0x96, 0x10, 0xf, 0xff, 0xea, 0x4f, 0x30, 0x80, + 0x62, 0x9f, 0xdd, 0xff, 0xed, 0xe4, 0x18, 0x7, + 0xff, 0x48, 0x56, 0xa8, 0xc4, 0x1, 0xf0, 0x91, + 0x7f, 0xf7, 0x45, 0xc0, 0x3f, 0xfa, 0x4, 0xfb, + 0x4a, 0x20, 0x1e, 0x15, 0xae, 0xef, 0xfe, 0xbd, + 0x28, 0x80, 0x7f, 0xf4, 0xc9, 0xaf, 0x20, 0xc0, + 0x21, 0x10, 0x7, 0x1b, 0x8, 0xff, 0xf6, 0xc, + 0x3, 0xff, 0xa2, 0x4b, 0x59, 0x28, 0x20, 0x2, + 0x7c, 0xb7, 0x0, 0xff, 0xfc, 0x8a, 0x46, 0x6d, + 0x28, 0x80, 0x9, 0x6b, 0x20, 0xc4, 0x3, 0x85, + 0xf7, 0x7f, 0xfb, 0x14, 0xe2, 0x1, 0xff, 0xc9, + 0x26, 0xbf, 0xb7, 0x30, 0x8, 0x9a, 0xbe, 0x94, + 0x40, 0x3f, 0x84, 0x44, 0x5f, 0xfd, 0x71, 0x10, + 0x7, 0xff, 0x28, 0x9f, 0xdc, 0x80, 0x56, 0x77, + 0x52, 0xa4, 0x1, 0xff, 0xb, 0x57, 0x77, 0xff, + 0x5e, 0x94, 0x40, 0x3f, 0xf9, 0x42, 0x93, 0x9d, + 0xf4, 0xc4, 0x1, 0xff, 0xc5, 0x61, 0x1f, 0xfe, + 0xc1, 0x80, 0x7f, 0xf3, 0x84, 0x60, 0xf, 0xff, + 0xf8, 0x7, 0xff, 0x48, 0x5f, 0xb3, 0x3f, 0xfa, + 0xf2, 0xe2, 0x1, 0xff, 0xe3, 0x12, 0x33, 0xff, + 0xeb, 0x90, 0x80, 0x7f, 0xf8, 0xc5, 0x6b, 0x77, + 0xff, 0xaf, 0x2a, 0x20, 0x1f, 0xfe, 0x33, 0x62, + 0x2f, 0xfe, 0xc1, 0x80, 0x7f, 0xff, 0xc0, 0x3f, + 0xff, 0xe0, 0x1f, 0x84, 0x8c, 0xc4, 0x5f, 0xc6, + 0x62, 0x10, 0x8, 0xc5, 0xc0, 0x3f, 0xfe, 0x89, + 0x19, 0x8d, 0xdf, 0xec, 0x84, 0x0, 0xcf, 0xa6, + 0x1, 0xff, 0xf4, 0x5f, 0x50, 0xf, 0x84, 0x62, + 0x21, 0xa3, 0x4e, 0x52, 0x80, 0x7f, 0xf0, 0x40, + + /* U+671F "期" */ + 0x0, 0xff, 0x85, 0xab, 0x32, 0xb7, 0x20, 0xf, + 0xfe, 0x12, 0x46, 0x66, 0x95, 0x0, 0xff, 0xf6, + 0x18, 0xb1, 0x9c, 0xbe, 0x20, 0x1f, 0xfc, 0x21, + 0x23, 0x3c, 0x46, 0x1, 0xf8, 0x96, 0x26, 0x7f, + 0xfa, 0x30, 0xa4, 0x1, 0xff, 0xe8, 0x1c, 0x66, + 0xff, 0xe9, 0xe0, 0x80, 0x7f, 0xf0, 0x47, 0xc4, + 0x3, 0xb, 0x80, 0x7f, 0xf0, 0x44, 0xc4, 0x3, + 0x38, 0x88, 0x3, 0xff, 0x84, 0x6b, 0x11, 0xff, + 0xc5, 0x63, 0x0, 0xff, 0xe0, 0xad, 0x7f, 0xf6, + 0x39, 0x0, 0x42, 0xd7, 0xff, 0xff, 0xc1, 0xe9, + 0x40, 0xc, 0x71, 0xdf, 0xf7, 0x49, 0x80, 0x7c, + 0x2b, 0xce, 0xff, 0xfc, 0x5a, 0x41, 0x0, 0xff, + 0xff, 0x80, 0x7f, 0xf3, 0x16, 0xbf, 0xfb, 0x60, + 0xc0, 0x21, 0x7c, 0xff, 0xff, 0xe1, 0x52, 0x80, + 0x64, 0x9f, 0xfd, 0xd2, 0x60, 0x1f, 0xff, 0xf0, + 0xf, 0xff, 0xb8, 0xb7, 0xdd, 0xff, 0xf0, 0xa1, + 0x0, 0x3f, 0xf9, 0x2, 0xd7, 0xff, 0xff, 0xc5, + 0xc7, 0x10, 0xf, 0xfe, 0x70, 0x9a, 0x27, 0xff, + 0x8, 0x84, 0x3, 0xff, 0xf0, 0x2d, 0x7d, 0xdf, + 0xfc, 0x29, 0x40, 0xf, 0xfe, 0x40, 0xb5, 0xff, + 0xff, 0xf1, 0x71, 0xc4, 0x3, 0xff, 0x9c, 0x2e, + 0x23, 0xff, 0xc2, 0x31, 0x0, 0xff, 0xff, 0x80, + 0x7f, 0xf3, 0x9c, 0x3, 0xff, 0xd2, 0x2d, 0xd9, + 0x9f, 0xfc, 0x28, 0x40, 0xf, 0xfe, 0x20, 0x80, + 0x7f, 0xfa, 0x4, 0x8c, 0xff, 0xf8, 0x44, 0x20, + 0x1f, 0xff, 0x81, 0x6b, 0xff, 0xff, 0xe1, 0x52, + 0x80, 0x7f, 0xf0, 0xcc, 0x3, 0xb, 0xce, 0x67, + 0xff, 0x17, 0x98, 0x40, 0x3f, 0xf9, 0xc2, 0xe0, + 0x1f, 0xfd, 0x21, 0x10, 0x7, 0x9, 0x19, 0xff, + 0xf1, 0x48, 0x40, 0x3f, 0xfd, 0xc2, 0x6e, 0x1, + 0x8e, 0x33, 0x3f, 0xf8, 0xd2, 0xa2, 0x1, 0xff, + 0x2d, 0x7f, 0xfb, 0x60, 0xc0, 0x21, 0x7c, 0xff, + 0xff, 0xe1, 0x52, 0x80, 0x64, 0x9f, 0xfd, 0xd2, + 0x66, 0xe1, 0x0, 0x89, 0x10, 0x67, 0xff, 0xc6, + 0x52, 0x0, 0xff, 0xe0, 0x18, 0x80, 0x7f, 0xf7, + 0xdd, 0x84, 0x80, 0x26, 0xe3, 0x0, 0xff, 0xea, + 0x35, 0xff, 0xff, 0xb6, 0xed, 0x9b, 0xdf, 0xff, + 0xf6, 0xe6, 0x37, 0xff, 0xfd, 0xd2, 0xc6, 0x80, + 0x10, 0x9a, 0x80, 0x7f, 0xf7, 0xc9, 0xfa, 0xed, + 0x9b, 0xf2, 0x80, 0x1c, 0x2b, 0x3b, 0xac, 0xc7, + 0x39, 0x0, 0x7f, 0x9f, 0x8, 0x2, 0x5e, 0x20, + 0xf, 0xfe, 0xe8, 0xb4, 0xc1, 0x80, 0x47, 0x10, + 0x40, 0xe, 0x14, 0xd4, 0x20, 0x1, 0xc7, 0xca, + 0x8, 0x7, 0x8f, 0x14, 0x2, 0x13, 0x51, 0x0, + 0xff, 0xed, 0x93, 0x54, 0xa0, 0x4, 0x71, 0xcc, + 0x20, 0x1f, 0xa, 0x4f, 0xc1, 0x80, 0x9, 0xaa, + 0xd4, 0x40, 0x24, 0xa7, 0x10, 0x0, 0xbe, 0x18, + 0x7, 0xff, 0x64, 0x96, 0xb2, 0x50, 0x2, 0x37, + 0xf7, 0x20, 0xf, 0xfe, 0x1, 0x3f, 0x41, 0x80, + 0x5, 0x6e, 0x10, 0x57, 0xd8, 0x40, 0x2, 0xfa, + 0x80, 0x1f, 0xc2, 0x3f, 0xf1, 0x29, 0x88, 0x6, + 0x10, 0xf, 0xa, 0xd6, 0x52, 0x88, 0x0, 0x52, + 0x76, 0xc, 0x3, 0xff, 0x88, 0x4f, 0xee, 0x66, + 0x68, 0xa7, 0x69, 0x40, 0x8, 0x5a, 0x90, 0x3, + 0xf8, 0x5e, 0xbb, 0xbf, 0xb6, 0x50, 0x3, 0x26, + 0x98, 0x7, 0xa, 0x4c, 0x94, 0x85, 0x23, 0x2d, + 0x84, 0x3, 0xff, 0x90, 0x71, 0x98, 0x96, 0x33, + 0x2c, 0xb9, 0x8a, 0x44, 0x98, 0x7, 0xf8, 0x5f, + 0x50, 0x3, 0xf0, 0x91, 0xa2, 0xc5, 0xd9, 0x40, + 0x3e, 0x13, 0x7a, 0xde, 0xb7, 0x20, 0xf, 0xfe, + 0x99, 0x2c, 0x67, 0xd3, 0x8, 0x7, 0xff, 0x0, + 0x5a, 0xff, 0xff, 0x76, 0xe5, 0xd3, 0xa0, 0x80, + 0x60, + + /* U+673A "机" */ + 0x0, 0xff, 0xe3, 0x89, 0x9f, 0x10, 0x80, 0x7f, + 0xff, 0xc0, 0x3c, 0x4d, 0xf9, 0x9a, 0x14, 0x3, + 0xff, 0xfe, 0x1, 0xff, 0xd4, 0x12, 0x2f, 0xfe, + 0x88, 0x80, 0x7f, 0xfb, 0x96, 0xf7, 0x7f, 0xfa, + 0x19, 0x6, 0x1, 0xff, 0xff, 0x0, 0xff, 0xff, + 0x80, 0x64, 0xaf, 0xff, 0xfe, 0x1d, 0xb0, 0x7, + 0xff, 0xfc, 0x3, 0xff, 0xb6, 0x2d, 0x7d, 0xdf, + 0xfc, 0xc, 0x83, 0x0, 0xcb, 0x5d, 0xdf, 0xf5, + 0x28, 0x80, 0x7f, 0xfa, 0x9c, 0x47, 0xff, 0x82, + 0x1, 0xf0, 0x8f, 0xff, 0x4, 0xc0, 0x3f, 0xfd, + 0x22, 0xfd, 0xbb, 0xfe, 0xc9, 0x51, 0x0, 0xe4, + 0x8d, 0xdf, 0xfa, 0x5c, 0x40, 0x3f, 0xfd, 0x22, + 0x45, 0xff, 0x7, 0x38, 0x80, 0x70, 0x99, 0x17, + 0xff, 0x0, 0x40, 0x3f, 0xfe, 0xa5, 0x6a, 0x40, + 0x1f, 0x8, 0x7, 0xff, 0xfc, 0x0, 0x54, 0xa4, + 0x1, 0xf2, 0xc4, 0xc, 0x40, 0x3f, 0xf8, 0x42, + 0x1, 0xff, 0xee, 0x3b, 0x62, 0x0, 0xfe, 0x27, + 0xcd, 0x73, 0x0, 0xff, 0x8c, 0x3, 0xc2, 0x20, + 0xf, 0xff, 0x32, 0xcb, 0x8, 0x9, 0x98, 0x80, + 0x31, 0x10, 0x40, 0xe3, 0x6d, 0x48, 0x3, 0xe1, + 0x0, 0xf0, 0x98, 0x7, 0xff, 0x94, 0x5a, 0x54, + 0x0, 0x4d, 0x36, 0x20, 0x19, 0xe3, 0x5c, 0x80, + 0x52, 0xbe, 0x50, 0x40, 0x3f, 0xf8, 0x2, 0xe0, + 0x1f, 0xfe, 0x34, 0x88, 0x18, 0x0, 0xea, 0x8e, + 0x1, 0xf0, 0x9c, 0x7c, 0x18, 0x0, 0x9a, 0xa8, + 0xc4, 0x0, 0x31, 0x60, 0xc, 0x5e, 0x20, 0x1f, + 0xfe, 0x12, 0x78, 0x61, 0x0, 0x24, 0xb1, 0x0, + 0x7f, 0xc4, 0xfd, 0x6, 0x0, 0x16, 0xe1, 0x0, + 0x37, 0x10, 0x6, 0x63, 0x20, 0xf, 0xfe, 0xf8, + 0xac, 0x49, 0x80, 0x5, 0xbd, 0x44, 0x3, 0xff, + 0x84, 0x4f, 0xd2, 0xf3, 0xf0, 0x60, 0x24, 0x40, + 0xc, 0x7a, 0xc0, 0x1f, 0xfd, 0xe1, 0x5a, 0xb5, + 0x10, 0x1, 0xcd, 0xa0, 0x7, 0xff, 0x18, 0x9a, + 0x18, 0x80, 0x22, 0xe6, 0x0, 0xcc, 0x64, 0x1, + 0xff, 0xdd, 0x4b, 0xb2, 0x8, 0x0, 0x9b, 0xdc, + 0x80, 0x3f, 0xf9, 0xc2, 0xa8, 0x40, 0x11, 0xe2, + 0x80, 0x7f, 0xf4, 0xcd, 0x5d, 0x4, 0x3, 0xc9, + 0xc8, 0x20, 0x2d, 0x32, 0x30, 0xf, 0xfe, 0x82, + 0x61, 0x80, 0x47, 0x4e, 0x20, 0x1f, 0xfd, 0x36, + 0xf8, 0xbe, 0xc7, 0x20, 0xc, 0x97, 0x54, 0xd9, + 0x40, 0xf, 0xfe, 0x80, 0xb7, 0x28, 0x4, 0x94, + 0xe2, 0x1, 0xff, 0xd9, 0x2f, 0x10, 0xe, 0x14, + 0x53, 0x0, 0xff, 0xe8, 0x93, 0x5a, 0x0, 0x49, + 0xcc, 0x20, 0x1f, 0xfd, 0xa3, 0x0, 0xff, 0xed, + 0xb, 0x4c, 0x10, 0x0, 0x57, 0xd4, 0x3, 0xff, + 0xa2, 0xe0, 0x1c, 0x62, 0x1, 0xc2, 0x1, 0xff, + 0xd6, 0x26, 0xa9, 0x40, 0x9, 0x22, 0xd0, 0x3, + 0xff, 0x94, 0xe2, 0x20, 0x8, 0x48, 0xa1, 0x11, + 0x2e, 0x28, 0x4, 0x3c, 0x60, 0x1f, 0xfd, 0x31, + 0x49, 0xf9, 0x40, 0x9, 0x26, 0x4c, 0x20, 0x1f, + 0xfc, 0xb2, 0xe2, 0x0, 0xc9, 0x3b, 0xdc, 0xda, + 0x51, 0x0, 0xa, 0x28, 0x80, 0x7f, 0xf4, 0xc5, + 0x2e, 0xca, 0x44, 0x6b, 0xa6, 0x20, 0xf, 0xfe, + 0x68, 0xb7, 0xca, 0x98, 0x80, 0x7c, 0x46, 0xb1, + 0x52, 0x60, 0x1f, 0xfc, 0x82, 0x7c, 0xff, 0xd4, + 0x80, 0x1c, 0x4d, 0x5b, 0xa9, 0x41, 0x0, 0xff, + 0xe8, 0x9b, 0x56, 0x77, 0xff, 0xdb, 0x94, 0xe8, + 0x20, 0x10, + + /* U+6750 "材" */ + 0x0, 0xff, 0xe4, 0x12, 0x2a, 0xe4, 0x20, 0xf, + 0xfe, 0xe0, 0x92, 0x27, 0x18, 0x80, 0x7f, 0xf4, + 0x45, 0x22, 0xab, 0x42, 0x88, 0x7, 0xff, 0x6d, + 0x6e, 0xae, 0xf4, 0xa0, 0x7, 0xff, 0xfc, 0x3, + 0xff, 0xfe, 0x1, 0xff, 0xff, 0x0, 0xff, 0xff, + 0x80, 0x7f, 0xff, 0xc0, 0x3f, 0xff, 0xc2, 0xb5, + 0xdd, 0xff, 0xc0, 0xf9, 0x30, 0xc, 0x71, 0xfd, + 0xdf, 0xd8, 0xe4, 0x47, 0xcd, 0xdf, 0xfe, 0x65, + 0x30, 0x80, 0x65, 0xbe, 0xdd, 0xf5, 0x30, 0x80, + 0x71, 0x88, 0xff, 0xf0, 0x80, 0x3f, 0x8, 0xff, + 0xde, 0x22, 0xf1, 0x22, 0xff, 0xe6, 0x8, 0x7, + 0xc2, 0x22, 0x2f, 0x30, 0x7, 0x85, 0xe7, 0x33, + 0xfe, 0x95, 0x10, 0xe, 0x26, 0xac, 0xcf, 0xee, + 0x93, 0x35, 0x76, 0x67, 0xff, 0x22, 0xe5, 0x4, + 0x3, 0xe3, 0x7b, 0xcc, 0xf7, 0xb8, 0x80, 0x70, + 0x91, 0x9f, 0xf8, 0x79, 0xc4, 0x3, 0x89, 0x31, + 0xc8, 0xcf, 0xf0, 0x80, 0x8, 0xcf, 0xff, 0x90, + 0x44, 0xd4, 0x10, 0xf, 0x9b, 0x50, 0xcf, 0xe1, + 0x0, 0xff, 0xe2, 0x92, 0xa8, 0x80, 0x3e, 0x26, + 0xbd, 0x72, 0x0, 0xff, 0xe8, 0xa4, 0x41, 0x0, + 0x3f, 0xfb, 0x7, 0x54, 0x20, 0xf, 0xf8, 0xe3, + 0x29, 0x44, 0x3, 0xff, 0x98, 0x4f, 0xc, 0x20, + 0x1, 0x22, 0x0, 0x7f, 0xf4, 0xd2, 0x98, 0x80, + 0x3f, 0x1b, 0xcb, 0x8, 0xa, 0xd6, 0x41, 0x80, + 0x7f, 0xf2, 0x9, 0xfa, 0xc, 0x0, 0x2b, 0x70, + 0x82, 0x1, 0xff, 0xd0, 0x16, 0xf6, 0x10, 0x26, + 0x61, 0x80, 0x77, 0xbc, 0xeb, 0x90, 0x0, 0x9f, + 0x6d, 0x88, 0x3, 0xff, 0x86, 0x4f, 0xd0, 0x60, + 0x12, 0x45, 0xa8, 0x80, 0x7f, 0xf4, 0x4a, 0x6d, + 0x0, 0x7, 0x75, 0xe0, 0x1f, 0xc7, 0x1f, 0x6, + 0x0, 0x14, 0x9e, 0x72, 0x0, 0xff, 0x8e, 0x3e, + 0xc, 0x2, 0x49, 0x93, 0x8, 0x7, 0xff, 0x44, + 0x5a, 0x5c, 0x80, 0x56, 0x58, 0x80, 0x3f, 0xf8, + 0x4, 0xfd, 0x26, 0x2, 0xb2, 0xc4, 0x1, 0xf8, + 0x52, 0x79, 0xc8, 0x0, 0x2b, 0x54, 0x62, 0x0, + 0xff, 0xe9, 0x25, 0xc2, 0x0, 0x9, 0xa5, 0x40, + 0x3f, 0xf8, 0x84, 0xdb, 0xac, 0xa5, 0x10, 0xf, + 0x8d, 0xf6, 0xd8, 0x80, 0x4, 0xd5, 0x6a, 0x20, + 0x1f, 0xfd, 0x24, 0x99, 0x28, 0x80, 0xe, 0xe4, + 0xc0, 0x3f, 0xf8, 0xe2, 0x44, 0x0, 0xf8, 0x96, + 0xf6, 0xc, 0x2, 0x37, 0xe9, 0x41, 0x0, 0xff, + 0xe8, 0x8a, 0xd5, 0x18, 0x80, 0x4, 0xfe, 0xc2, + 0x1, 0xff, 0xcf, 0x25, 0xaf, 0xa4, 0x10, 0x1, + 0x2d, 0xec, 0x18, 0x7, 0xff, 0x4c, 0xe2, 0xd4, + 0x40, 0x2, 0xb3, 0x6, 0x1, 0xff, 0xcd, 0x14, + 0x8c, 0xc5, 0x29, 0x0, 0x5, 0x27, 0xe9, 0x4, + 0x3, 0xff, 0xaa, 0x77, 0x26, 0x4, 0xd5, 0x68, + 0x1, 0xff, 0xcd, 0x27, 0xdb, 0x73, 0x10, 0x0, + 0xa4, 0xe5, 0xb1, 0x0, 0x7f, 0xf6, 0x49, 0xfb, + 0x3a, 0x50, 0x40, 0x3f, 0xf9, 0xc4, 0xd0, 0xa2, + 0x4, 0xd7, 0xf6, 0xc4, 0x1, 0xff, 0xde, 0x23, + 0x30, 0x7, 0xff, 0x48, 0x52, 0xbf, 0xb6, 0x50, + 0x40, 0x3f, 0xff, 0xe0, 0x1e, 0x11, 0x0, 0x7f, + 0xff, 0xc0, 0x3f, 0xf9, 0x42, 0x46, 0x7f, 0xfc, + 0x4, 0xc5, 0x10, 0xe, 0x10, 0xf, 0xff, 0x99, + 0x57, 0x66, 0x7f, 0xd6, 0xe6, 0x1, 0x8f, 0x14, + 0x3, 0xff, 0xe6, 0x74, 0xa4, 0x1, 0xfc, 0x22, + 0x23, 0x46, 0x9c, 0xc3, 0x8, 0x7, 0xff, 0x44, + 0x5b, 0x3f, 0xf6, 0x38, 0x80, 0x7f, 0xf3, 0x4a, + 0x37, 0xff, 0xfb, 0xb9, 0xb9, 0x72, 0xc6, 0x1, + 0xff, 0xc1, + + /* U+67E5 "查" */ + 0x0, 0xff, 0xff, 0x80, 0x7f, 0xfa, 0xc9, 0xf7, + 0xff, 0x52, 0x80, 0x7f, 0xff, 0xc0, 0x3f, 0xff, + 0xe0, 0x1f, 0xff, 0xf0, 0x23, 0x44, 0xff, 0xeb, + 0x69, 0x80, 0x66, 0xd4, 0x4f, 0xfe, 0xb1, 0x90, + 0x7, 0xf1, 0xd7, 0x5d, 0xff, 0xf5, 0x65, 0x44, + 0x3, 0x1b, 0xdd, 0xff, 0xf5, 0xb6, 0x8c, 0x3, + 0xf0, 0xf3, 0xa2, 0x7f, 0xf3, 0x88, 0x40, 0x3f, + 0xf9, 0x4, 0x68, 0x9f, 0xfc, 0xfe, 0x10, 0xf, + 0xc4, 0xd5, 0x77, 0xff, 0xcb, 0x8c, 0x3, 0x10, + 0x8, 0x9a, 0x18, 0x80, 0x32, 0x44, 0xa8, 0x80, + 0x44, 0x25, 0xf5, 0x77, 0xff, 0xcb, 0xa6, 0x20, + 0xf, 0xfe, 0x90, 0x9b, 0xe6, 0xc2, 0x8, 0xa, + 0xd7, 0xca, 0xf0, 0x7, 0x9, 0x35, 0x64, 0x20, + 0x81, 0x35, 0xfd, 0x31, 0x0, 0x7f, 0xf9, 0x44, + 0xde, 0xff, 0x20, 0xc4, 0x5, 0x27, 0x29, 0x48, + 0x3, 0xff, 0x80, 0x4f, 0x7b, 0x8, 0x20, 0x2b, + 0x3b, 0xaa, 0x73, 0x10, 0xf, 0xfe, 0xe0, 0xa3, + 0xdf, 0xe4, 0x20, 0x80, 0xd, 0xaf, 0xed, 0x88, + 0x3, 0xff, 0x8c, 0x6f, 0x7f, 0x6e, 0x60, 0x2, + 0x58, 0xcf, 0xc8, 0x53, 0x10, 0xf, 0xfe, 0x91, + 0x2c, 0x5e, 0xf5, 0xc2, 0x8, 0x0, 0x96, 0x77, + 0x25, 0x4, 0x3, 0xff, 0x98, 0x29, 0x19, 0xb4, + 0xc4, 0x0, 0x13, 0x7a, 0xcf, 0xda, 0x74, 0x20, + 0xf, 0xfe, 0x30, 0x9a, 0xbd, 0x67, 0x6d, 0x3a, + 0x10, 0x0, 0x4d, 0xeb, 0x75, 0x4c, 0x40, 0x1f, + 0xfc, 0x11, 0x0, 0xff, 0xe3, 0x12, 0xce, 0xf5, + 0xc2, 0x90, 0x0, 0x49, 0x62, 0xf7, 0xb6, 0xe5, + 0xd4, 0xc4, 0x3, 0xe3, 0x7c, 0xec, 0xa8, 0x53, + 0x10, 0x0, 0x9b, 0x4e, 0x7e, 0x42, 0x90, 0x7, + 0xff, 0xc, 0x9f, 0x3f, 0xf5, 0x28, 0x7, 0xff, + 0x10, 0x51, 0xeb, 0x75, 0x70, 0xa6, 0x20, 0x1, + 0x24, 0x68, 0xb8, 0x72, 0x0, 0xf1, 0xbf, 0xb9, + 0x0, 0x9b, 0x45, 0xef, 0x64, 0xb3, 0xdf, 0xff, + 0xff, 0x8f, 0xa4, 0x51, 0xeb, 0x3b, 0x6e, 0x59, + 0xd, 0xaa, 0x8c, 0x40, 0x1f, 0x8e, 0x37, 0xfb, + 0x25, 0xd0, 0x80, 0x3f, 0xe3, 0x57, 0x7f, 0xfe, + 0xb2, 0x10, 0x7, 0xff, 0x0, 0x91, 0xa6, 0xf2, + 0x50, 0x40, 0x3f, 0xfa, 0x44, 0x93, 0x11, 0xff, + 0xd6, 0xe6, 0x0, 0xff, 0xf3, 0x98, 0x80, 0x7f, + 0xf5, 0x84, 0xc0, 0x3f, 0xfd, 0x2, 0xd9, 0xff, + 0xff, 0xd5, 0xe9, 0x40, 0xf, 0xff, 0x38, 0x9b, + 0x44, 0x7f, 0xf5, 0x5d, 0x48, 0x3, 0xff, 0xce, + 0x69, 0x4e, 0xff, 0xfd, 0x58, 0xf6, 0x0, 0xff, + 0xf3, 0x98, 0x80, 0x7f, 0xf5, 0x84, 0xc0, 0x3f, + 0xfd, 0x2, 0xd9, 0xff, 0xff, 0xd5, 0xe9, 0x40, + 0xf, 0xff, 0xb, 0x7b, 0xbf, 0xff, 0x8d, 0xb0, + 0x40, 0x3f, 0xfb, 0x44, 0xb1, 0x1f, 0xfe, 0x45, + 0x20, 0xf, 0xfe, 0x6a, 0xce, 0xef, 0xff, 0xfa, + 0xd8, 0x40, 0x3f, 0xf8, 0x6, 0x45, 0xff, 0xfe, + 0x71, 0x30, 0xf, 0xf9, 0x6f, 0xbb, 0xff, 0xfd, + 0xae, 0x40, 0x1c, + + /* U+683C "格" */ + 0x0, 0xff, 0xe3, 0x11, 0x9f, 0x8, 0x7, 0xff, + 0x38, 0x46, 0x0, 0xff, 0xf4, 0xa5, 0xee, 0x65, + 0xd2, 0x40, 0x1f, 0xfc, 0xb1, 0x5b, 0xee, 0x7f, + 0x63, 0x98, 0x7, 0xff, 0xfc, 0x3, 0x1c, 0xc2, + 0x80, 0x65, 0x33, 0x0, 0x7f, 0xff, 0xc0, 0x2, + 0xd0, 0xe4, 0x1, 0x14, 0xda, 0x0, 0x7f, 0xff, + 0xc0, 0x7, 0x10, 0x40, 0xe, 0x29, 0xfd, 0xdf, + 0xfe, 0x17, 0x76, 0xda, 0x74, 0x10, 0xf, 0xff, + 0x49, 0xc7, 0x30, 0x80, 0x7c, 0x24, 0x5f, 0xfc, + 0x31, 0x1c, 0x49, 0xce, 0x20, 0x1f, 0xfe, 0x74, + 0x9e, 0x72, 0x0, 0x85, 0x6f, 0xbf, 0xff, 0xf8, + 0x7b, 0x6, 0x1, 0x8e, 0x20, 0x60, 0x1f, 0xfc, + 0x35, 0xaf, 0xff, 0xfa, 0xd8, 0x40, 0x22, 0x7d, + 0xff, 0xfe, 0xb6, 0x12, 0x6b, 0xa6, 0x20, 0xe, + 0x15, 0xf4, 0x10, 0xf, 0xfe, 0x0, 0xac, 0x49, + 0x80, 0x5, 0xa1, 0x84, 0x3, 0xff, 0x8a, 0x20, + 0x1f, 0xfd, 0x16, 0xda, 0xc9, 0x41, 0x0, 0x13, + 0x4b, 0x98, 0x1, 0x2e, 0xca, 0x20, 0x1f, 0xc9, + 0x16, 0xa2, 0x0, 0x39, 0xb4, 0x0, 0xff, 0xe3, + 0x2d, 0x77, 0x7f, 0x6c, 0xa8, 0x7, 0x13, 0x5f, + 0x77, 0x6d, 0xb9, 0x92, 0x20, 0x40, 0x2, 0x93, + 0xf2, 0xd1, 0xd0, 0x60, 0x2b, 0x5a, 0xe4, 0x1, + 0x89, 0xae, 0x98, 0x40, 0x7, 0x1c, 0xe4, 0x1, + 0xff, 0xc8, 0x11, 0xff, 0xbd, 0x0, 0x38, 0xcc, + 0x23, 0xe2, 0x4b, 0xa4, 0x10, 0x14, 0x8d, 0xb6, + 0x20, 0x8, 0x9f, 0xa0, 0xc0, 0x7, 0x19, 0x4c, + 0xb3, 0xf2, 0x82, 0x2, 0xb5, 0xae, 0x40, 0x1f, + 0xfd, 0x32, 0xb4, 0x10, 0xe, 0x15, 0xbb, 0x31, + 0x0, 0x63, 0x6b, 0xfd, 0xcb, 0x73, 0x0, 0xfc, + 0x4f, 0xb4, 0xa2, 0x2, 0xb3, 0x4c, 0x40, 0x2, + 0x7d, 0xa5, 0x10, 0xf, 0xfe, 0xa1, 0x2a, 0x88, + 0x3, 0xf0, 0xa4, 0xfc, 0xa0, 0x80, 0x61, 0x22, + 0x0, 0x7f, 0xf0, 0x45, 0xfd, 0x4, 0x3, 0xe2, + 0x4b, 0x20, 0xf, 0xfe, 0xb1, 0xd5, 0x8, 0x3, + 0xe2, 0x45, 0x30, 0x26, 0xaa, 0x31, 0x0, 0x7f, + 0xf0, 0xc9, 0xa7, 0x75, 0x4a, 0x20, 0x1, 0x10, + 0x4, 0x4d, 0x9f, 0x90, 0x84, 0x1, 0xff, 0xd1, + 0x3a, 0x62, 0x1, 0x22, 0x0, 0x71, 0xcf, 0x41, + 0x80, 0xa4, 0xfc, 0x18, 0x7, 0xe1, 0x37, 0xad, + 0xd4, 0xb1, 0x0, 0x4, 0xe2, 0xff, 0xb6, 0x98, + 0x80, 0x2, 0x6f, 0x7b, 0xa9, 0x63, 0x10, 0xf, + 0xfe, 0x5a, 0xcb, 0x8, 0x13, 0x52, 0x8, 0x7, + 0x9, 0x3f, 0x41, 0x0, 0x42, 0xe2, 0x2, 0x6a, + 0xf5, 0x9f, 0x90, 0xa4, 0x0, 0x13, 0x7b, 0xfc, + 0x74, 0x10, 0x25, 0x9d, 0xd4, 0xa9, 0x0, 0x44, + 0xd3, 0x9d, 0xcc, 0xa8, 0x63, 0x10, 0xf, 0xfe, + 0x11, 0x3c, 0xa8, 0x0, 0xea, 0x86, 0x1, 0xfe, + 0x27, 0xe9, 0x7a, 0xed, 0xd7, 0x73, 0x2a, 0x14, + 0xc4, 0x4, 0xda, 0x73, 0xf2, 0x10, 0x40, 0x3f, + 0x89, 0xab, 0x7a, 0xe1, 0x48, 0x2, 0x13, 0x57, + 0x9c, 0xee, 0x52, 0x0, 0x7f, 0x92, 0x24, 0xc0, + 0x9, 0x4c, 0x40, 0x1f, 0xfc, 0x11, 0x3, 0x98, + 0x63, 0x10, 0xf, 0xe1, 0x4b, 0xec, 0xdd, 0xff, + 0xe2, 0xe4, 0xd3, 0x98, 0x80, 0x42, 0x30, 0x1, + 0x22, 0x8, 0x1, 0xf8, 0xe2, 0x54, 0x40, 0xb, + 0xce, 0x20, 0x1f, 0xfc, 0x22, 0x6a, 0xb6, 0x56, + 0x9b, 0xdc, 0x83, 0x0, 0x84, 0x8b, 0xff, 0x9c, + 0x22, 0x0, 0xb, 0x6f, 0x75, 0x6c, 0x40, 0x1f, + 0x13, 0xfb, 0x90, 0x0, 0x9e, 0x54, 0x40, 0x3f, + 0xf8, 0xa2, 0xb3, 0x52, 0xc8, 0x42, 0x1, 0xe5, + 0xbf, 0xff, 0xfe, 0x55, 0xb0, 0x80, 0x7c, 0x22, + 0x0, 0xfe, 0x48, 0x81, 0x80, 0x49, 0x12, 0x60, + 0x1f, 0xfd, 0x51, 0x30, 0xf, 0xfe, 0x5b, 0x80, + 0x7f, 0xf2, 0x12, 0x20, 0x60, 0x71, 0x2a, 0x20, + 0x1f, 0xff, 0xf0, 0xf, 0x13, 0xf6, 0xf3, 0x90, + 0x7, 0xff, 0xfc, 0x3, 0xfc, 0x45, 0x0, 0x7f, + 0xff, 0xc0, 0x3f, 0xff, 0xe0, 0x1f, 0xff, 0x81, + 0x6b, 0xff, 0xff, 0xe5, 0x63, 0x8, 0x7, 0xff, + 0xfc, 0x3, 0xff, 0xfe, 0x0, 0x16, 0xbf, 0xff, + 0xfe, 0x56, 0x39, 0x8, 0xc5, 0xe0, 0x1f, 0xf0, + + /* U+6846 "框" */ + 0x0, 0xff, 0xe2, 0x9, 0x19, 0xe2, 0x10, 0xf, + 0xff, 0xf8, 0x6, 0x58, 0xcc, 0xd2, 0xe2, 0x1, + 0xff, 0xff, 0x0, 0xff, 0xe5, 0x24, 0xe6, 0x7f, + 0xf8, 0xa9, 0x44, 0x3, 0xff, 0xb0, 0x24, 0x67, + 0xff, 0xe2, 0x62, 0x30, 0xf, 0xfe, 0xf1, 0xbd, + 0xe6, 0x7f, 0xf6, 0xfd, 0x88, 0x3, 0xff, 0xbc, + 0xfc, 0xa6, 0x7f, 0xfd, 0xc1, 0x0, 0xff, 0xff, + 0x80, 0x7f, 0xf1, 0x49, 0xaf, 0x77, 0xfd, 0x4a, + 0x1, 0x92, 0x3f, 0x77, 0xea, 0x51, 0x0, 0xff, + 0x89, 0xf3, 0xbb, 0xff, 0xa9, 0x28, 0x1, 0xf8, + 0x5c, 0x8b, 0xfc, 0x20, 0x1e, 0x11, 0x11, 0x7c, + 0x26, 0x1, 0xff, 0xc1, 0xf1, 0x1f, 0xfe, 0xa9, + 0x88, 0x7, 0xc4, 0xdd, 0xbb, 0xfb, 0x21, 0x0, + 0x38, 0xde, 0xf7, 0x7e, 0x97, 0x10, 0xf, 0xf8, + 0xa3, 0x7f, 0xff, 0xeb, 0x61, 0x0, 0x89, 0xf3, + 0xff, 0xff, 0x81, 0x4a, 0x1, 0xf8, 0x48, 0xbf, + 0x83, 0x94, 0x3, 0xdc, 0xa4, 0x5f, 0x84, 0x3, + 0xff, 0x9c, 0xe0, 0x1f, 0xfd, 0xb2, 0x44, 0x8, + 0x7, 0x1d, 0x31, 0x0, 0x7f, 0xff, 0x45, 0x2c, + 0x80, 0x3e, 0x38, 0xe7, 0x20, 0xf, 0xff, 0xd0, + 0xb5, 0x18, 0x7, 0xf8, 0xe3, 0xe0, 0xc0, 0x3f, + 0xf8, 0xcb, 0x3b, 0xbf, 0xf3, 0x88, 0x4, 0x4d, + 0xbb, 0xff, 0xc0, 0x94, 0x0, 0xff, 0xe1, 0x93, + 0x59, 0x80, 0x8c, 0x1, 0x8d, 0xdc, 0x60, 0x4f, + 0xd0, 0x60, 0x1f, 0xfc, 0x43, 0x22, 0xff, 0x84, + 0x40, 0x1c, 0x22, 0x22, 0xff, 0x8c, 0x40, 0x3f, + 0xf8, 0x44, 0xb6, 0x60, 0x2e, 0xe4, 0x0, 0xcf, + 0xd3, 0xee, 0x40, 0x4f, 0xd0, 0x42, 0x1, 0xff, + 0xc1, 0x6b, 0xee, 0xff, 0x5b, 0x8, 0x4, 0x4d, + 0x7d, 0xdf, 0xf5, 0x28, 0x7, 0xff, 0x5, 0x2e, + 0x4c, 0x5, 0xeb, 0x0, 0x3f, 0x1c, 0xc2, 0x0, + 0x8, 0xd0, 0xc0, 0x3f, 0xf8, 0x62, 0x3f, 0xe7, + 0x0, 0xf0, 0xb8, 0x8f, 0xfc, 0x1, 0xff, 0xc1, + 0x15, 0xf6, 0x10, 0x16, 0xa3, 0x10, 0xf, 0xe1, + 0x58, 0x83, 0xd5, 0x18, 0x80, 0x3f, 0xfd, 0xa7, + 0x30, 0x80, 0x2, 0x6b, 0x30, 0xf, 0xfe, 0x9, + 0xbc, 0x28, 0x80, 0x7f, 0xfb, 0x49, 0xfd, 0xc8, + 0x0, 0x75, 0x26, 0x1, 0xff, 0xe2, 0x70, 0xf, + 0xfe, 0x82, 0x44, 0x98, 0x0, 0x56, 0x5c, 0x40, + 0x3f, 0xfa, 0x89, 0x5f, 0xff, 0xfc, 0x1b, 0x61, + 0x0, 0x89, 0xf3, 0xff, 0xff, 0x83, 0xd2, 0x60, + 0x19, 0x39, 0xc8, 0xe, 0x61, 0x40, 0x3f, 0xfa, + 0xe6, 0x23, 0xff, 0xd7, 0x31, 0x0, 0xf2, 0x4f, + 0x67, 0x39, 0x0, 0x7f, 0xf5, 0xd2, 0x7b, 0xbf, + 0xfa, 0xfb, 0x6, 0x1, 0xf1, 0x98, 0x80, 0x3f, + 0xff, 0xe0, 0x1f, 0xfe, 0x16, 0xf4, 0x4f, 0xfe, + 0xf1, 0x8, 0x7, 0xff, 0x74, 0x9a, 0xae, 0xff, + 0xfb, 0x95, 0x42, 0x0, 0xff, 0xef, 0x11, 0x9f, + 0xff, 0x75, 0x7c, 0x40, 0x3f, 0xfb, 0xa9, 0x7b, + 0x99, 0xff, 0xdc, 0xb7, 0x20, 0xf, 0xfe, 0x22, + 0x57, 0xfe, 0xb6, 0x10, 0xf, 0xf2, 0xd7, 0x76, + 0xa6, 0x10, 0xf, 0xfe, 0xf8, + + /* U+68C0 "检" */ + 0x0, 0xff, 0xe2, 0x12, 0x33, 0x64, 0x20, 0xf, + 0xfe, 0x90, 0x9a, 0xa8, 0xc8, 0x3, 0xff, 0xc4, + 0xfd, 0x33, 0xbd, 0x0, 0x3f, 0xfa, 0x27, 0x3d, + 0x54, 0xcd, 0xb6, 0x10, 0xf, 0xff, 0xf8, 0x4, + 0x2d, 0xe, 0x40, 0x11, 0x1a, 0x88, 0x7, 0xff, + 0xfc, 0x5, 0x6e, 0x10, 0x3, 0x89, 0xfa, 0x50, + 0x40, 0x3f, 0xff, 0x82, 0xd5, 0x6a, 0x20, 0x3, + 0x55, 0x10, 0x0, 0x9a, 0xf5, 0xc8, 0x3, 0xff, + 0xf0, 0x4f, 0xb2, 0x82, 0x2, 0x95, 0xb5, 0x4c, + 0xa5, 0x10, 0x1, 0xc6, 0x5b, 0x10, 0x7, 0xff, + 0x34, 0x4c, 0xff, 0xc4, 0x20, 0x19, 0xf9, 0xc, + 0xfc, 0x42, 0x1, 0xfc, 0x29, 0x3f, 0x6, 0x0, + 0x26, 0xab, 0x51, 0x0, 0xa, 0xd6, 0xc1, 0x80, + 0x5, 0x27, 0x2d, 0x88, 0x3, 0xff, 0x92, 0x53, + 0xd9, 0x9f, 0xd0, 0x80, 0x18, 0xde, 0xf3, 0x3d, + 0xf2, 0x40, 0x1c, 0x29, 0x39, 0x6c, 0x40, 0x3, + 0x8f, 0x94, 0x0, 0xfc, 0x6f, 0x98, 0x73, 0x0, + 0xa, 0x4e, 0xe4, 0x20, 0x80, 0x7f, 0xf1, 0xb9, + 0x88, 0xbf, 0x8, 0x80, 0x3c, 0x24, 0x5f, 0x37, + 0x0, 0x42, 0x93, 0x96, 0xc4, 0x0, 0x15, 0xad, + 0x72, 0x0, 0xff, 0xe0, 0x9c, 0x66, 0x1c, 0xc0, + 0x23, 0x7b, 0xfb, 0x63, 0x0, 0xff, 0xe1, 0x13, + 0x5e, 0xef, 0xe8, 0x50, 0xe, 0x48, 0xdd, 0xfa, + 0xdc, 0x5e, 0xfe, 0xd8, 0x80, 0x2, 0x93, 0x94, + 0xa2, 0x1, 0xff, 0xc6, 0x38, 0xcd, 0x94, 0x10, + 0x0, 0xa4, 0xe6, 0xd3, 0x98, 0x80, 0x7f, 0xf1, + 0xd3, 0x10, 0x3, 0x92, 0x98, 0x80, 0x23, 0x6a, + 0xcc, 0x42, 0x8, 0x0, 0x55, 0x91, 0xaf, 0xf7, + 0x7f, 0xf9, 0x9f, 0xb9, 0x56, 0xc6, 0x1, 0x12, + 0xc6, 0x7d, 0x20, 0x7, 0xff, 0x10, 0xf1, 0xc0, + 0x3e, 0x39, 0x93, 0x8, 0x9b, 0x10, 0x80, 0x2, + 0x6f, 0x7f, 0x54, 0x33, 0x11, 0x7f, 0xf3, 0xd8, + 0x19, 0x27, 0x36, 0x98, 0xc0, 0x2, 0x9c, 0x80, + 0x1f, 0xfc, 0x32, 0xb5, 0x20, 0xf, 0xe4, 0x9a, + 0x74, 0xaa, 0x43, 0xd6, 0x62, 0x10, 0x40, 0xe7, + 0xbf, 0xff, 0xf9, 0xfa, 0xe4, 0x1, 0x12, 0xce, + 0x6e, 0x6d, 0xa0, 0x7, 0xff, 0xc, 0xa9, 0x48, + 0x3, 0xe4, 0x66, 0x8, 0x24, 0x5a, 0xa9, 0xe1, + 0x48, 0x3, 0xff, 0xc2, 0x46, 0x61, 0x0, 0xff, + 0xe1, 0x92, 0xa8, 0x80, 0xce, 0x0, 0xef, 0xb8, + 0x40, 0x15, 0xb8, 0x40, 0xf, 0xfe, 0x38, 0xa4, + 0x4d, 0x4b, 0x10, 0x7, 0xff, 0x8, 0xda, 0x64, + 0xec, 0x84, 0x1, 0xff, 0xc5, 0x3b, 0x92, 0x3, + 0xbb, 0x30, 0x7, 0x89, 0xa1, 0x84, 0x5, 0x30, + 0xc0, 0xdf, 0x3b, 0xfa, 0x4c, 0x3, 0xfc, 0x48, + 0xca, 0xda, 0x82, 0x1, 0xff, 0xc0, 0x3a, 0x86, + 0x64, 0x5e, 0x8, 0x7, 0xff, 0x11, 0x65, 0x84, + 0xe, 0xd4, 0x80, 0x3f, 0x8e, 0xe1, 0xe7, 0xe0, + 0xc0, 0xc9, 0x84, 0x5, 0xe8, 0xc0, 0x3f, 0xa, + 0xa0, 0x80, 0x13, 0xd4, 0x3, 0xfe, 0x4a, 0x71, + 0x0, 0x1d, 0x50, 0xc0, 0x3f, 0xf8, 0x44, 0xf2, + 0xa0, 0x3, 0xb6, 0x20, 0xf, 0xf8, 0x9a, 0x18, + 0x80, 0x32, 0xfa, 0x0, 0x5, 0xe9, 0x0, 0x3f, + 0x1e, 0xa8, 0x4, 0x86, 0x40, 0x1f, 0xc9, 0xce, + 0x20, 0x4, 0x96, 0x20, 0xf, 0xfe, 0x8, 0xac, + 0x49, 0x80, 0xe, 0x98, 0x40, 0x3f, 0xf9, 0x4b, + 0xc8, 0x0, 0x17, 0xd3, 0x0, 0xfc, 0xe6, 0x40, + 0x2, 0xd7, 0x0, 0xf8, 0x57, 0xd4, 0x40, 0x5b, + 0xd4, 0x40, 0x3f, 0xf8, 0x27, 0x30, 0xa2, 0x2, + 0xb2, 0xc2, 0x1, 0xff, 0xcc, 0x4d, 0x40, 0x0, + 0xa2, 0x8, 0x3, 0xe2, 0xd7, 0x0, 0x9f, 0x48, + 0x3, 0x85, 0xa5, 0x0, 0x4, 0xd6, 0x80, 0x1f, + 0xfc, 0x33, 0xb4, 0x20, 0x29, 0x85, 0x0, 0xff, + 0xe7, 0xa, 0x19, 0x0, 0xb, 0x10, 0x40, 0x3e, + 0x62, 0x10, 0x1, 0x11, 0xc0, 0x31, 0xcd, 0x18, + 0x1, 0x2e, 0x48, 0x3, 0xff, 0x8a, 0x71, 0xa, + 0x97, 0x20, 0xf, 0xfe, 0x81, 0x63, 0x80, 0x4b, + 0xea, 0x1, 0xf1, 0x63, 0x31, 0xe3, 0xdc, 0x2, + 0x49, 0x62, 0x1, 0x6f, 0x61, 0x0, 0xff, 0xe3, + 0x8a, 0xa9, 0x0, 0x3f, 0xfa, 0x6b, 0xd3, 0x2a, + 0xd8, 0x40, 0xf, 0x85, 0x22, 0x61, 0xd4, 0x80, + 0x5a, 0x14, 0x40, 0xe6, 0xd0, 0x3, 0xff, 0xd8, + 0x28, 0xcc, 0x53, 0x10, 0xf, 0xfe, 0x22, 0x44, + 0xc, 0x5, 0xa1, 0xc8, 0x3, 0xff, 0xfe, 0x1, + 0x13, 0x43, 0x8, 0x1c, 0xda, 0x0, 0x7f, 0xf9, + 0x45, 0xf3, 0xff, 0xff, 0xa1, 0xb2, 0x60, 0x11, + 0xc6, 0xff, 0xff, 0xf0, 0x6d, 0x80, 0x3f, 0xfb, + 0x2, 0xe2, 0x3f, 0xfe, 0x60, 0x30, 0xf, 0xfe, + 0xb8, 0xb5, 0xf7, 0x7f, 0xf9, 0xad, 0x40, 0x38, + + /* U+6A21 "模" */ + 0x0, 0xff, 0xe2, 0x12, 0x33, 0x64, 0x20, 0xf, + 0xfe, 0x49, 0x22, 0xae, 0x31, 0x0, 0xff, 0xe0, + 0x9, 0xaa, 0xf1, 0x88, 0x7, 0xff, 0x4c, 0x96, + 0x26, 0x77, 0x38, 0x7, 0xff, 0x20, 0x56, 0x2a, + 0xb4, 0xa0, 0x7, 0xff, 0x0, 0xaa, 0xea, 0xab, + 0xb1, 0x0, 0x7f, 0xff, 0xc0, 0x3f, 0xfe, 0x67, + 0x19, 0x9f, 0xf4, 0x98, 0x6, 0x5b, 0xdc, 0xcf, + 0xfb, 0x9c, 0x40, 0x21, 0x6e, 0xcc, 0xff, 0x4a, + 0x88, 0x7, 0xff, 0x5d, 0xc8, 0xcf, 0xfc, 0x42, + 0x1, 0xe1, 0x23, 0x3f, 0xf8, 0x84, 0x3, 0x84, + 0x8c, 0xff, 0xc4, 0x60, 0x1f, 0xfd, 0x84, 0xbd, + 0xdf, 0xf6, 0x39, 0x0, 0x64, 0x9d, 0xdf, 0xfe, + 0x5, 0x28, 0x80, 0x42, 0xd5, 0xbb, 0xfe, 0xa6, + 0x10, 0xf, 0x84, 0xd5, 0x9b, 0xf5, 0x61, 0x0, + 0x66, 0xc6, 0x6f, 0x94, 0x84, 0x8b, 0xfe, 0xf1, + 0x0, 0xc2, 0x64, 0x5f, 0xfc, 0x6, 0x30, 0xe, + 0x16, 0x22, 0xff, 0x8, 0x7, 0xf1, 0xa4, 0x4c, + 0xfe, 0x74, 0x10, 0xc, 0x6d, 0x33, 0xf7, 0x20, + 0x80, 0x7f, 0x85, 0x26, 0x23, 0x73, 0x80, 0x7f, + 0xf0, 0xb, 0x66, 0x22, 0x9c, 0x20, 0xf, 0xfe, + 0x41, 0x92, 0x27, 0xf1, 0x90, 0x7, 0x9, 0xa2, + 0x7c, 0x64, 0x20, 0x71, 0xbf, 0xff, 0x65, 0x44, + 0x6b, 0xdf, 0xff, 0xfe, 0x7, 0x5c, 0x47, 0x5f, + 0x7f, 0xf6, 0x39, 0x0, 0x7f, 0xf0, 0x5, 0x66, + 0xef, 0xf4, 0xb8, 0x7, 0x24, 0xdd, 0xfd, 0x8, + 0x1, 0x9, 0x80, 0x62, 0x34, 0x4f, 0xfe, 0x89, + 0x88, 0x6, 0x1f, 0x0, 0xff, 0xe5, 0x9e, 0x20, + 0x7, 0x2f, 0x30, 0x80, 0x7f, 0xf0, 0xca, 0xba, + 0xef, 0xff, 0xa3, 0xe, 0x1, 0xff, 0xd0, 0x24, + 0x40, 0x80, 0x79, 0x26, 0x98, 0x40, 0x3f, 0xf8, + 0x5e, 0x20, 0x1f, 0xfd, 0x11, 0x30, 0xf, 0xfe, + 0x78, 0xad, 0x90, 0x7, 0xf2, 0x45, 0xa8, 0x80, + 0x7f, 0xc4, 0xf9, 0xff, 0xff, 0xd1, 0xa5, 0x0, + 0xff, 0xe7, 0xb, 0xd9, 0x80, 0x7c, 0x68, 0x80, + 0x15, 0xbb, 0x20, 0x7, 0xf8, 0x4d, 0x9d, 0xff, + 0xfa, 0x2a, 0x40, 0x1f, 0xfc, 0xd1, 0x7a, 0x30, + 0xf, 0xcd, 0xd0, 0xe4, 0x2, 0xb3, 0x24, 0x0, + 0xfc, 0x77, 0x68, 0x8f, 0xfe, 0x8f, 0x20, 0x7, + 0xff, 0x30, 0x9a, 0x8c, 0x5, 0x10, 0x60, 0x1e, + 0x39, 0x85, 0x0, 0x13, 0x7b, 0x8, 0x7, 0x8e, + 0xe2, 0x67, 0xff, 0xa3, 0xe8, 0x1, 0xff, 0xcb, + 0x3a, 0xa1, 0x80, 0xbe, 0xe0, 0x7, 0xe1, 0x59, + 0x73, 0x34, 0x4b, 0x8, 0x7, 0x84, 0xd5, 0x9b, + 0xff, 0xa2, 0x84, 0x1, 0xff, 0xca, 0x4a, 0x62, + 0x1, 0x7a, 0x40, 0xf, 0xf8, 0xe3, 0x30, 0xe4, + 0x0, 0x39, 0xfe, 0xef, 0xfe, 0x1d, 0xb0, 0x80, + 0x64, 0x9d, 0xee, 0xff, 0xe2, 0x64, 0x10, 0x7, + 0xff, 0x4, 0x9e, 0x18, 0x40, 0x5a, 0x8c, 0x3, + 0xff, 0x94, 0x23, 0xff, 0xc5, 0x21, 0x0, 0x84, + 0x94, 0x84, 0x7f, 0xf8, 0xa0, 0x1f, 0xfc, 0x11, + 0x59, 0x83, 0x0, 0x13, 0x51, 0x80, 0x7f, 0xf6, + 0x8f, 0x58, 0x3, 0x17, 0x8, 0x7, 0xff, 0x4c, + 0xb5, 0x80, 0x24, 0xb9, 0x20, 0xf, 0xfe, 0x29, + 0xcf, 0x7f, 0xff, 0xf1, 0xf1, 0xc8, 0x3, 0x1c, + 0x6f, 0xff, 0xff, 0x2a, 0xd4, 0x3, 0xe3, 0x89, + 0x53, 0x78, 0x61, 0x0, 0xff, 0xe3, 0xf1, 0x17, + 0xff, 0x18, 0x40, 0x3f, 0xf8, 0x42, 0x45, 0xff, + 0xc7, 0x0, 0xff, 0x25, 0x64, 0x18, 0x7, 0xff, + 0x20, 0xdf, 0x37, 0x7f, 0xf8, 0x79, 0x6a, 0x20, + 0x18, 0xe2, 0xa0, 0xc0, 0x31, 0xaf, 0x6e, 0xff, + 0xf1, 0x25, 0x40, 0x3f, 0xfc, 0xa2, 0x91, 0xb2, + 0x82, 0x0, 0x16, 0x87, 0x57, 0xe8, 0x30, 0x1, + 0x3e, 0xdb, 0x98, 0x80, 0x7f, 0xfb, 0xc5, 0x1e, + 0xbe, 0xdc, 0xc0, 0x2, 0x91, 0x92, 0x80, 0x11, + 0x3e, 0xd3, 0x10, 0xa, 0x46, 0x62, 0x9d, 0x4, + 0x3, 0xff, 0xc6, 0x24, 0x6a, 0xf3, 0x9d, 0xcb, + 0x85, 0x10, 0x1, 0x2c, 0xe5, 0xb9, 0x0, 0x7c, + 0x2b, 0x39, 0x6e, 0x60, 0x2, 0x58, 0xbe, 0xe6, + 0x4b, 0xa9, 0x90, 0x7, 0xff, 0x5c, 0x56, 0xb7, + 0xfb, 0x72, 0xa1, 0x8c, 0x40, 0x4d, 0xa7, 0x3b, + 0x69, 0x88, 0x3, 0xff, 0x82, 0x29, 0x19, 0xd9, + 0x2c, 0x62, 0x2, 0x6d, 0x15, 0x9b, 0xfd, 0x4a, + 0x20, 0x1f, 0xfd, 0x21, 0x59, 0x53, 0x23, 0x56, + 0x8a, 0xbd, 0xee, 0x64, 0xb1, 0x88, 0x7, 0xff, + 0x24, 0x4d, 0xa7, 0x3b, 0x6e, 0xa1, 0x90, 0x88, + 0xb7, 0x65, 0x10, 0x0, + + /* U+6B63 "正" */ + 0x0, 0xe4, 0x9e, 0xff, 0xff, 0xfd, 0x63, 0x90, + 0x7, 0xf1, 0x88, 0x7, 0xff, 0xe8, 0x40, 0x3f, + 0xc9, 0x19, 0x9f, 0xfd, 0x59, 0x40, 0xe, 0x48, + 0xcc, 0xff, 0xe8, 0xfb, 0x10, 0x7, 0xf1, 0x19, + 0xff, 0xf5, 0x48, 0x80, 0x1c, 0x26, 0x7f, 0xfd, + 0x22, 0x10, 0xf, 0xff, 0xf8, 0x7, 0xff, 0xfc, + 0x3, 0xff, 0xfe, 0x1, 0xff, 0xe1, 0x12, 0x33, + 0xe1, 0x0, 0xff, 0xff, 0x82, 0x4e, 0x66, 0xe6, + 0x20, 0xf, 0xff, 0xf8, 0x7, 0xff, 0xfc, 0x3, + 0xff, 0xbc, 0xb7, 0xff, 0xff, 0xcd, 0xe8, 0x30, + 0xf, 0xff, 0xf8, 0x7, 0xc2, 0x1, 0xff, 0xeb, + 0x48, 0xcc, 0xff, 0xe6, 0xed, 0x98, 0x7, 0xff, + 0xa8, 0x4c, 0xff, 0xf9, 0xe4, 0x1, 0xff, 0xff, + 0x0, 0xff, 0xff, 0x80, 0x7f, 0xff, 0xc0, 0x3f, + 0xff, 0xe0, 0x1f, 0xff, 0xf0, 0xf, 0xff, 0xf8, + 0x7, 0xff, 0xfc, 0x3, 0xff, 0xfa, 0x24, 0x67, + 0xfe, 0xd7, 0x0, 0xc7, 0xce, 0x67, 0xff, 0xc5, + 0x22, 0x0, 0x70, 0x99, 0xff, 0xf5, 0x48, 0x40, + 0x2, 0xfd, 0x99, 0xfe, 0x73, 0x0, 0xc2, 0xd5, + 0x99, 0xff, 0xc5, 0x94, 0x0, 0xe4, 0x8c, 0xcf, + 0xfe, 0xac, 0x20, 0x7, 0xff, 0xfc, 0x3, 0xf8, + + /* U+6BB5 "段" */ + 0x0, 0xff, 0xff, 0x80, 0x7f, 0xf6, 0x89, 0x1a, + 0x2f, 0x7f, 0xb2, 0x10, 0x40, 0x3f, 0xfe, 0xc2, + 0x68, 0xd1, 0x57, 0xbf, 0xb7, 0x2e, 0x84, 0x2, + 0x6d, 0x12, 0x82, 0x1, 0x96, 0xbf, 0xff, 0xf9, + 0x9d, 0x26, 0x1, 0xff, 0xc9, 0x37, 0xba, 0x99, + 0x56, 0x77, 0xf6, 0x5c, 0xba, 0xa1, 0x0, 0x4, + 0x91, 0xa2, 0xf7, 0xb9, 0x90, 0x82, 0x1, 0xc2, + 0x1, 0xff, 0xe5, 0xf5, 0x53, 0x31, 0x4c, 0x40, + 0x49, 0x15, 0xe2, 0xaf, 0x7b, 0x9b, 0x72, 0xe8, + 0x42, 0x1, 0xff, 0xc3, 0x49, 0xef, 0xff, 0xfb, + 0x60, 0x80, 0x3f, 0xfa, 0xa2, 0xd7, 0xfd, 0xb7, + 0x50, 0xea, 0x84, 0x20, 0x1f, 0xfc, 0xd1, 0x0, + 0xff, 0xe0, 0x88, 0x7, 0xff, 0x58, 0x5c, 0x3, + 0xff, 0xae, 0x60, 0x1f, 0xff, 0xf0, 0x8, 0x4d, + 0xc0, 0x30, 0x88, 0x3, 0xff, 0x9c, 0x48, 0x83, + 0x10, 0xf, 0xfe, 0x31, 0x2a, 0x27, 0xff, 0x18, + 0xc8, 0x3, 0xe5, 0xf2, 0x0, 0x88, 0x8c, 0x1, + 0xff, 0xce, 0x1c, 0xac, 0xeb, 0x61, 0x0, 0xff, + 0xe1, 0xa, 0xcd, 0xdf, 0xff, 0x1b, 0xd4, 0x80, + 0x38, 0xf1, 0x4, 0x0, 0x29, 0x84, 0x1, 0xff, + 0xc8, 0x70, 0xf, 0x8, 0x4, 0xe0, 0x1f, 0xfc, + 0x61, 0x1f, 0xfe, 0x3b, 0x88, 0x6, 0x27, 0xf7, + 0x20, 0x1, 0x35, 0x20, 0x7, 0xff, 0x4, 0xc4, + 0x3, 0x9, 0x19, 0x88, 0xa4, 0xb5, 0x10, 0x3, + 0x18, 0x80, 0x7f, 0xf0, 0x85, 0xf7, 0xbb, 0xff, + 0x8d, 0x6c, 0x44, 0x59, 0xf8, 0x30, 0x0, 0xac, + 0xc1, 0x80, 0x7f, 0xf0, 0x85, 0x54, 0x20, 0x12, + 0x46, 0x6e, 0xd6, 0xe6, 0x0, 0x4c, 0x40, 0xf, + 0xfe, 0xc8, 0xb4, 0xd3, 0x10, 0x9, 0xbe, 0xda, + 0x0, 0x7f, 0xf1, 0x4e, 0x72, 0xa1, 0x98, 0xab, + 0xcc, 0xf1, 0x39, 0x4c, 0x20, 0x1f, 0xfd, 0x91, + 0x6b, 0xc8, 0x78, 0xdd, 0x41, 0x88, 0x7, 0xff, + 0x20, 0x95, 0xe6, 0x55, 0x4b, 0xaa, 0x4c, 0x3b, + 0x18, 0x80, 0x7f, 0xf1, 0x45, 0xbb, 0x77, 0xff, + 0x8f, 0x2a, 0x6, 0x27, 0x19, 0xdf, 0xff, 0xfd, + 0x2e, 0xff, 0x6c, 0xa8, 0x80, 0x7f, 0xf2, 0x4, + 0x8b, 0xff, 0x92, 0x60, 0x1f, 0xfd, 0xc3, 0x1, + 0x10, 0x7, 0xff, 0x1c, 0x56, 0x73, 0x3f, 0xf8, + 0xf2, 0xe0, 0x6, 0xbf, 0xf5, 0xb9, 0x88, 0x0, + 0xe3, 0xbf, 0xff, 0xf8, 0xbb, 0x6, 0x1, 0x85, + 0xe9, 0x0, 0x3f, 0xf9, 0x24, 0xa6, 0x7f, 0xfc, + 0x72, 0x10, 0xf, 0x2e, 0xb0, 0x80, 0xe, 0x61, + 0x0, 0x3f, 0xf8, 0x42, 0xb1, 0x26, 0x1, 0x1c, + 0xd9, 0x80, 0x7f, 0xf9, 0xc5, 0x65, 0xc8, 0x0, + 0x2d, 0xe, 0x40, 0x1f, 0xf1, 0xcc, 0x28, 0x80, + 0x5, 0x61, 0xc8, 0x3, 0xff, 0xb6, 0x24, 0x68, + 0xac, 0xee, 0x52, 0x0, 0xe3, 0x9b, 0x40, 0x8, + 0xe3, 0x9c, 0x80, 0x3c, 0x29, 0x3c, 0xe4, 0x1, + 0x24, 0x5a, 0x0, 0x7f, 0xf3, 0x49, 0x51, 0x59, + 0xe2, 0x6a, 0xf3, 0x75, 0xdf, 0xee, 0xdc, 0xba, + 0x98, 0x87, 0xb8, 0x7, 0x85, 0xa6, 0x48, 0x1, + 0x1c, 0x7c, 0xa0, 0x81, 0x3e, 0xdb, 0x10, 0x0, + 0x52, 0x69, 0x84, 0x3, 0xff, 0x80, 0x4b, 0x13, + 0x57, 0x9c, 0xc2, 0x1, 0xa, 0xcd, 0xd4, 0xc3, + 0xb2, 0xa1, 0x91, 0x4, 0x2, 0x12, 0x34, 0x56, + 0x7f, 0x70, 0xf, 0xc4, 0xd5, 0x45, 0x10, 0x1, + 0x35, 0x66, 0x50, 0x60, 0x11, 0x35, 0x51, 0x84, + 0x3, 0xff, 0x86, 0x48, 0xca, 0x86, 0x42, 0x1, + 0xe1, 0x33, 0x22, 0xb3, 0xc4, 0xd5, 0xe6, 0xf7, + 0xfb, 0xb7, 0x2e, 0xa6, 0x14, 0x80, 0x3f, 0xc2, + 0xb5, 0x46, 0x10, 0x0, 0x91, 0x88, 0x0, 0x52, + 0x7e, 0x50, 0x40, 0x3f, 0xf8, 0x84, 0x94, 0xcf, + 0x12, 0xe8, 0x20, 0x10, 0xbe, 0xe6, 0x2e, 0xa6, + 0x1d, 0x95, 0xc, 0x84, 0x3, 0xff, 0x90, 0x28, + 0xf5, 0x2c, 0x20, 0x1f, 0x85, 0x6a, 0x8a, 0x40, + 0x1f, 0xfc, 0x63, 0x69, 0x87, 0x6b, 0x30, 0xf, + 0xfe, 0xb9, 0x2c, 0x5e, 0xf5, 0xc2, 0x90, 0x4, + 0x4a, 0xec, 0x62, 0x0, 0x13, 0x7a, 0xdd, 0x5b, + 0xa1, 0x0, 0x7f, 0xf8, 0xc4, 0xd5, 0xa2, 0xb3, + 0xbf, 0x69, 0xd0, 0x80, 0x22, 0x58, 0xce, 0xda, + 0x89, 0xcf, 0xb8, 0x41, 0x0, 0x89, 0x22, 0xf7, + 0xf6, 0xe5, 0xd4, 0xc4, 0x3, 0xff, 0xb0, 0x2d, + 0x7d, 0x95, 0x2e, 0xa6, 0x20, 0x11, 0x23, 0x4e, + 0x76, 0xd3, 0x98, 0x80, 0x70, 0xa3, 0xdf, 0x64, + 0xb2, 0x10, 0x6, 0x24, 0x68, 0xac, 0xc4, 0x18, + 0x7, 0xff, 0x58, 0x5a, 0x60, 0xc4, 0x91, 0xa2, + 0xb3, 0xbf, 0x6e, 0x58, 0xc4, 0x3, 0xff, 0x86, + 0x6d, 0x37, 0xbd, 0xb7, 0xc, 0x84, 0x27, 0x1f, + 0x6, 0x1, 0xfc, 0x71, 0xdf, 0xf7, 0x41, 0x80, + 0x7f, 0xf1, 0x89, 0xf3, 0xb6, 0xe5, 0xd4, 0xc4, + 0x3, 0xff, 0x9e, 0x24, 0x8f, 0x37, 0xbd, 0x8e, + 0x40, 0x18, + + /* U+6CA1 "没" */ + 0x0, 0xff, 0x13, 0x4d, 0x3a, 0x90, 0x7, 0xff, + 0xfc, 0x3, 0xc5, 0x1f, 0x2c, 0xb1, 0x5b, 0xd9, + 0x2e, 0x82, 0x1, 0xff, 0xc2, 0x16, 0xcf, 0xff, + 0xfe, 0x8d, 0x28, 0x7, 0xff, 0x3c, 0xa3, 0xee, + 0x14, 0x80, 0x2, 0x6d, 0x17, 0xdb, 0x2c, 0x40, + 0x1f, 0xff, 0xd2, 0x47, 0xad, 0xec, 0x85, 0x20, + 0x8, 0x9a, 0x76, 0xd8, 0x40, 0x3f, 0xf8, 0x47, + 0x1b, 0xdd, 0xff, 0xc3, 0xb6, 0x20, 0xf, 0xfe, + 0xe0, 0x9b, 0xd6, 0xea, 0x54, 0x80, 0x9e, 0x18, + 0x40, 0x3f, 0xf8, 0x62, 0x62, 0x3f, 0xfc, 0x36, + 0x10, 0xf, 0xff, 0x11, 0x35, 0x67, 0x64, 0x18, + 0x7, 0xf1, 0xf0, 0x80, 0x66, 0x31, 0x0, 0xff, + 0xfb, 0x8, 0xc0, 0x1f, 0xf3, 0x11, 0x0, 0x21, + 0x36, 0x0, 0xff, 0xea, 0x8a, 0xc4, 0x14, 0xc4, + 0x3, 0xff, 0xb8, 0x9a, 0x80, 0x19, 0x34, 0xc0, + 0x3f, 0xfa, 0xc6, 0x8f, 0x59, 0xae, 0x40, 0x1f, + 0x91, 0x9d, 0x4c, 0x40, 0x3f, 0xf9, 0x44, 0xde, + 0xc2, 0x1, 0x2f, 0xa0, 0x7, 0xff, 0x58, 0xc4, + 0x40, 0x18, 0x4c, 0x3, 0x85, 0x6a, 0x93, 0x15, + 0x9d, 0xcc, 0x97, 0x42, 0x0, 0xff, 0xe1, 0x13, + 0xf4, 0xa0, 0x4, 0x71, 0x5, 0x0, 0xff, 0xe3, + 0xf8, 0x80, 0x67, 0xc5, 0x43, 0x3c, 0x8d, 0x74, + 0x40, 0x13, 0x18, 0x80, 0x70, 0xa7, 0x43, 0x20, + 0x80, 0x4, 0xda, 0x2f, 0x7a, 0xe1, 0x48, 0x3, + 0x84, 0xde, 0xf2, 0xc, 0x2, 0x39, 0xe7, 0x20, + 0xf, 0xfe, 0x39, 0x22, 0x8, 0x2, 0x26, 0xab, + 0xcc, 0xd7, 0x2c, 0x40, 0x12, 0xfa, 0x0, 0x7c, + 0x28, 0xd3, 0x7d, 0xcc, 0x96, 0x31, 0x0, 0xa, + 0x3d, 0x7b, 0x90, 0x1c, 0x66, 0x21, 0x4, 0x0, + 0x6f, 0x7a, 0xc4, 0x1, 0xff, 0xca, 0x38, 0xfb, + 0x97, 0x65, 0x5f, 0xcc, 0xc7, 0x8a, 0xda, 0x51, + 0x0, 0xff, 0xe0, 0x89, 0xb4, 0xe7, 0x6c, 0xb1, + 0x99, 0xf9, 0xc8, 0xe, 0x3e, 0x55, 0x1e, 0xb7, + 0x21, 0x4, 0x3, 0xff, 0x9c, 0x48, 0xd1, 0x35, + 0x5f, 0xa6, 0x50, 0xea, 0x40, 0x1f, 0xfc, 0xa2, + 0x69, 0xcc, 0x41, 0x80, 0x71, 0x36, 0x3, 0xd6, + 0xff, 0xff, 0xf7, 0x36, 0xe1, 0x4, 0x3, 0xff, + 0xfe, 0x1, 0xfe, 0x25, 0x20, 0x10, 0xf, 0xfe, + 0xe3, 0xce, 0xef, 0x53, 0x98, 0x80, 0x9, 0xef, + 0x77, 0xff, 0x93, 0x6e, 0x40, 0x1c, 0x4d, 0x28, + 0x1, 0xff, 0xd3, 0x17, 0xce, 0xb7, 0x30, 0x8, + 0x48, 0xbc, 0xb6, 0x86, 0x0, 0x26, 0xe7, 0x32, + 0x2f, 0xfe, 0x29, 0xa7, 0xb9, 0x0, 0x64, 0xb9, + 0x30, 0xf, 0xfe, 0x9a, 0x44, 0x98, 0xa4, 0x7b, + 0x8, 0x7, 0xf1, 0xcc, 0x28, 0x80, 0xad, 0xd9, + 0x0, 0x3f, 0xf8, 0x42, 0xb7, 0x8, 0x1, 0x8e, + 0x25, 0x84, 0x3, 0xff, 0xa4, 0x4f, 0xc, 0x20, + 0x1, 0x58, 0x61, 0x0, 0xff, 0xa, 0xdc, 0x18, + 0x0, 0x56, 0xa8, 0xa4, 0x1, 0xfc, 0x4d, 0x56, + 0xa2, 0x1, 0x1c, 0x73, 0x90, 0x7, 0xff, 0x48, + 0x56, 0x20, 0x60, 0x11, 0xcc, 0x20, 0x7, 0xff, + 0x8, 0x5b, 0xa9, 0x4, 0x5, 0x6b, 0xe9, 0x44, + 0x2, 0x26, 0xbc, 0x94, 0x10, 0x0, 0xad, 0x6b, + 0x90, 0x7, 0xff, 0x4c, 0xe6, 0x14, 0x2, 0x16, + 0x87, 0x20, 0xf, 0xfe, 0x29, 0x2d, 0xec, 0x18, + 0x0, 0x96, 0xb2, 0xa6, 0xf2, 0x50, 0x40, 0x2, + 0x91, 0xb4, 0xa2, 0x1, 0xff, 0xd3, 0x16, 0x87, + 0x20, 0x8, 0xe6, 0xd0, 0x3, 0xff, 0x94, 0x6f, + 0xb4, 0xa2, 0x0, 0x25, 0x64, 0x10, 0x0, 0xa4, + 0xe5, 0xb9, 0x80, 0x7f, 0xf5, 0x5, 0x6e, 0x10, + 0x2, 0x16, 0x87, 0x20, 0xf, 0xfe, 0x51, 0x23, + 0xdc, 0xa0, 0x80, 0x7f, 0x9f, 0x15, 0x8, 0x3, + 0xff, 0xa8, 0x91, 0x5, 0x10, 0x9, 0x2e, 0x10, + 0x3, 0xff, 0x8c, 0x48, 0xf3, 0x9d, 0xb7, 0xa, + 0x62, 0x0, 0x24, 0x77, 0x29, 0x0, 0x4, 0xd6, + 0x2f, 0x7b, 0x25, 0xd0, 0x80, 0x3f, 0xf9, 0x87, + 0x12, 0xc4, 0x1, 0x1c, 0x4a, 0x88, 0x7, 0xf0, + 0x92, 0x2b, 0xc5, 0x5e, 0xf6, 0xdc, 0x31, 0x88, + 0x0, 0x4d, 0xa7, 0x3b, 0x6e, 0x21, 0x5b, 0xd9, + 0x2c, 0x62, 0x0, 0x13, 0x68, 0xbd, 0xfd, 0xca, + 0x97, 0x64, 0x31, 0x0, 0xff, 0xe0, 0x92, 0x20, + 0x80, 0x21, 0x68, 0x72, 0x0, 0xf2, 0x46, 0x77, + 0xf6, 0xdd, 0x43, 0xaa, 0x10, 0x80, 0x4, 0xd6, + 0x2f, 0x7b, 0x25, 0x8c, 0x40, 0x3c, 0x26, 0xd3, + 0x9f, 0x92, 0xc6, 0x20, 0x18, 0x8d, 0x5a, 0x26, + 0xf3, 0xbf, 0x61, 0x0, 0x3f, 0x89, 0xf3, 0x65, + 0x99, 0x70, 0x80, 0x1f, 0x92, 0xd0, 0xc0, 0x30, + 0x9a, 0xbc, 0x56, 0x6f, 0xf6, 0x53, 0xa1, 0x0, + 0x7f, 0xf1, 0x44, 0xda, 0x73, 0xbf, 0xb2, 0xa1, + 0x90, 0xc4, 0x2, 0x16, 0x98, 0x40, 0xf, 0xfe, + 0x1, 0x34, 0xc9, 0x44, 0x3, 0xfc, 0x73, 0xf9, + 0x8e, 0xfe, 0xca, 0x87, 0x53, 0x20, 0xf, 0xfe, + 0x98, 0x9a, 0xbc, 0xde, 0x77, 0x37, 0x31, 0x8, + 0x1, 0xc0, + + /* U+6D4B "测" */ + 0x0, 0xfc, 0x2b, 0x59, 0x89, 0x52, 0x10, 0xf, + 0xff, 0x78, 0xb5, 0xf7, 0x56, 0xc2, 0x1, 0xfc, + 0x91, 0x6a, 0x66, 0x6a, 0xdf, 0xc9, 0x62, 0x0, + 0xf1, 0xb4, 0x47, 0xff, 0x3d, 0xcc, 0x3, 0xff, + 0x92, 0x23, 0x0, 0x7f, 0xf0, 0x12, 0x7e, 0xe1, + 0x48, 0x0, 0x26, 0xd3, 0xbd, 0x6e, 0x62, 0xd, + 0x8e, 0xff, 0xfc, 0xfb, 0x51, 0x0, 0xf2, 0x3c, + 0xcc, 0xc6, 0x1, 0xff, 0xcc, 0x14, 0x7a, 0xde, + 0xb7, 0x31, 0x0, 0xa, 0x4d, 0x28, 0x80, 0x71, + 0xc6, 0x6e, 0xff, 0xf0, 0xf2, 0xc, 0x3, 0xfe, + 0x12, 0xc6, 0x6b, 0x18, 0x3, 0xff, 0xa2, 0x29, + 0x19, 0xf6, 0xeb, 0x1b, 0x28, 0x20, 0x1c, 0xe2, + 0x45, 0xff, 0xc4, 0x31, 0x70, 0xf, 0xff, 0x40, + 0xa4, 0x53, 0x98, 0x7, 0xff, 0xd, 0x22, 0xee, + 0x73, 0x0, 0xff, 0xff, 0x80, 0x71, 0x1a, 0x25, + 0xae, 0x1, 0xff, 0xff, 0x0, 0xff, 0xf6, 0x8a, + 0x4d, 0xda, 0x14, 0x80, 0x3f, 0xff, 0xe0, 0x11, + 0xc4, 0xb2, 0x21, 0xeb, 0x7b, 0x25, 0x8c, 0x40, + 0x3f, 0xff, 0x87, 0x39, 0x89, 0x52, 0x0, 0x9, + 0xb4, 0xe7, 0xe4, 0xa9, 0x0, 0x7f, 0xfe, 0x84, + 0xda, 0xb7, 0xb2, 0x14, 0x80, 0x2, 0x6f, 0xec, + 0x20, 0x1f, 0xff, 0xe1, 0x37, 0xad, 0xd4, 0xbc, + 0x55, 0x10, 0x40, 0x3f, 0xff, 0xe0, 0x18, 0x9a, + 0x1d, 0x0, 0x3f, 0xff, 0xe0, 0x1f, 0xff, 0xf0, + 0xf, 0xfe, 0xf0, 0x80, 0x7f, 0xfc, 0xc5, 0xaa, + 0xe1, 0x48, 0x3, 0xff, 0x8a, 0x2e, 0x0, 0x13, + 0x0, 0xff, 0xf6, 0x13, 0x5a, 0xa3, 0xd7, 0x30, + 0x80, 0x7f, 0xf0, 0x8f, 0xc4, 0x0, 0x62, 0xe0, + 0x1f, 0xfe, 0xa3, 0xa9, 0x20, 0x9, 0x29, 0xc4, + 0x3, 0xff, 0x84, 0xc2, 0x60, 0x1, 0xf2, 0x0, + 0xff, 0xf4, 0xa5, 0x30, 0x80, 0x49, 0xcc, 0x20, + 0x1f, 0xfc, 0x22, 0xc4, 0x10, 0x15, 0x31, 0x0, + 0xff, 0xf4, 0x2f, 0x30, 0x80, 0x4b, 0xca, 0x1, + 0xe5, 0xbe, 0xea, 0x98, 0x40, 0x95, 0x8, 0x0, + 0x9a, 0x80, 0x1e, 0x6b, 0xff, 0xb1, 0x84, 0x3, + 0x85, 0xe7, 0x76, 0x84, 0x0, 0xff, 0xe6, 0xb, + 0x72, 0x80, 0x42, 0xdc, 0xa0, 0x1f, 0x84, 0x78, + 0x0, 0x55, 0x43, 0x0, 0x2f, 0xb2, 0x3d, 0x51, + 0xcc, 0x3, 0xff, 0x86, 0x24, 0x5c, 0x20, 0x1f, + 0xfc, 0xb2, 0x9b, 0x40, 0x8, 0x5a, 0x90, 0x3, + 0xff, 0x84, 0x4f, 0xce, 0x40, 0x4d, 0x2a, 0x7, + 0x6a, 0xa8, 0xdb, 0x62, 0x0, 0xff, 0xee, 0xa5, + 0xb1, 0x0, 0x45, 0x34, 0x60, 0x1f, 0xfc, 0x1, + 0x49, 0xf8, 0x30, 0x15, 0x98, 0x30, 0x27, 0xdb, + 0x62, 0x14, 0x9c, 0xa5, 0x10, 0xf, 0xfe, 0xc0, + 0xb7, 0xb0, 0x80, 0x49, 0x6c, 0x40, 0x1f, 0xc2, + 0x6d, 0x5f, 0x6c, 0x40, 0x6f, 0xb4, 0x82, 0x1, + 0x85, 0x27, 0xe9, 0x4, 0x4b, 0x59, 0x6, 0x1, + 0xff, 0xc8, 0x70, 0xe, 0x10, 0xf, 0xa, 0x62, + 0x80, 0x42, 0xbe, 0xc2, 0x1, 0xe1, 0x48, 0xcf, + 0xc9, 0x51, 0x12, 0x46, 0x62, 0xc, 0x3, 0xfc, + 0x4b, 0x74, 0xc4, 0x4, 0xfb, 0x28, 0x1, 0xc4, + 0xd7, 0xbb, 0xfb, 0xe4, 0xc0, 0x2, 0x44, 0x0, + 0xf8, 0x56, 0xbf, 0x25, 0xe2, 0x8, 0x1, 0xf8, + 0x53, 0x14, 0xcc, 0xd3, 0x9f, 0x6e, 0x60, 0x1f, + 0xfc, 0x44, 0x9e, 0x75, 0x6b, 0xb2, 0x0, 0x71, + 0x21, 0x81, 0x17, 0xc0, 0x46, 0xaf, 0x50, 0x80, + 0x1f, 0xe1, 0x36, 0x86, 0x20, 0xf, 0xf9, 0x27, + 0x72, 0x58, 0xc4, 0x3, 0xff, 0x92, 0x71, 0x52, + 0xa4, 0x1, 0xf1, 0x46, 0xff, 0xfd, 0xdb, 0x95, + 0x8, 0x20, 0x18, + + /* U+6D88 "消" */ + 0x0, 0xff, 0xf4, 0x92, 0x2a, 0xe3, 0x20, 0xf, + 0xfe, 0x98, 0xad, 0x65, 0xc2, 0x90, 0x7, 0xff, + 0x1c, 0x88, 0x20, 0x1f, 0xfc, 0x21, 0x58, 0xaa, + 0xd0, 0x80, 0x1f, 0xfc, 0x22, 0x44, 0x10, 0x80, + 0x7f, 0xc9, 0x16, 0xa6, 0x8f, 0x5b, 0xd9, 0x2c, + 0x60, 0x1f, 0xc2, 0xb3, 0xbf, 0xbb, 0x39, 0x0, + 0x7f, 0xf5, 0x45, 0xba, 0xed, 0xbd, 0xb0, 0x80, + 0x1f, 0x92, 0x7f, 0x25, 0x8c, 0x40, 0x4d, 0xa7, + 0x3a, 0xdc, 0xc4, 0x3, 0xa, 0x7b, 0x0, 0x47, + 0x1c, 0xe4, 0x1, 0xff, 0xd2, 0x48, 0x81, 0x80, + 0x44, 0xb6, 0x80, 0x1f, 0xe1, 0x36, 0x9c, 0xfc, + 0x84, 0x10, 0x0, 0xa4, 0x65, 0x28, 0x80, 0x42, + 0xd3, 0x23, 0x0, 0x8e, 0x39, 0x88, 0x3, 0xff, + 0x9c, 0x2d, 0xc, 0x20, 0x1, 0x59, 0x83, 0x0, + 0xff, 0xe2, 0x9, 0xbd, 0xfe, 0x39, 0x92, 0x4c, + 0x94, 0x40, 0x38, 0x9b, 0xa0, 0x80, 0x23, 0x88, + 0x20, 0x7, 0xff, 0x2c, 0x56, 0xa0, 0xc0, 0x24, + 0x8b, 0x40, 0xf, 0xfe, 0x50, 0x9c, 0x66, 0xdb, + 0x10, 0x7, 0xf1, 0x3c, 0x28, 0x80, 0x5, 0x61, + 0x84, 0x3, 0xff, 0x8e, 0x29, 0x76, 0x41, 0x0, + 0x24, 0xd3, 0x8, 0x7, 0xff, 0x79, 0x65, 0xc8, + 0x51, 0xa9, 0x40, 0x3f, 0xf9, 0x2f, 0x8e, 0x84, + 0x93, 0x26, 0x10, 0xf, 0xff, 0x9, 0xce, 0xf5, + 0xcb, 0x18, 0x80, 0x7f, 0xf1, 0xc4, 0xda, 0x6f, + 0x6d, 0x88, 0x3, 0xff, 0x82, 0x6f, 0x9b, 0x90, + 0xa4, 0x1, 0xff, 0xc8, 0x16, 0xac, 0xcf, 0xfe, + 0x34, 0x98, 0x6, 0x48, 0xdc, 0xcf, 0xfe, 0x24, + 0x20, 0x7, 0x85, 0x66, 0x46, 0x46, 0xf5, 0xbd, + 0x70, 0xa4, 0x1, 0xff, 0xc3, 0x31, 0x63, 0x3f, + 0xfe, 0x29, 0x8, 0x7, 0x84, 0x8c, 0xff, 0xf8, + 0x84, 0x20, 0x1e, 0x15, 0xaf, 0xb8, 0x52, 0x0, + 0xa, 0x3d, 0x6e, 0xa5, 0x48, 0x3, 0xff, 0x8c, + 0x6f, 0x57, 0x7f, 0xfd, 0x19, 0x51, 0x0, 0xff, + 0xe1, 0x8a, 0x3d, 0x6e, 0xa9, 0x88, 0x2, 0x26, + 0xad, 0xa5, 0x10, 0xf, 0xfe, 0x1b, 0xea, 0xa2, + 0x7f, 0xf4, 0x88, 0xc0, 0x3f, 0xf9, 0x4, 0xb3, + 0xba, 0x94, 0x10, 0x15, 0xe4, 0x10, 0xf, 0xff, + 0xf1, 0x35, 0xe6, 0x54, 0x82, 0x1, 0xff, 0xc5, + 0x32, 0x11, 0xff, 0xe9, 0x0, 0x7f, 0xf4, 0x48, + 0xc8, 0x3, 0xff, 0x8e, 0x93, 0xbd, 0xdf, 0xfd, + 0x1c, 0x72, 0x0, 0xff, 0xf3, 0x9, 0x17, 0xff, + 0x48, 0x44, 0x1, 0xff, 0xd2, 0x26, 0x97, 0x31, + 0x0, 0xff, 0xe1, 0x25, 0xee, 0xff, 0xf4, 0xb1, + 0x88, 0x3, 0xff, 0x9e, 0x2b, 0x32, 0x68, 0xcd, + 0x72, 0x0, 0xff, 0xfe, 0x9c, 0xc2, 0x0, 0x47, + 0x6a, 0x40, 0x1f, 0xfc, 0x13, 0x10, 0xf, 0xfe, + 0x88, 0x80, 0x7f, 0xf3, 0x85, 0xa1, 0xc8, 0x0, + 0x2b, 0xe, 0x40, 0x1f, 0xfc, 0x14, 0x9e, 0xff, + 0xff, 0xe8, 0xe3, 0x90, 0x7, 0xff, 0x2d, 0x22, + 0x8, 0x1, 0x14, 0xc2, 0x0, 0x7f, 0xf1, 0x4, + 0x44, 0x5f, 0xfd, 0x11, 0x0, 0xff, 0xe5, 0x93, + 0xc3, 0x8, 0x0, 0x56, 0x1c, 0x80, 0x3f, 0xf8, + 0x89, 0x7d, 0xbb, 0xff, 0xd1, 0xc7, 0x20, 0xf, + 0xfe, 0x38, 0xb4, 0xc1, 0x80, 0x45, 0x30, 0xa0, + 0x1f, 0xff, 0xb4, 0xb8, 0x40, 0x8, 0x5a, 0x5c, + 0x80, 0x3f, 0xff, 0x49, 0x32, 0x51, 0x0, 0x92, + 0x20, 0x80, 0x1f, 0xfd, 0xd1, 0x34, 0x4f, 0xf2, + 0x99, 0x80, 0x31, 0x88, 0x7, 0xf1, 0x9, 0x80, + 0x62, 0x78, 0x61, 0x0, 0xff, 0xef, 0xaf, 0xdd, + 0xff, 0x42, 0x8, 0x4, 0x9e, 0xa0, 0x1f, 0xc4, + 0xb5, 0xb9, 0x32, 0xe8, 0x30, 0xf, 0xff, 0x0, + 0xbf, 0x29, 0x9f, 0xc8, 0x85, 0x67, 0x9c, 0xa6, + 0x10, 0xc, + + /* U+6E05 "清" */ + 0x0, 0xff, 0xf3, 0x88, 0xf8, 0x3, 0xff, 0xb2, + 0x2b, 0x32, 0x74, 0x20, 0xf, 0xfe, 0xb8, 0xb5, + 0x77, 0x6d, 0x72, 0x0, 0xff, 0xea, 0x93, 0xed, + 0x33, 0x22, 0xf7, 0xb2, 0x5d, 0x4, 0x3, 0xff, + 0xa6, 0xe0, 0x18, 0x40, 0x3f, 0xfa, 0xe4, 0xdf, + 0x2e, 0x82, 0x0, 0x13, 0x68, 0xbe, 0xda, 0x63, + 0x0, 0x89, 0xf3, 0xff, 0xff, 0x8f, 0xd2, 0x60, + 0x18, 0xa3, 0x7f, 0xff, 0xf9, 0x1d, 0x6, 0x1, + 0xff, 0x9, 0xb4, 0x5f, 0x72, 0xe1, 0x48, 0x2, + 0x25, 0x9c, 0xa5, 0x13, 0x35, 0xb3, 0x7f, 0xf1, + 0xd4, 0xc4, 0x3, 0x9, 0xab, 0x37, 0xff, 0x27, + 0x44, 0x3, 0xff, 0x8a, 0x28, 0xf5, 0xba, 0xa6, + 0x21, 0x38, 0x82, 0x88, 0x91, 0xe6, 0x7f, 0xf8, + 0xf7, 0x4a, 0x1, 0x8a, 0xe2, 0x67, 0xff, 0x91, + 0xa, 0x40, 0x1f, 0xfc, 0xa2, 0x59, 0xde, 0xc7, + 0x20, 0xe, 0x47, 0x99, 0xff, 0xe2, 0xdd, 0x28, + 0x6, 0x2b, 0x89, 0x9f, 0xfe, 0x34, 0x20, 0x80, + 0x7f, 0xf6, 0x4, 0xb1, 0x9b, 0xff, 0x8a, 0xa6, + 0x20, 0x18, 0x4d, 0x59, 0xbf, 0xf8, 0xca, 0x66, + 0x0, 0xff, 0xec, 0xb, 0x5f, 0xff, 0xff, 0x17, + 0xa4, 0xc0, 0x31, 0x46, 0xff, 0xff, 0xf1, 0xb5, + 0xc8, 0x3, 0xfc, 0x6f, 0x52, 0xea, 0x42, 0x1, + 0xff, 0xdc, 0x70, 0xc, 0x20, 0x1f, 0xfd, 0x34, + 0x9d, 0x85, 0x68, 0xad, 0xed, 0xb8, 0x63, 0x10, + 0xf, 0x85, 0xaf, 0xff, 0xff, 0x95, 0xd2, 0x80, + 0x18, 0xe3, 0x7f, 0xff, 0xf9, 0x7b, 0x6, 0x1, + 0x24, 0xe5, 0xc2, 0x98, 0x80, 0x9, 0x1e, 0x73, + 0xb6, 0x98, 0xc4, 0x2, 0x32, 0x33, 0xff, 0xf5, + 0xb7, 0x88, 0x7, 0x12, 0x3d, 0x67, 0x6d, 0xc2, + 0x90, 0x4, 0x4b, 0x12, 0xa2, 0x2, 0xb3, 0x99, + 0xff, 0xeb, 0xb7, 0x20, 0xf, 0xf8, 0x91, 0xeb, + 0x7a, 0xdd, 0x5e, 0xa8, 0x82, 0x1, 0xfe, 0x48, + 0xbb, 0xff, 0xee, 0x53, 0x10, 0x7, 0xff, 0x2c, + 0x52, 0x2a, 0x10, 0x3, 0xff, 0x82, 0x46, 0x89, + 0xff, 0xdd, 0xf6, 0x0, 0xff, 0xf2, 0x24, 0xf7, + 0xff, 0xff, 0x3f, 0x1c, 0x80, 0x3f, 0xfa, 0xc2, + 0x20, 0xf, 0xfe, 0x39, 0x88, 0x7, 0xff, 0x3c, + 0x7c, 0x3, 0xff, 0xaa, 0x4f, 0xbf, 0x90, 0x82, + 0x1, 0xff, 0xc2, 0x6e, 0x98, 0x8f, 0xfe, 0x7d, + 0xd8, 0xc0, 0x3f, 0xfa, 0x42, 0xb1, 0x3, 0x13, + 0x78, 0x62, 0x0, 0xff, 0xe0, 0x92, 0x33, 0xbf, + 0xff, 0x3d, 0x8c, 0x40, 0x3f, 0xfa, 0x27, 0x30, + 0xa0, 0x10, 0xac, 0xb9, 0x0, 0x7f, 0xf0, 0x52, + 0x7f, 0xff, 0xfa, 0x1a, 0xe4, 0x1, 0xff, 0xcf, + 0x16, 0x87, 0x20, 0x8, 0xe6, 0x14, 0x3, 0xff, + 0x88, 0x60, 0x1f, 0xfd, 0x1f, 0x0, 0xff, 0xe7, + 0x9c, 0x5a, 0x0, 0x42, 0xd0, 0xe4, 0x1, 0xff, + 0xc4, 0x59, 0xaa, 0xff, 0xe8, 0x4d, 0x10, 0x7, + 0xff, 0x30, 0x9f, 0xd8, 0x80, 0x23, 0x88, 0x20, + 0x7, 0xff, 0x18, 0x4d, 0x57, 0xff, 0xa0, 0x84, + 0x1, 0xff, 0xcb, 0x15, 0x98, 0x30, 0x8, 0x9f, + 0xd8, 0x40, 0x3f, 0xf8, 0xe9, 0x5f, 0xff, 0xfd, + 0xd, 0x82, 0x0, 0xff, 0xe4, 0xa5, 0xd9, 0x0, + 0x21, 0x58, 0x93, 0x0, 0xff, 0xfe, 0xa4, 0xd2, + 0x88, 0x4, 0x71, 0x5, 0x10, 0xf, 0xff, 0x40, + 0xf8, 0x7, 0xff, 0x1c, 0x40, 0x6, 0x1, 0x13, + 0xfb, 0x10, 0x7, 0xff, 0x7d, 0x27, 0xbb, 0xf7, + 0xe3, 0x90, 0x4, 0x5e, 0xa0, 0x1f, 0xfc, 0x1, + 0x49, 0xdd, 0x55, 0x3a, 0xc, 0x3, 0xff, 0xc2, + 0x9a, 0xe0, 0x23, 0x80, 0x2, 0x46, 0x64, 0x6a, + 0xe6, 0x10, 0xf, 0xe0, + + /* U+70B9 "点" */ + 0x0, 0xff, 0xed, 0x8, 0xf8, 0x3, 0xff, 0xfe, + 0x0, 0x5b, 0xee, 0xd9, 0x4, 0x1, 0xff, 0xff, + 0x0, 0xff, 0xff, 0x80, 0x7f, 0xff, 0xc0, 0x3f, + 0xf9, 0x84, 0xfb, 0xff, 0xff, 0xd3, 0xd8, 0x30, + 0xf, 0xff, 0xf8, 0x7, 0xff, 0xb0, 0x5a, 0xb7, + 0x7f, 0xfa, 0x7f, 0x26, 0x1, 0xff, 0xe3, 0x31, + 0x72, 0x2f, 0xfe, 0xa0, 0x80, 0x7f, 0xff, 0xc0, + 0x3f, 0xfd, 0x2, 0x1, 0xe1, 0x0, 0xff, 0xf2, + 0xa4, 0xff, 0xff, 0xf3, 0x29, 0x0, 0x31, 0x3e, + 0x7f, 0xff, 0xf3, 0x69, 0x0, 0x3f, 0xff, 0xe0, + 0x1f, 0xfd, 0x92, 0x7c, 0xee, 0xff, 0xf0, 0x52, + 0x80, 0x7f, 0xf6, 0x3c, 0x47, 0xff, 0xc4, 0x62, + 0x1, 0xff, 0xff, 0x0, 0xff, 0xff, 0x80, 0x7f, + 0xff, 0xc0, 0x3f, 0xfe, 0x25, 0x3f, 0x99, 0xff, + 0xe0, 0x97, 0x10, 0xf, 0xfe, 0xb8, 0x91, 0x9f, + 0xff, 0x80, 0x84, 0x3, 0xff, 0xa2, 0xb7, 0x7f, + 0xfe, 0xf9, 0x50, 0xf, 0xfe, 0x50, 0x92, 0x27, + 0xff, 0xb8, 0xc4, 0x3, 0xff, 0x94, 0x4d, 0x79, + 0x75, 0xa, 0x60, 0x1f, 0x84, 0x88, 0x66, 0x21, + 0x0, 0xff, 0x84, 0x8d, 0x59, 0x4c, 0x40, 0x3f, + 0xc6, 0xd3, 0x7b, 0xd9, 0x6, 0x1, 0xff, 0xc8, + 0x15, 0x88, 0x21, 0xa2, 0xa1, 0x90, 0x7, 0xcb, + 0x7b, 0xac, 0xc7, 0x31, 0x0, 0x7f, 0xb, 0xce, + 0x54, 0xd7, 0x49, 0x0, 0x7f, 0x11, 0xd, 0x48, + 0x4d, 0xfa, 0x50, 0x3, 0xff, 0x8a, 0x73, 0xa, + 0x20, 0x2, 0x7f, 0x61, 0x0, 0xf9, 0x88, 0x80, + 0x11, 0xeb, 0x80, 0x7f, 0xb, 0x7a, 0x80, 0x44, + 0xd6, 0x80, 0x1f, 0x85, 0x2a, 0x8c, 0x40, 0x2, + 0x6a, 0xa2, 0x88, 0x7, 0xff, 0x0, 0x9f, 0xdc, + 0x80, 0x24, 0x89, 0x30, 0xf, 0xe3, 0xd6, 0x0, + 0xcc, 0x44, 0x0, 0xff, 0x24, 0xb8, 0x80, 0x5, + 0xbd, 0x84, 0x3, 0xf9, 0x27, 0x9c, 0x80, 0x2, + 0xb7, 0x65, 0x10, 0xf, 0xc7, 0x1f, 0x6, 0x1, + 0x1c, 0x4a, 0x88, 0x7, 0xfc, 0x24, 0x20, 0x11, + 0x73, 0x0, 0x7f, 0xc7, 0x4c, 0x40, 0x12, 0x6b, + 0x88, 0x7, 0xf8, 0xe2, 0x58, 0x40, 0x2, 0xb7, + 0x8, 0x1, 0x89, 0xaf, 0x5c, 0x80, 0x24, 0x9e, + 0x72, 0x0, 0xff, 0xe0, 0xb7, 0x18, 0x4, 0x24, + 0x20, 0x1f, 0xfc, 0x2, 0xb5, 0x20, 0x9, 0x35, + 0xc4, 0x3, 0xfe, 0x48, 0xb4, 0x0, 0x85, 0xa5, + 0xc8, 0x2, 0x2c, 0x43, 0x12, 0x6b, 0xa6, 0x20, + 0xf, 0xfe, 0x19, 0x92, 0x24, 0xad, 0xac, 0x1, + 0xff, 0xc1, 0x3b, 0xb3, 0x32, 0x27, 0x90, 0x3, + 0xff, 0x82, 0x2b, 0x10, 0x56, 0x8a, 0xe6, 0x20, + 0x1, 0x23, 0xd6, 0x76, 0xca, 0x8, 0x7, 0xff, + 0x14, 0x56, 0x6e, 0xd5, 0x2c, 0x60, 0x1f, 0xfc, + 0x23, 0x69, 0x93, 0xb2, 0x90, 0x80, 0x7f, 0xf0, + 0x8d, 0xea, 0x5d, 0x4c, 0x40, 0x0, + + /* U+70E7 "烧" */ + 0x0, 0xff, 0xe1, 0x24, 0x5d, 0xd2, 0xa2, 0x1, + 0xff, 0xc9, 0x37, 0xcc, 0xd4, 0xc2, 0x1, 0xff, + 0xe1, 0x12, 0x34, 0x49, 0x48, 0xc0, 0x3f, 0xf9, + 0x5e, 0x46, 0x72, 0xfa, 0x80, 0x7f, 0xff, 0xcb, + 0x88, 0x3, 0x29, 0x8, 0x7, 0xff, 0xf8, 0x55, + 0x4, 0x2, 0x2c, 0x73, 0x44, 0x2a, 0x99, 0xdd, + 0x10, 0x99, 0x55, 0x2e, 0xd9, 0x8d, 0xd7, 0x73, + 0xfe, 0xd8, 0x30, 0xf, 0xfe, 0xb9, 0x34, 0xd5, + 0x2e, 0xd9, 0x8d, 0xee, 0x63, 0x88, 0x4, 0x2b, + 0x39, 0x76, 0xaa, 0x4c, 0x41, 0xdc, 0xcc, 0x55, + 0x22, 0xc, 0xc4, 0x41, 0x1c, 0x42, 0xe, 0x1, + 0xff, 0xd0, 0x15, 0x89, 0x75, 0x26, 0xe4, 0x55, + 0x22, 0xc, 0xc4, 0x22, 0x1, 0x10, 0x7, 0x89, + 0x19, 0x8f, 0x10, 0x99, 0x55, 0x2e, 0xd9, 0x8d, + 0xd7, 0x73, 0x75, 0xdd, 0x6e, 0x42, 0x0, 0x7f, + 0x24, 0xee, 0x5b, 0x98, 0x7, 0xff, 0x1, 0x7d, + 0xda, 0x25, 0x5a, 0xba, 0xf3, 0x1b, 0xae, 0xe7, + 0xfd, 0xdf, 0x48, 0x1, 0x87, 0x2e, 0x61, 0xdc, + 0xcc, 0x55, 0x22, 0xc, 0xc4, 0x2d, 0xbb, 0x77, + 0x32, 0x10, 0x3, 0xfc, 0x46, 0xa4, 0x6b, 0xc0, + 0x1f, 0xfc, 0x3, 0xc4, 0x0, 0x1d, 0xa9, 0x10, + 0xd0, 0xcc, 0x44, 0x11, 0x0, 0x61, 0x5e, 0x50, + 0x8, 0xea, 0x86, 0x1, 0xf8, 0x52, 0x33, 0x10, + 0x60, 0x2, 0x78, 0x94, 0x0, 0xff, 0x37, 0x18, + 0x0, 0xb8, 0x80, 0x3f, 0xc4, 0x88, 0x10, 0x3b, + 0x62, 0x0, 0xff, 0xe2, 0x2c, 0xb9, 0x0, 0x9, + 0xe1, 0x84, 0x4, 0xda, 0x73, 0xed, 0xcc, 0x0, + 0x6f, 0x79, 0x28, 0x20, 0x1f, 0xe1, 0x25, 0x0, + 0x9c, 0x84, 0x3, 0xf8, 0x52, 0xcc, 0xe, 0xd8, + 0x40, 0x3f, 0xf8, 0xc7, 0x30, 0x80, 0x12, 0x46, + 0x6f, 0xe4, 0xb1, 0x88, 0x91, 0xef, 0x72, 0x10, + 0x40, 0x3f, 0xf8, 0x2b, 0xe6, 0x0, 0x13, 0x60, + 0x9, 0xc0, 0x38, 0x5f, 0x4c, 0xe, 0x98, 0x40, + 0x3f, 0xf8, 0xa2, 0x48, 0xfa, 0x2, 0x1, 0x9, + 0x10, 0x40, 0x9a, 0x77, 0xae, 0x10, 0x80, 0x30, + 0xbd, 0xed, 0x3a, 0x8, 0x6, 0x3c, 0x40, 0x9, + 0x30, 0xc0, 0x2, 0x1, 0xe7, 0x32, 0x46, 0x97, + 0x10, 0xf, 0xc2, 0x46, 0x8c, 0xf3, 0x7b, 0xdc, + 0xdb, 0x97, 0x41, 0x0, 0xfc, 0x6b, 0xcc, 0x20, + 0x1f, 0x8b, 0xd8, 0x96, 0x8c, 0xc0, 0x11, 0xdb, + 0x10, 0x1, 0x3d, 0x0, 0x6, 0x2, 0x1, 0xca, + 0xa9, 0xb9, 0x51, 0x0, 0xc7, 0x19, 0xdf, 0xdb, + 0x97, 0x30, 0xc8, 0x42, 0x4, 0x8d, 0x15, 0x9d, + 0xfe, 0xd8, 0x41, 0x1, 0x37, 0xbf, 0xc9, 0x75, + 0x43, 0x32, 0xd2, 0x90, 0x1, 0xcc, 0x80, 0x37, + 0x3a, 0x1b, 0x7a, 0x80, 0x6f, 0x0, 0xff, 0xe2, + 0x9c, 0xc9, 0x4, 0x4, 0x91, 0x5e, 0x6b, 0x3b, + 0xf6, 0xe5, 0xd4, 0xc4, 0x0, 0x4f, 0x79, 0x4c, + 0x62, 0x2, 0x6d, 0x15, 0x79, 0x8a, 0x62, 0x1, + 0x6e, 0x40, 0xc, 0x6d, 0x37, 0x92, 0x80, 0x18, + 0x44, 0x60, 0x13, 0x90, 0x80, 0x7f, 0xc2, 0xb5, + 0xdf, 0xdb, 0x75, 0xc, 0xa6, 0x20, 0x1f, 0xfc, + 0x12, 0x59, 0xcf, 0xdb, 0x87, 0x54, 0x41, 0x99, + 0x15, 0xa7, 0x25, 0x0, 0x3f, 0xf8, 0x8a, 0x42, + 0x0, 0x12, 0x10, 0xf, 0xfe, 0xf8, 0x92, 0x3c, + 0x55, 0xdb, 0x31, 0x75, 0x2c, 0x40, 0x1f, 0xfc, + 0x53, 0xe6, 0x0, 0x8c, 0x5c, 0x3, 0xf0, 0xbe, + 0x7f, 0xff, 0xf9, 0x2d, 0x84, 0x3, 0xff, 0x82, + 0xc4, 0x40, 0x8, 0x96, 0x8c, 0x3, 0xf0, 0xb1, + 0x17, 0xfc, 0x20, 0x1f, 0x9, 0x17, 0x84, 0x3, + 0xe1, 0x11, 0x17, 0xff, 0x0, 0x4c, 0x3, 0xff, + 0x82, 0x5a, 0xe0, 0x1c, 0x4d, 0xb6, 0xc2, 0x1, + 0x85, 0xab, 0x77, 0xfe, 0xb5, 0x0, 0xc4, 0xfb, + 0xbf, 0x63, 0x90, 0x6, 0x5b, 0xed, 0xdf, 0xfe, + 0x5, 0x28, 0x80, 0x7f, 0xc7, 0x4a, 0x40, 0x11, + 0xa1, 0x80, 0xa4, 0xec, 0x18, 0x7, 0xff, 0xc, + 0x88, 0xc0, 0x19, 0xb8, 0xc0, 0x3f, 0xfb, 0xa7, + 0x6a, 0x40, 0x12, 0xcd, 0xf4, 0xa0, 0x0, 0xdf, + 0x65, 0x4, 0x3, 0xff, 0x80, 0xfa, 0x60, 0x10, + 0x9a, 0x80, 0x7f, 0xf7, 0x4e, 0x98, 0x80, 0x25, + 0xf5, 0x2, 0x6a, 0xa2, 0x88, 0xb, 0x55, 0x18, + 0x80, 0x3f, 0xb, 0x72, 0x80, 0x64, 0xd3, 0x0, + 0xff, 0xed, 0x8a, 0xcb, 0x88, 0x0, 0x5a, 0x54, + 0x3, 0xa, 0xdd, 0x94, 0x40, 0x5b, 0xd8, 0x40, + 0x3c, 0x4d, 0x68, 0x1, 0xb, 0x4a, 0x80, 0x7f, + 0xf3, 0x89, 0xa6, 0x4e, 0x84, 0x1, 0xe3, 0x8b, + 0x51, 0x0, 0x1c, 0xd9, 0x80, 0x7c, 0x2b, 0x75, + 0x35, 0x92, 0x82, 0x1, 0x12, 0xd6, 0x41, 0x0, + 0x45, 0x36, 0x60, 0x1f, 0xfc, 0xf1, 0xe4, 0x68, + 0xbb, 0x20, 0x0, 0x52, 0x79, 0x84, 0x0, 0x4f, + 0xee, 0x40, 0x1f, 0xe1, 0x46, 0x51, 0x0, 0xa, + 0x3d, 0xe5, 0x28, 0x80, 0x44, 0xfc, 0xe4, 0x1, + 0xff, 0x78, 0x7, 0x9, 0x80, 0x7f, 0x39, 0x10, + 0x0, 0x22, 0x71, 0x5b, 0xb3, 0x10, 0x0, 0x9f, + 0xa0, 0xc0, 0x3f, 0xf8, 0x22, 0x8f, 0x59, 0xdc, + 0xb8, 0x41, 0x0, 0x8d, 0xef, 0x20, 0xc0, 0x3f, + 0xf8, 0x6, 0x2c, 0x1, 0x92, 0x7b, 0x73, 0x3d, + 0xb4, 0xa0, 0x12, 0x69, 0x8a, 0xcb, 0x98, 0xa4, + 0xfc, 0x18, 0x7, 0xff, 0xc, 0x54, 0x84, 0x84, + 0x2, 0x25, 0x8b, 0xec, 0x84, 0x10, 0xf, 0xfe, + 0x10, 0xb4, 0x41, 0x8, 0x40, 0x2, 0x46, 0x7e, + 0x21, 0x11, 0x2c, 0x41, 0x40, 0x23, 0x8c, 0xeb, + 0x62, 0x0, 0xff, 0xe3, 0xa, 0xcd, 0x52, 0xf7, + 0xf6, 0x9d, 0x4, 0x3, 0xff, 0x90, 0x6f, 0x7b, + 0xdf, 0xff, 0xfc, 0xe, 0xda, 0x72, 0x0, 0x0, + + /* U+7136 "然" */ + 0x0, 0xff, 0xff, 0x80, 0x7f, 0xf6, 0x12, 0x7b, + 0x9b, 0x94, 0xe6, 0x1, 0xff, 0xd0, 0x13, 0x66, + 0xe4, 0x10, 0xc, 0x26, 0x86, 0x1, 0xff, 0xd7, + 0x5e, 0x61, 0x11, 0x18, 0x88, 0x80, 0x3f, 0xfa, + 0x5, 0x76, 0x99, 0xa3, 0x48, 0x5, 0x6b, 0xf2, + 0xf3, 0xe, 0x60, 0x1f, 0xfd, 0x22, 0x79, 0x50, + 0xc, 0x9a, 0x86, 0x45, 0xfe, 0x33, 0x10, 0x80, + 0x7f, 0xf3, 0x5, 0x62, 0x4c, 0x40, 0xe3, 0x6d, + 0x88, 0x3, 0xff, 0x9a, 0x2b, 0x12, 0x60, 0x1c, + 0x93, 0xbb, 0xff, 0xc0, 0xcc, 0x6f, 0x72, 0x50, + 0x3, 0xff, 0x96, 0x4f, 0x9a, 0xe4, 0x2, 0x93, + 0xf0, 0x60, 0x1f, 0xfc, 0xa4, 0x88, 0x28, 0x80, + 0x4, 0xd1, 0x57, 0xff, 0x80, 0x84, 0x1, 0xc5, + 0xcc, 0x1, 0xff, 0xce, 0x38, 0xf8, 0x30, 0x1, + 0x34, 0xa8, 0x80, 0x7f, 0xf1, 0x8e, 0x25, 0x88, + 0x2, 0x48, 0xdb, 0xaa, 0xff, 0xaf, 0x58, 0x3, + 0xa, 0x20, 0x80, 0x3f, 0xfa, 0x4, 0xfb, 0x75, + 0x9f, 0x4a, 0x20, 0x1f, 0xfc, 0x31, 0x4a, 0xd7, + 0x20, 0xe, 0x49, 0xfd, 0xa7, 0x52, 0x0, 0xf0, + 0xb5, 0x20, 0x4, 0x2e, 0x33, 0xff, 0xff, 0xc0, + 0xc7, 0x20, 0x8, 0x5b, 0x3f, 0xff, 0xdd, 0x75, + 0x9d, 0xfd, 0x28, 0x1, 0xff, 0xc0, 0x26, 0xaa, + 0x28, 0x80, 0x12, 0x77, 0xae, 0x14, 0xc9, 0x62, + 0xb7, 0xb2, 0x14, 0x8d, 0xa8, 0xc0, 0x21, 0x6a, + 0xc0, 0xf, 0xff, 0x31, 0x2d, 0x7c, 0xa0, 0x80, + 0xad, 0x51, 0x88, 0x51, 0xeb, 0x7b, 0x25, 0x48, + 0x4d, 0xeb, 0x72, 0x8, 0x2, 0x26, 0xa3, 0x5b, + 0xdd, 0xff, 0xb1, 0xcc, 0x3, 0xc4, 0xf7, 0xbb, + 0xff, 0xc2, 0xc8, 0x40, 0xf, 0x13, 0x5e, 0x52, + 0x90, 0x6, 0x14, 0xe6, 0x41, 0x0, 0xe1, 0x36, + 0xad, 0xd5, 0x29, 0x0, 0x78, 0xee, 0x48, 0x0, + 0x24, 0x5f, 0xf3, 0x89, 0x80, 0x78, 0x90, 0x8c, + 0x8b, 0xff, 0x84, 0x20, 0x1e, 0x17, 0xc6, 0x10, + 0x1, 0xb4, 0x3a, 0x8, 0x92, 0x2f, 0xb6, 0x58, + 0x80, 0x3c, 0x60, 0x3, 0x0, 0xc2, 0xde, 0xc2, + 0x1, 0xff, 0xc2, 0x2c, 0x40, 0xf, 0xc7, 0xae, + 0x20, 0x1f, 0xfc, 0x81, 0x5a, 0xcb, 0xb6, 0x62, + 0x5e, 0x2f, 0xf2, 0x54, 0x80, 0x9a, 0x77, 0x52, + 0xa4, 0x29, 0x16, 0xa2, 0x1, 0x24, 0x40, 0xc0, + 0x3f, 0xf8, 0x67, 0x6c, 0x40, 0x10, 0x8c, 0x1, + 0x25, 0x38, 0x80, 0x7f, 0xf2, 0x85, 0x10, 0x60, + 0x1c, 0x26, 0xd5, 0xb9, 0x28, 0x20, 0x4d, 0x5b, + 0xd6, 0xc2, 0x1, 0x1c, 0x4b, 0x8, 0x7, 0xff, + 0x8, 0x5a, 0x18, 0x40, 0x23, 0x8d, 0x93, 0x0, + 0x8e, 0x20, 0x80, 0x1f, 0xfd, 0x73, 0x6b, 0xfb, + 0x62, 0x0, 0xf8, 0xe3, 0x9c, 0x80, 0x3f, 0xf8, + 0x69, 0x16, 0x80, 0x19, 0x65, 0x8d, 0xa5, 0x0, + 0x21, 0x68, 0x72, 0x0, 0xff, 0xeb, 0x9b, 0x7b, + 0x90, 0x6, 0x15, 0xad, 0x72, 0x0, 0xff, 0xe1, + 0xa, 0xd5, 0x18, 0x80, 0x2, 0x93, 0x6a, 0x0, + 0x15, 0x87, 0x20, 0x8, 0xe2, 0x58, 0x80, 0x3f, + 0xfa, 0x22, 0x91, 0x98, 0x84, 0x10, 0x8, 0xe3, + 0x69, 0x44, 0x3, 0xff, 0x82, 0x29, 0x39, 0x4a, + 0x20, 0x1, 0x4b, 0xa6, 0x10, 0xe, 0x38, 0x96, + 0x10, 0x9, 0x27, 0xe5, 0x4, 0x3, 0xff, 0x94, + 0x26, 0xf5, 0x96, 0xe6, 0x1, 0x8d, 0xf3, 0x5c, + 0xc0, 0x3f, 0xf8, 0x2, 0x6f, 0x7f, 0x6c, 0x40, + 0x1, 0x48, 0xdb, 0x51, 0x0, 0xfe, 0x48, 0xa6, + 0x10, 0x8, 0x9a, 0xf6, 0x10, 0x40, 0x3f, 0xf8, + 0x42, 0x8f, 0x5b, 0xd9, 0xa, 0x40, 0x10, 0xac, + 0xee, 0x41, 0x88, 0x7, 0xf0, 0x9b, 0x4e, 0x7e, + 0x42, 0x8, 0x0, 0x52, 0x72, 0xdc, 0xc0, 0x3f, + 0xf8, 0x22, 0x93, 0x92, 0x82, 0x1, 0x1b, 0xdf, + 0x6c, 0xb1, 0x80, 0x7c, 0x2b, 0x7f, 0x70, 0xa4, + 0x1, 0x89, 0x67, 0x3e, 0x98, 0x80, 0x3f, 0xf8, + 0x2, 0xb5, 0x6c, 0x62, 0x0, 0x36, 0x9c, 0xfb, + 0x62, 0x0, 0xff, 0xe3, 0x93, 0x5e, 0xca, 0x8, + 0x6, 0x24, 0xf7, 0x10, 0xf, 0xa, 0xd5, 0xa8, + 0x81, 0x2c, 0x5e, 0xea, 0x98, 0xc4, 0x3, 0xff, + 0x86, 0x29, 0x39, 0x73, 0x2b, 0xec, 0x96, 0x31, + 0x0, 0xff, 0xe6, 0x9b, 0x5f, 0x64, 0xaa, 0xa3, + 0xe5, 0x4, 0x3, 0xf0, 0xad, 0x77, 0xed, 0x3a, + 0x8a, 0x18, 0x80, 0x7f, 0xf2, 0x5, 0x19, 0x88, + 0x20, 0x1f, 0xfc, 0xc1, 0x35, 0x76, 0x41, 0x0, + 0x8d, 0xaa, 0x8e, 0x40, 0x1f, 0xfc, 0x65, 0xbd, + 0xbc, 0xee, 0x52, 0x0, 0x7e, 0x37, 0xbc, 0xde, + 0xa6, 0x10, 0xf, 0xe1, 0x5a, 0xde, 0xff, 0x52, + 0x80, 0x7f, 0x8e, 0x33, 0x15, 0x13, 0x54, 0x62, + 0x0, 0xff, 0xe5, 0x8b, 0xca, 0x88, 0x0, 0x5e, + 0x50, 0x3, 0xf0, 0xfb, 0x19, 0xa, 0x7a, 0x80, + 0x7f, 0xb, 0x90, 0x8, 0x1, 0x65, 0x84, 0x3, + 0xf1, 0xc7, 0x39, 0x0, 0x5, 0x27, 0x9c, 0xc0, + 0x3f, 0xf9, 0x7, 0x12, 0x60, 0x11, 0xcd, 0x98, + 0x7, 0xf1, 0x6b, 0x80, 0x42, 0xa6, 0x20, 0x1f, + 0xc5, 0x34, 0x60, 0x11, 0xdb, 0x10, 0x7, 0xf1, + 0xc7, 0xc1, 0x80, 0x47, 0x1d, 0x26, 0x1, 0xff, + 0xc4, 0x38, 0xe6, 0x10, 0x0, 0xac, 0xb1, 0x0, + 0x7f, 0xcc, 0x42, 0x1, 0x17, 0x28, 0x7, 0xf8, + 0x5a, 0x90, 0x2, 0x2a, 0x52, 0x0, 0xff, 0x13, + 0xf4, 0x98, 0x4, 0x4d, 0xd2, 0x80, 0x1f, 0xf0, + 0xad, 0x6b, 0x90, 0x0, 0x52, 0xec, 0xa2, 0x1, + 0xff, 0xc0, 0x2f, 0x20, 0x8, 0x48, 0x40, 0x3f, + 0xe1, 0x7c, 0x30, 0x8, 0xad, 0x44, 0x3, 0xfe, + 0x26, 0xe8, 0x30, 0x8, 0x9a, 0x60, 0xc0, 0x3f, + 0x12, 0x63, 0x0, 0x44, 0xd5, 0x45, 0x10, 0xf, + 0xfe, 0x10, 0x93, 0x11, 0xa2, 0xe3, 0x0, 0x7f, + 0xf0, 0x5, 0x2d, 0x10, 0xcf, 0x66, 0x1, 0xff, + 0xc2, 0x27, 0xf6, 0x10, 0x24, 0x5d, 0x0, 0xfe, + 0x25, 0x9c, 0xee, 0xb2, 0x50, 0x40, 0x3f, 0xf8, + 0xab, 0x5b, 0x97, 0x4e, 0x60, 0x1f, 0xfc, 0x13, + 0x7b, 0xb4, 0xc3, 0xa0, 0x80, 0x7f, 0xf0, 0xce, + 0x7b, 0xf6, 0xe1, 0x4c, 0x3, 0x0, + + /* U+7247 "片" */ + 0x0, 0xff, 0xe0, 0x89, 0xa2, 0x71, 0x8, 0x7, + 0xff, 0x2c, 0x5a, 0xff, 0xf7, 0x49, 0x80, 0x7f, + 0xf6, 0xd2, 0x6e, 0xf5, 0x59, 0x0, 0x7f, 0xff, + 0xc0, 0x3f, 0xff, 0xe0, 0x1f, 0xff, 0xf0, 0xf, + 0xff, 0xf8, 0x7, 0xff, 0xfc, 0x3, 0xff, 0xfe, + 0x1, 0xff, 0xd5, 0x12, 0x44, 0xff, 0xe6, 0xfb, + 0x0, 0x61, 0x24, 0x4f, 0xfe, 0x59, 0x90, 0x7, + 0xff, 0x29, 0x22, 0xef, 0xff, 0x97, 0x4c, 0x40, + 0x1c, 0x91, 0x77, 0xff, 0xca, 0xe5, 0x20, 0xf, + 0xff, 0xf8, 0x4, 0x20, 0x1f, 0xfc, 0x51, 0x0, + 0xc2, 0xd9, 0xff, 0xff, 0xeb, 0xc7, 0x20, 0xf, + 0xfe, 0x11, 0x80, 0x7f, 0xff, 0xc0, 0x30, 0x83, + 0x80, 0x7f, 0xff, 0xc0, 0x23, 0x10, 0xf, 0xff, + 0xf8, 0x7, 0x78, 0x80, 0x61, 0x24, 0x55, 0xff, + 0xee, 0xa1, 0x0, 0x7f, 0xf4, 0x18, 0x88, 0x1, + 0xc9, 0x15, 0x5f, 0xfd, 0xd8, 0x41, 0x0, 0xff, + 0xe7, 0x9, 0xb0, 0x7, 0xff, 0xfc, 0x2, 0x5e, + 0x20, 0xc, 0x71, 0xbf, 0xff, 0xfd, 0x7c, 0x61, + 0x0, 0xff, 0xea, 0x9, 0xa8, 0x80, 0x65, 0x32, + 0x0, 0xff, 0xfc, 0x8b, 0x59, 0x80, 0x63, 0xf5, + 0x0, 0xff, 0xfc, 0x8b, 0x59, 0x80, 0x63, 0xb7, + 0x10, 0xf, 0xff, 0xc1, 0x35, 0x98, 0x6, 0x3b, + 0x51, 0x0, 0xff, 0xfc, 0x1d, 0xd1, 0x80, 0x63, + 0xa6, 0x20, 0xf, 0xff, 0xb9, 0x3f, 0xb1, 0x0, + 0x42, 0xd0, 0xc2, 0x1, 0xff, 0xf6, 0x38, 0xf8, + 0x30, 0xc, 0x91, 0x4, 0x0, 0xff, 0xfb, 0xa5, + 0x31, 0x0, 0x42, 0x95, 0x46, 0x10, 0xf, 0xff, + 0xc2, 0x4f, 0xd2, 0x9b, 0x55, 0xa8, 0x80, 0x7f, + 0xff, 0x5, 0x6b, 0x25, 0x0, 0x3f, 0xfc, 0x67, + 0x3d, 0xff, 0xb1, 0x84, 0x3, 0xff, 0x86, + + /* U+751F "生" */ + 0x0, 0xff, 0xed, 0x91, 0x9f, 0x10, 0x80, 0x7f, + 0xfa, 0xd1, 0xe6, 0x1d, 0x94, 0x84, 0x3, 0xfe, + 0x3b, 0xdc, 0xcd, 0x8, 0x1, 0xff, 0xea, 0x5e, + 0x86, 0x78, 0x9e, 0x40, 0xf, 0xff, 0xf2, 0x7a, + 0x80, 0x64, 0xd7, 0x10, 0xf, 0xff, 0xe2, 0xf2, + 0x0, 0x64, 0xd7, 0x10, 0xf, 0xff, 0xd8, 0xb7, + 0x28, 0x80, 0x49, 0xae, 0x20, 0x1f, 0xff, 0xb2, + 0x6b, 0x40, 0xc, 0x44, 0x32, 0x33, 0xff, 0xe1, + 0x29, 0x8, 0x6, 0x12, 0x33, 0xff, 0xe9, 0x10, + 0x80, 0x7f, 0xf1, 0x12, 0xe4, 0x80, 0x38, 0x9a, + 0xb3, 0x3f, 0xf8, 0x72, 0x80, 0x1c, 0x91, 0x99, + 0xff, 0xd2, 0xe7, 0x10, 0xf, 0xfe, 0x9, 0x3c, + 0x30, 0x80, 0x7f, 0xfc, 0xdc, 0x3, 0xff, 0x82, + 0x2d, 0x30, 0x60, 0x10, 0xad, 0x77, 0xff, 0xff, + 0x1f, 0x18, 0x40, 0x32, 0xd7, 0xff, 0xff, 0x4a, + 0xd8, 0x40, 0x3f, 0x85, 0x6a, 0x10, 0x3, 0x1c, + 0x41, 0x44, 0x3, 0xff, 0xf0, 0x4f, 0xb4, 0x82, + 0x1, 0x1c, 0x73, 0x10, 0x7, 0xff, 0xe4, 0x93, + 0x4, 0x2, 0x14, 0x9d, 0x72, 0x0, 0xff, 0xfd, + 0x93, 0x5e, 0xea, 0xab, 0x30, 0x80, 0x7f, 0xff, + 0xc0, 0x4, 0xaa, 0x41, 0x0, 0xff, 0xff, 0x80, + 0x7f, 0x13, 0x56, 0x67, 0xff, 0x33, 0x9c, 0x40, + 0x32, 0xde, 0xe6, 0x7f, 0xf3, 0xa1, 0x0, 0x3f, + 0xf9, 0x1c, 0xe6, 0x7f, 0xfc, 0xc2, 0x10, 0xf, + 0x9, 0x19, 0xff, 0xf3, 0x88, 0x3, 0xff, 0x90, + 0x55, 0x35, 0x5f, 0xfc, 0xc7, 0x40, 0xe, 0x36, + 0xaa, 0xff, 0xe7, 0xca, 0x80, 0x7f, 0xf2, 0x9, + 0x15, 0x7f, 0xf9, 0x96, 0x42, 0x1, 0x9b, 0x15, + 0x7f, 0xf9, 0xe6, 0x20, 0x1f, 0xff, 0xf0, 0xf, + 0xff, 0xf8, 0x7, 0xff, 0xfc, 0x3, 0xff, 0xfe, + 0x1, 0xff, 0xff, 0x0, 0xff, 0xff, 0x80, 0x7f, + 0xfc, 0xc5, 0xaf, 0xff, 0xff, 0xad, 0x8c, 0x20, + 0x19, 0x6b, 0xff, 0xff, 0xad, 0x8e, 0x40, 0x1f, + 0xff, 0xf0, 0xf, 0x8, 0x4, 0x2f, 0x39, 0x9f, + 0xff, 0xfc, 0xc7, 0xb1, 0x0, + + /* U+7528 "用" */ + 0x0, 0xff, 0xe0, 0xb5, 0xff, 0xff, 0xfc, 0xed, + 0x40, 0x3f, 0xff, 0xe0, 0x1f, 0xfc, 0xe1, 0x5a, + 0xdd, 0xff, 0xe3, 0xd2, 0x88, 0x6, 0x59, 0xdd, + 0xff, 0xe4, 0xdb, 0x10, 0x7, 0xff, 0x3c, 0xd8, + 0x8b, 0xff, 0x8e, 0xc6, 0x1, 0xc6, 0x45, 0xff, + 0xca, 0x6e, 0x10, 0xf, 0xff, 0xf8, 0x7, 0xff, + 0xfc, 0x3, 0xff, 0xb8, 0xe0, 0x1f, 0xfc, 0x77, + 0x0, 0xf1, 0x88, 0x7, 0xff, 0x2b, 0xc4, 0x3, + 0xff, 0x9c, 0x2d, 0x7f, 0xff, 0xfc, 0x7b, 0x61, + 0x0, 0xcb, 0x5f, 0xff, 0xfc, 0x9d, 0x72, 0x0, + 0xff, 0xff, 0x80, 0x7f, 0xf5, 0x5, 0xaf, 0xff, + 0xff, 0x8f, 0x6c, 0x20, 0x19, 0x6b, 0xff, 0xff, + 0x93, 0xae, 0x40, 0x1f, 0xfc, 0x71, 0x0, 0xfc, + 0xe0, 0x1f, 0xfc, 0x77, 0x0, 0xf1, 0x88, 0x7, + 0xff, 0x2b, 0xc4, 0x3, 0xff, 0xfe, 0x1, 0xff, + 0xd4, 0x31, 0x0, 0xff, 0xff, 0x38, 0x7, 0x84, + 0x3, 0xff, 0xf6, 0x62, 0x20, 0xc, 0x4f, 0xbf, + 0xff, 0xfc, 0x7c, 0x61, 0x0, 0xcd, 0x7f, 0xff, + 0xfc, 0x9d, 0x83, 0x0, 0xff, 0xe3, 0xb7, 0x18, + 0x7, 0xff, 0xfc, 0x2, 0x22, 0x8, 0x4, 0x2d, + 0x5b, 0xbf, 0xfc, 0x8a, 0x51, 0x0, 0xcb, 0x3b, + 0xbf, 0xfc, 0x9b, 0x62, 0x0, 0xff, 0xe3, 0x17, + 0x30, 0x6, 0x5c, 0x52, 0x2f, 0xfe, 0x43, 0x18, + 0x7, 0x19, 0x17, 0xff, 0x29, 0xb8, 0x40, 0x3f, + 0xf8, 0xa2, 0x88, 0x20, 0x8, 0x8d, 0xc0, 0x3f, + 0xff, 0x42, 0xfa, 0x60, 0x10, 0xa5, 0x90, 0x7, + 0xff, 0xe9, 0xf5, 0x0, 0x21, 0x7d, 0x30, 0xf, + 0xff, 0xc9, 0x3d, 0xa0, 0x4, 0x2f, 0x48, 0x1, + 0xff, 0xf8, 0x16, 0x98, 0x20, 0x8, 0xe2, 0x6, + 0x1, 0xff, 0xea, 0x6e, 0x20, 0xc, 0x20, 0x1c, + 0x4f, 0xb2, 0x80, 0x10, 0xb4, 0x30, 0x80, 0x7f, + 0xf7, 0x16, 0xbf, 0xff, 0xf8, 0x36, 0xc2, 0x1, + 0x11, 0x18, 0x3, 0x1a, 0x5a, 0x8, 0x13, 0xec, + 0xa0, 0x7, 0xff, 0x79, 0x7d, 0x40, 0x3f, 0xf8, + 0x42, 0x6d, 0x5f, 0x6, 0x1, 0x84, 0xde, 0xf3, + 0x7e, 0xc, 0x3, 0xff, 0xa2, 0x73, 0xdf, 0xfa, + 0x50, 0x3, 0xe5, 0xae, 0xef, 0xf7, 0xfe, 0xec, + 0x95, 0x20, 0x8, + + /* U+7535 "电" */ + 0x0, 0xff, 0xe9, 0xa, 0xce, 0x66, 0xb7, 0x30, + 0xf, 0xff, 0xe1, 0x91, 0x9e, 0x5e, 0x0, 0xff, + 0xff, 0x80, 0x7f, 0xff, 0xc0, 0x3f, 0xfd, 0x62, + 0xd7, 0xff, 0xff, 0xce, 0xe9, 0x40, 0xc, 0x2d, + 0x9f, 0xff, 0xfc, 0xfe, 0x93, 0x0, 0xff, 0xe1, + 0x38, 0x7, 0xff, 0xfc, 0x3, 0xfc, 0x2d, 0x59, + 0x9f, 0xfc, 0x7b, 0x73, 0x0, 0xe5, 0x9c, 0xcf, + 0xfe, 0x4c, 0x20, 0x7, 0xff, 0x38, 0xc5, 0xcc, + 0xff, 0xf8, 0xeb, 0xce, 0x1, 0x84, 0xd4, 0xcf, + 0xff, 0x94, 0x40, 0x1f, 0xff, 0xf0, 0xf, 0xff, + 0xf8, 0x7, 0xff, 0x68, 0xc5, 0x84, 0x7f, 0xf8, + 0xe4, 0x2e, 0x1, 0xc6, 0xc2, 0x3f, 0xfc, 0x92, + 0x30, 0xf, 0xfe, 0x70, 0xb5, 0xf7, 0x7f, 0xf1, + 0xf2, 0xc, 0x3, 0xa, 0xd7, 0x77, 0xff, 0x26, + 0x54, 0x3, 0xff, 0xfe, 0x1, 0xff, 0xd4, 0x27, + 0xdf, 0xff, 0xfe, 0x3f, 0x4a, 0x0, 0x61, 0x6c, + 0xff, 0xff, 0xe4, 0xdb, 0x0, 0x7f, 0xff, 0xc0, + 0x3f, 0xff, 0xe0, 0x1f, 0xff, 0xf0, 0xf, 0xff, + 0x1, 0x3e, 0xff, 0xff, 0xf1, 0xfa, 0x50, 0x3, + 0xb, 0x67, 0xff, 0xff, 0x26, 0xd8, 0x3, 0xff, + 0xfe, 0x1, 0xff, 0xd4, 0x15, 0x9c, 0xcf, 0xfe, + 0x3d, 0xb9, 0x80, 0x72, 0x4e, 0x67, 0xff, 0x3f, + 0x6c, 0x84, 0x84, 0x3, 0xfc, 0x6c, 0x45, 0xda, + 0x86, 0x7f, 0xfc, 0x75, 0xe7, 0x0, 0xc2, 0x4a, + 0x67, 0xff, 0xd0, 0x23, 0x6e, 0xeb, 0x29, 0xd0, + 0x40, 0x21, 0x5a, 0xdd, 0xd8, 0xe4, 0x1, 0xff, + 0xef, 0xf1, 0x1, 0x35, 0xc2, 0x10, 0xf, 0xfe, + 0xeb, 0x80, 0x7f, 0xf4, 0x58, 0x4c, 0x2, 0x12, + 0x20, 0x7, 0xff, 0x54, 0x4c, 0x40, 0x30, 0x98, + 0x80, 0x7f, 0xf4, 0x8, 0xd4, 0x40, 0x22, 0xf5, + 0x0, 0xff, 0xeb, 0x31, 0x8, 0x6, 0x59, 0x93, + 0x22, 0xc, 0xff, 0xf9, 0x28, 0xb1, 0x32, 0x30, + 0x8, 0xe9, 0xc4, 0x3, 0xff, 0xac, 0x75, 0x24, + 0x1, 0x8d, 0xa6, 0xed, 0x99, 0xff, 0xc9, 0xba, + 0x74, 0x10, 0x0, 0xac, 0xb8, 0x80, 0x7f, 0xf6, + 0x9, 0xf2, 0xe1, 0x4c, 0x88, 0x22, 0x0, 0xff, + 0xe5, 0x89, 0x1a, 0x35, 0x65, 0x28, 0x80, 0x70, + + /* U+7684 "的" */ + 0x0, 0xff, 0xff, 0x80, 0x7f, 0xf2, 0x56, 0xb7, + 0x2e, 0xa5, 0x88, 0x3, 0xff, 0x94, 0x2d, 0x7d, + 0xb7, 0x50, 0x82, 0x1, 0xff, 0xdb, 0x3c, 0x42, + 0x34, 0x52, 0x3, 0x0, 0xff, 0xe4, 0x8b, 0xd2, + 0x9, 0x22, 0x5, 0xc4, 0x3, 0xff, 0xb4, 0x48, + 0xa2, 0x1, 0x26, 0xb8, 0x80, 0x7f, 0xf2, 0x5, + 0xe8, 0xc0, 0x21, 0x7d, 0x30, 0xf, 0xfe, 0xd0, + 0xa6, 0x18, 0x4, 0x9a, 0xe2, 0x1, 0xff, 0xc8, + 0x17, 0xa3, 0x0, 0xc9, 0xa8, 0x1, 0xff, 0xd2, + 0x11, 0xfe, 0x7d, 0x40, 0x9, 0x35, 0x0, 0x47, + 0xfe, 0x0, 0xfe, 0x17, 0xd3, 0x0, 0xc7, 0xae, + 0x45, 0xff, 0xcc, 0x10, 0xc, 0x2d, 0xbd, 0xdf, + 0xa5, 0x0, 0x32, 0x4e, 0xf7, 0x7f, 0xda, 0xc2, + 0x1, 0xe1, 0x7d, 0x40, 0xe, 0x38, 0xcd, 0xdf, + 0xfe, 0x5f, 0x38, 0x80, 0x7f, 0xf0, 0x4, 0x7f, + 0xf8, 0x80, 0x1f, 0xfc, 0x22, 0x6b, 0x40, 0xc, + 0x23, 0xff, 0xcb, 0x0, 0xff, 0xe2, 0x8b, 0x67, + 0x77, 0xff, 0x13, 0x18, 0x40, 0x3f, 0xcb, 0x12, + 0x40, 0x11, 0xc6, 0x77, 0x7f, 0xf2, 0x6d, 0x40, + 0x3f, 0xfc, 0x44, 0xf0, 0xa2, 0x0, 0x15, 0x97, + 0x20, 0xf, 0xff, 0xb9, 0x3f, 0x41, 0x0, 0x47, + 0x30, 0xa0, 0x1f, 0xfc, 0xc1, 0x0, 0xce, 0x1, + 0xff, 0xd9, 0xe6, 0x98, 0x30, 0x8, 0x9f, 0xdc, + 0x80, 0x3f, 0xff, 0x1c, 0xd5, 0x92, 0xa8, 0xfd, + 0x6, 0x0, 0x24, 0x65, 0x30, 0xf, 0xfe, 0x39, + 0x80, 0x7c, 0x20, 0x1f, 0xf3, 0x80, 0x7f, 0xf1, + 0x1c, 0x3, 0xf0, 0x9b, 0x55, 0xc1, 0x80, 0xb5, + 0xed, 0xcd, 0x6c, 0xa0, 0x80, 0x7f, 0xf0, 0xc4, + 0x3, 0xff, 0x8c, 0x2d, 0x7f, 0xff, 0xfc, 0x4b, + 0x61, 0x0, 0xff, 0xe1, 0xb, 0x43, 0x98, 0x0, + 0x5a, 0xa8, 0xc2, 0x1, 0xff, 0xc9, 0x30, 0xf, + 0xff, 0x21, 0xc7, 0x41, 0x80, 0x5, 0x27, 0x5c, + 0x80, 0x3f, 0xf8, 0x2e, 0x1, 0x84, 0x3, 0xfe, + 0x16, 0xcf, 0xff, 0xfe, 0x26, 0x30, 0x80, 0x7f, + 0xf1, 0x89, 0xf6, 0x90, 0x40, 0x7, 0x1f, 0x6, + 0x1, 0xfc, 0x62, 0x1, 0xff, 0xef, 0x15, 0xab, + 0x51, 0x0, 0x13, 0xf4, 0x18, 0x7, 0xef, 0x10, + 0xc, 0x62, 0x1, 0xff, 0xea, 0x15, 0xb8, 0x41, + 0x0, 0x13, 0xf4, 0x18, 0x7, 0x8, 0x18, 0x4, + 0x20, 0x1f, 0xfe, 0xe1, 0x69, 0x91, 0x89, 0x2d, + 0x61, 0x0, 0x73, 0x88, 0x80, 0x23, 0x17, 0x0, + 0xff, 0xf7, 0x13, 0xe7, 0x6d, 0x3a, 0x8, 0x7, + 0x9, 0x0, 0x61, 0xf1, 0x0, 0xff, 0xfd, 0x89, + 0x38, 0x6, 0x71, 0x30, 0xf, 0xff, 0xd9, 0x71, + 0x0, 0x62, 0x20, 0x80, 0x7f, 0x85, 0xb3, 0xff, + 0xff, 0x89, 0x8c, 0x20, 0x1f, 0xfd, 0xa1, 0x55, + 0x8, 0x4, 0x5c, 0xc0, 0x1f, 0xff, 0xb4, 0xd3, + 0x0, 0xce, 0x64, 0x1, 0xff, 0xb, 0x5f, 0xff, + 0xff, 0x2b, 0x18, 0x40, 0x3f, 0xf8, 0x24, 0x6a, + 0x88, 0x33, 0x11, 0x42, 0x3c, 0x46, 0xb5, 0x8, + 0x1, 0x93, 0x14, 0x3, 0xff, 0x84, 0xe0, 0x1f, + 0xfd, 0xa3, 0x6e, 0xbb, 0x66, 0x37, 0x6e, 0xee, + 0xdc, 0xa5, 0x20, 0x8, 0x9b, 0xd8, 0x40, 0x3f, + 0xfd, 0x22, 0x9a, 0x80, 0x1f, 0xfc, 0x1, 0x11, + 0x22, 0xc5, 0xe4, 0xa0, 0x7, 0xe1, 0x6c, 0xff, + 0xba, 0x4c, 0x3, 0xff, 0xb6, 0x2d, 0x7f, 0xff, + 0xfc, 0xe, 0xe6, 0xdd, 0x3a, 0x8, 0x7, 0xf0, + + /* U+76D8 "盘" */ + 0x0, 0xff, 0xee, 0x11, 0xa1, 0x90, 0x80, 0x7f, + 0xff, 0xc0, 0x39, 0x63, 0x2f, 0x37, 0xb9, 0x6, + 0x1, 0xff, 0xff, 0x15, 0xe5, 0x0, 0xc7, 0x12, + 0x60, 0x1f, 0xfe, 0xb1, 0x5a, 0xdd, 0xff, 0xe2, + 0xe5, 0xa0, 0x7, 0x15, 0xe6, 0xef, 0xff, 0x2e, + 0x98, 0x40, 0x3f, 0xfa, 0x66, 0xc4, 0x5f, 0xfc, + 0x61, 0x0, 0xf0, 0x91, 0x7f, 0xf3, 0x58, 0x4c, + 0x3, 0xff, 0xb2, 0x93, 0xdf, 0xff, 0xdd, 0x73, + 0x59, 0xdf, 0xff, 0xfc, 0xba, 0x40, 0xf, 0xff, + 0x50, 0xad, 0xd4, 0xd6, 0x76, 0xd3, 0xa0, 0x80, + 0x7f, 0xff, 0x85, 0x6f, 0x65, 0x8c, 0x49, 0x62, + 0xff, 0x25, 0x48, 0x3, 0xff, 0xd4, 0x20, 0x1f, + 0xfc, 0x51, 0x36, 0x9c, 0xfc, 0x85, 0x21, 0x36, + 0xa9, 0x51, 0x0, 0xff, 0xec, 0x89, 0x9f, 0xff, + 0x5, 0x38, 0x40, 0x33, 0xf2, 0x99, 0xff, 0xf0, + 0x88, 0x13, 0xa1, 0xd1, 0xd, 0xc2, 0x46, 0x7f, + 0xf2, 0x6b, 0x80, 0x61, 0xe7, 0x33, 0xff, 0x10, + 0x80, 0x42, 0xdf, 0x99, 0xff, 0xc0, 0xa6, 0x20, + 0xc, 0x6f, 0x79, 0x9f, 0xfc, 0x5b, 0xa7, 0x44, + 0x35, 0x5e, 0x67, 0xff, 0x2, 0xdc, 0xc0, 0x31, + 0x35, 0x66, 0x7f, 0xa1, 0x0, 0x31, 0x2a, 0x27, + 0xfc, 0x64, 0x1, 0xe2, 0x34, 0x4f, 0xfe, 0xd9, + 0x8, 0x7, 0x11, 0xa2, 0x7f, 0xb4, 0x40, 0x21, + 0x59, 0xbb, 0xff, 0xa5, 0xc0, 0x30, 0xb4, 0xe5, + 0xdf, 0xf5, 0x71, 0x91, 0xf4, 0xdd, 0xff, 0xf2, + 0xe1, 0x40, 0x31, 0xd7, 0x5d, 0xff, 0x9d, 0x0, + 0x3f, 0xf8, 0x64, 0xf2, 0xa0, 0x10, 0xbe, 0xa0, + 0x7, 0xf1, 0xb4, 0xb3, 0x1e, 0xb7, 0xb2, 0x9d, + 0x4, 0x3, 0xff, 0xce, 0x4f, 0x30, 0x60, 0x11, + 0xcd, 0xa0, 0x7, 0xf8, 0xdf, 0x3f, 0x69, 0xd0, + 0xd, 0x62, 0xfb, 0x65, 0x88, 0x3, 0xff, 0xc0, + 0x4b, 0x59, 0x8, 0x1, 0x13, 0xfb, 0x90, 0x7, + 0xff, 0x8, 0x49, 0x62, 0xfb, 0x69, 0x8c, 0x9, + 0xf5, 0xc4, 0x9, 0x1d, 0xfc, 0xcf, 0x1c, 0xa0, + 0x19, 0xc4, 0xc0, 0x3f, 0xf8, 0xe7, 0x19, 0xb4, + 0xa2, 0x0, 0x14, 0x9f, 0x83, 0x0, 0xff, 0xe5, + 0x12, 0xce, 0x6e, 0xb2, 0xd4, 0x40, 0xcb, 0x22, + 0x3a, 0x61, 0xd0, 0x40, 0x2, 0x9c, 0x82, 0x1, + 0xff, 0xc7, 0x39, 0x86, 0x21, 0x26, 0xac, 0xb6, + 0x20, 0xf, 0xfe, 0x81, 0x14, 0x1, 0x85, 0xa6, + 0xea, 0xbe, 0xbc, 0xde, 0xe5, 0xa9, 0x0, 0x7f, + 0xf2, 0x45, 0x27, 0x7b, 0x32, 0xfd, 0xdf, 0xfe, + 0xe7, 0xcc, 0x47, 0xd3, 0xdf, 0x9b, 0xbd, 0x8, + 0x1, 0xff, 0xcb, 0x13, 0x22, 0xff, 0xf8, 0x80, + 0x7f, 0xf4, 0xd6, 0xbf, 0xff, 0xd4, 0xa0, 0x19, + 0x27, 0xff, 0xfd, 0x6c, 0x1, 0x8e, 0x7b, 0xff, + 0xfb, 0x1c, 0x80, 0x3f, 0xff, 0xe0, 0x1f, 0xff, + 0xf0, 0xf, 0xff, 0xf8, 0x7, 0xff, 0xfc, 0x3, + 0xff, 0xee, 0x2b, 0x39, 0x9f, 0xad, 0x0, 0x32, + 0x46, 0x67, 0xfa, 0x10, 0x3, 0x25, 0xe6, 0x7f, + 0xa5, 0xc0, 0x31, 0xc6, 0xe6, 0x7f, 0x73, 0x10, + 0x6, 0x49, 0xcc, 0xfd, 0x8, 0x1, 0x89, 0x4c, + 0xff, 0x10, 0x7, 0x9, 0x19, 0xff, 0x88, 0x40, + 0x38, 0x8c, 0xff, 0xc4, 0x20, 0x1c, 0x26, 0x7f, + 0xe2, 0x10, 0xe, 0x12, 0x33, 0xfc, 0x42, 0x1, + 0xb, 0x76, 0x67, 0xff, 0xff, 0x33, 0x42, 0x0, + + /* U+7801 "码" */ + 0x0, 0xc2, 0x48, 0x9f, 0xfd, 0x12, 0x10, 0xc, + 0x23, 0xff, 0xd2, 0x22, 0x84, 0x40, 0x1f, 0xfc, + 0x35, 0xbb, 0xff, 0xe8, 0xd5, 0x90, 0x1, 0x27, + 0xfb, 0xbf, 0xfa, 0x3b, 0xb7, 0x64, 0x18, 0x7, + 0xff, 0x5, 0xf9, 0xc, 0xff, 0x10, 0x80, 0x71, + 0x19, 0xff, 0xcb, 0xc0, 0x1f, 0xfd, 0xb1, 0xf1, + 0x0, 0xff, 0xe0, 0x9b, 0xde, 0x67, 0xdd, 0x44, + 0x1, 0x9a, 0x73, 0x3f, 0xeb, 0x73, 0x0, 0x24, + 0xf7, 0xff, 0xff, 0x3e, 0x50, 0x3, 0x39, 0x10, + 0x3, 0xff, 0x96, 0xf8, 0x60, 0x12, 0x7a, 0x80, + 0x7f, 0xf2, 0x4, 0xd5, 0x71, 0x90, 0x7, 0xff, + 0x14, 0x85, 0x80, 0x31, 0x8, 0x7, 0xff, 0x2c, + 0xf1, 0x40, 0x22, 0x34, 0x10, 0xf, 0xfe, 0x42, + 0xd5, 0x74, 0x20, 0x7, 0xff, 0x15, 0xb8, 0xc0, + 0x22, 0xe6, 0x0, 0xff, 0xe5, 0x12, 0x20, 0x40, + 0x2, 0x98, 0x40, 0x1f, 0xfc, 0x91, 0x20, 0xc, + 0x26, 0x1, 0xff, 0xc5, 0x12, 0x10, 0x9, 0x84, + 0xc0, 0x3f, 0xf9, 0x22, 0xb6, 0x40, 0x1, 0x7d, + 0x40, 0xf, 0xfe, 0x49, 0x11, 0xc0, 0x21, 0x31, + 0x0, 0xff, 0xe2, 0x11, 0x1c, 0x3, 0x11, 0x4, + 0x3, 0xff, 0x90, 0x2f, 0x66, 0x1, 0x26, 0xa0, + 0x7, 0xff, 0x28, 0x7c, 0x80, 0x23, 0x17, 0x0, + 0xff, 0xe2, 0x37, 0x10, 0x4, 0x5c, 0xc0, 0x1f, + 0xfc, 0x82, 0x6a, 0x30, 0x8, 0xcc, 0x28, 0x9f, + 0xfc, 0x13, 0x20, 0xf, 0xcc, 0x42, 0x1, 0xf, + 0x10, 0x7, 0xff, 0x10, 0x48, 0x40, 0x26, 0x22, + 0x0, 0x7f, 0xf1, 0xce, 0xa8, 0x60, 0x18, 0xda, + 0xae, 0xff, 0xf8, 0x30, 0x82, 0x1, 0xe1, 0x36, + 0x0, 0xcc, 0x42, 0x1, 0xff, 0xc3, 0x22, 0x30, + 0x4, 0x24, 0x20, 0x1f, 0xfc, 0x74, 0x96, 0x20, + 0xe, 0x23, 0x55, 0xfc, 0x84, 0x1, 0xff, 0xc1, + 0x2e, 0x10, 0x8, 0x88, 0xe0, 0x1f, 0xfc, 0x46, + 0xe3, 0x0, 0x8b, 0x98, 0x3, 0xff, 0x8a, 0x51, + 0x2a, 0x20, 0x1c, 0x29, 0x15, 0x5f, 0xa1, 0x44, + 0x3, 0xff, 0x80, 0xc4, 0x40, 0x8, 0x9f, 0x3f, + 0xff, 0xf8, 0x96, 0xc2, 0x1, 0x1c, 0x6f, 0xff, + 0xeb, 0x50, 0xe, 0x27, 0xe7, 0x20, 0xf, 0xfe, + 0xa0, 0x98, 0x8f, 0xff, 0x5c, 0x3, 0xc2, 0x20, + 0xc, 0x2b, 0x66, 0x1, 0x19, 0xc0, 0x1f, 0xfd, + 0x1, 0x6b, 0xee, 0xff, 0xea, 0xeb, 0x88, 0x4, + 0x44, 0x70, 0xc, 0x2f, 0x2a, 0x27, 0x1d, 0x2c, + 0x1, 0xff, 0xf4, 0x62, 0x10, 0x8, 0x7c, 0x80, + 0x3c, 0xb1, 0xbc, 0xe4, 0x1, 0xff, 0xf5, 0x13, + 0x10, 0xc, 0xc4, 0x20, 0x1f, 0x11, 0x90, 0x7, + 0xff, 0xdc, 0xb9, 0x80, 0x21, 0x36, 0x0, 0xff, + 0xed, 0xa4, 0xf7, 0xff, 0xff, 0x4e, 0xd8, 0x40, + 0xc, 0x44, 0x0, 0x8b, 0x88, 0x3, 0xff, 0xfe, + 0x0, 0x22, 0x30, 0x6, 0x63, 0x10, 0xf, 0xfe, + 0x30, 0x91, 0xa2, 0x7e, 0x52, 0x0, 0xfc, 0x93, + 0xdf, 0xff, 0xfd, 0x3b, 0x61, 0x7, 0xd3, 0x0, + 0x8b, 0x58, 0x3, 0xff, 0x90, 0x91, 0x77, 0xfa, + 0x54, 0x40, 0x3f, 0xfc, 0x7, 0xae, 0x1, 0x9c, + 0xc8, 0x3, 0xff, 0x90, 0x24, 0x89, 0xff, 0xc2, + 0x32, 0x10, 0xf, 0xfe, 0xc9, 0x22, 0x90, 0x4, + 0x78, 0xa0, 0x1f, 0xfc, 0x81, 0x79, 0xbb, 0xff, + 0xe1, 0x42, 0x0, 0x7f, 0xf6, 0x9, 0xa6, 0x44, + 0x1, 0x1d, 0xa0, 0x80, 0x7f, 0xfc, 0x85, 0xaf, + 0xff, 0xfd, 0xb2, 0x82, 0x0, 0x15, 0x87, 0x20, + 0xf, 0xfe, 0x22, 0xde, 0xed, 0x90, 0x80, 0x1f, + 0xfd, 0xb1, 0x7d, 0x40, 0xf, 0xe1, 0x11, 0x23, + 0x4e, 0xd2, 0x0, 0x7f, 0xf1, 0xc4, 0x8b, 0x8, + 0x7, 0xff, 0x74, 0x5a, 0xff, 0xff, 0xbb, 0x9b, + 0x72, 0xc6, 0x1, 0xfe, + + /* U+786E "确" */ + 0x0, 0xff, 0xf3, 0x89, 0x18, 0x80, 0x7f, 0xff, + 0xc0, 0x3e, 0x4b, 0xcc, 0x77, 0xf4, 0x18, 0x7, + 0xff, 0x50, 0x9a, 0x6a, 0xbf, 0xfa, 0x52, 0xc4, + 0x1, 0xf8, 0x57, 0xd4, 0x40, 0x2, 0xf8, 0x60, + 0x1f, 0xfd, 0x41, 0xe7, 0x55, 0xff, 0xe9, 0x3f, + 0x88, 0x7, 0xc4, 0xd2, 0x80, 0x18, 0x5e, 0x77, + 0x7f, 0xf8, 0x37, 0x8, 0x40, 0x1f, 0xfc, 0x42, + 0xbb, 0x55, 0x7e, 0x73, 0x0, 0xc2, 0x91, 0x55, + 0xff, 0xc1, 0xba, 0x20, 0xe, 0x15, 0x88, 0x18, + 0x7, 0x84, 0x8b, 0xff, 0x84, 0x8f, 0xa, 0x40, + 0x1f, 0xfc, 0x31, 0x35, 0x5f, 0xc9, 0xe0, 0x1c, + 0xbc, 0xea, 0xbf, 0xfc, 0x23, 0x10, 0xc, 0x73, + 0xa, 0x1, 0x13, 0xe7, 0xff, 0xf7, 0x5b, 0x8, + 0x6, 0x27, 0xf7, 0x20, 0xf, 0xfe, 0x6a, 0xf1, + 0x80, 0x45, 0x8e, 0x1, 0xff, 0xc7, 0x38, 0xe7, + 0x20, 0x0, 0xb7, 0x41, 0x80, 0x7e, 0x26, 0x86, + 0x10, 0x0, 0xac, 0xc8, 0xc0, 0x3f, 0xf9, 0xc2, + 0x6a, 0x1, 0x9c, 0xc8, 0x3, 0xff, 0x8a, 0x71, + 0xce, 0x40, 0x1, 0x5b, 0x83, 0x0, 0xfc, 0x2b, + 0x30, 0x60, 0x1, 0x5b, 0xb2, 0x8, 0x7, 0xff, + 0x3d, 0x34, 0xc0, 0x23, 0xc5, 0x0, 0xff, 0xe1, + 0x8a, 0xd6, 0xb9, 0x0, 0x73, 0x75, 0x5d, 0xff, + 0x65, 0xa0, 0x6, 0x36, 0xea, 0xbb, 0xff, 0xa9, + 0x88, 0x3, 0xff, 0x84, 0x78, 0x80, 0x10, 0xa2, + 0x88, 0x7, 0xff, 0x0, 0x52, 0x72, 0x94, 0x40, + 0x3c, 0x26, 0x89, 0xff, 0x10, 0x80, 0x71, 0x1a, + 0x27, 0xff, 0xb, 0xc4, 0x3, 0xff, 0x82, 0x56, + 0x82, 0x1, 0x26, 0x98, 0x7, 0xff, 0x4, 0x5b, + 0xdc, 0x40, 0x3f, 0x1b, 0xde, 0x67, 0xeb, 0x73, + 0x0, 0x85, 0x6b, 0x33, 0xfa, 0x98, 0x40, 0x3f, + 0xf8, 0xc2, 0x88, 0x20, 0xc, 0xf3, 0x55, 0xff, + 0xc2, 0x94, 0x45, 0x65, 0xda, 0x58, 0x40, 0x27, + 0xe5, 0x33, 0xfc, 0xbc, 0xe0, 0x11, 0x93, 0x99, + 0xff, 0x3f, 0x18, 0x7, 0xff, 0x14, 0x5f, 0x4c, + 0x3, 0x88, 0xd5, 0x7f, 0xf8, 0x49, 0xc2, 0x4, + 0x88, 0x50, 0xf, 0xff, 0x49, 0x35, 0x20, 0x7, + 0x12, 0x3b, 0xff, 0x32, 0x8, 0x7, 0xff, 0x11, + 0xc4, 0xc4, 0x7f, 0x18, 0xb8, 0x6, 0x16, 0x11, + 0xfe, 0x6f, 0x0, 0xff, 0xe2, 0x12, 0xd1, 0x80, + 0x79, 0xba, 0x23, 0xfd, 0xa4, 0x1, 0xff, 0xc4, + 0x38, 0xde, 0xef, 0xdb, 0x6, 0x1, 0x13, 0x5f, + 0x77, 0xf5, 0xb9, 0x0, 0x7f, 0xf0, 0x92, 0xe4, + 0x80, 0x3f, 0xfb, 0x22, 0x48, 0xab, 0xf9, 0x8, + 0x40, 0x31, 0x22, 0xaf, 0xf2, 0x10, 0x7, 0xff, + 0x4, 0xe2, 0x58, 0x40, 0x3f, 0xfa, 0x8e, 0x1, + 0xcb, 0x75, 0x5f, 0xeb, 0x50, 0x8, 0x96, 0x6a, + 0xbf, 0xa6, 0x88, 0x3, 0xfc, 0x2d, 0xe, 0x40, + 0x11, 0x19, 0x80, 0x3f, 0xfa, 0x26, 0x20, 0x1f, + 0xfe, 0x11, 0x7f, 0x62, 0x2, 0x7e, 0x95, 0x0, + 0xff, 0xe8, 0x8, 0x7, 0x38, 0x7, 0xff, 0x1, + 0xc0, 0x38, 0x40, 0x3f, 0x87, 0xc0, 0x3f, 0xf8, + 0x2, 0x93, 0x9b, 0xf0, 0x62, 0x1, 0xff, 0xd0, + 0x12, 0x60, 0xc, 0x73, 0xdf, 0xff, 0xba, 0x4c, + 0x2, 0x27, 0xcf, 0xff, 0xec, 0x72, 0x0, 0xff, + 0xe1, 0x9, 0x10, 0x3, 0xff, 0xa6, 0xbc, 0x60, + 0x18, 0x44, 0x45, 0xff, 0xcf, 0x11, 0x0, 0x7f, + 0xf9, 0x4, 0x94, 0x3, 0x2d, 0xf6, 0xef, 0xff, + 0x3f, 0x24, 0x80, 0x3f, 0xf9, 0xa9, 0x5f, 0xdd, + 0xfd, 0x26, 0x1, 0xf0, 0xbd, 0x18, 0x4, 0x7a, + 0x80, 0x1f, 0xfe, 0xf1, 0x1f, 0xc0, 0x1f, 0xc2, + 0xd4, 0x60, 0x11, 0xda, 0x88, 0x7, 0xff, 0xb1, + 0x27, 0xbf, 0xff, 0xf8, 0x5b, 0x1, 0x34, 0x60, + 0x11, 0xdb, 0x10, 0x7, 0xff, 0xb8, 0xc4, 0x3, + 0xff, 0x84, 0x93, 0xce, 0x40, 0x1, 0x68, 0x71, + 0x0, 0xff, 0xe4, 0x8, 0xc0, 0x1e, 0x16, 0xe3, + 0x0, 0xff, 0xe3, 0xb6, 0x33, 0x6d, 0x60, 0xf, + 0xfe, 0xa, 0x4d, 0x31, 0x0, 0x5, 0x6e, 0x10, + 0x3, 0xff, 0x90, 0x2b, 0x5d, 0xcf, 0xff, 0x75, + 0xb0, 0x80, 0x4b, 0xe4, 0x1, 0xff, 0xc1, 0x25, + 0x99, 0xcc, 0x60, 0x1f, 0xfc, 0x14, 0xb8, 0x52, + 0x23, 0xed, 0x28, 0x80, 0x7f, 0xf2, 0x45, 0x35, + 0x0, 0x3e, 0x11, 0x11, 0xa3, 0xd4, 0xb0, 0x80, + 0x7f, 0xf5, 0xc9, 0xab, 0x75, 0x6, 0x1, 0xff, + 0xcd, 0x16, 0xbf, 0xff, 0xbb, 0x9b, 0x97, 0xa, + 0x40, 0x18, + + /* U+793A "示" */ + 0x0, 0xff, 0xe0, 0xb, 0x5f, 0xff, 0xff, 0xc3, + 0x1c, 0x80, 0x3f, 0xf9, 0x6e, 0x1, 0xff, 0xf0, + 0x10, 0xf, 0xfe, 0x58, 0xbf, 0x66, 0x7f, 0xfc, + 0x39, 0x88, 0x3, 0xff, 0x94, 0x24, 0x67, 0xff, + 0xf1, 0x10, 0xf, 0xff, 0xf8, 0x7, 0xff, 0xfc, + 0x3, 0xff, 0xfe, 0x1, 0xff, 0xe6, 0x15, 0xad, + 0xdf, 0xff, 0xfe, 0xd3, 0x8, 0x7, 0x8d, 0x88, + 0xbf, 0xff, 0xe4, 0xc2, 0x60, 0x1c, 0x29, 0x15, + 0x5f, 0xfd, 0x59, 0x51, 0x0, 0xe4, 0x8a, 0xaf, + 0xfe, 0xac, 0x29, 0x0, 0x78, 0x91, 0x57, 0xff, + 0xaa, 0x9a, 0x40, 0x18, 0x4d, 0x15, 0x7f, 0xfa, + 0xa8, 0x40, 0x1f, 0xff, 0xf0, 0xf, 0xfe, 0xb2, + 0x45, 0x43, 0xb2, 0x10, 0x80, 0x7f, 0xf5, 0x44, + 0x91, 0xe1, 0xd0, 0x40, 0x3f, 0xfa, 0xe4, 0xf0, + 0xea, 0xf1, 0x30, 0x80, 0x1f, 0xfd, 0x54, 0x8c, + 0xb8, 0x78, 0xab, 0x51, 0x0, 0xff, 0xea, 0x25, + 0xc9, 0x80, 0x42, 0xd0, 0xc2, 0x1, 0xff, 0xd4, + 0x48, 0xb5, 0x10, 0x0, 0xad, 0xd2, 0x88, 0x7, + 0xff, 0x40, 0x9e, 0x18, 0x40, 0x22, 0x9b, 0x40, + 0xf, 0xfe, 0xb8, 0xad, 0xd2, 0x88, 0x0, 0x52, + 0xe9, 0x84, 0x3, 0xff, 0x98, 0x4d, 0xd0, 0x60, + 0x11, 0x34, 0xb9, 0x0, 0x7f, 0xf6, 0x85, 0x2e, + 0xca, 0x20, 0x1, 0x49, 0xa6, 0x10, 0xf, 0xfe, + 0x41, 0x34, 0xc8, 0xc0, 0x21, 0x58, 0x82, 0x0, + 0x7f, 0xf7, 0x85, 0x6e, 0xca, 0x20, 0x12, 0x45, + 0xa8, 0x80, 0x7f, 0xf1, 0xe, 0x3e, 0x50, 0x2, + 0x15, 0xbb, 0x28, 0x80, 0x7f, 0xf8, 0x45, 0x6e, + 0xc, 0x2, 0x15, 0x89, 0x30, 0xf, 0xfe, 0x1, + 0x2d, 0x6b, 0x90, 0x4, 0x2d, 0x56, 0xa2, 0x1, + 0xff, 0xe5, 0x16, 0xf7, 0x20, 0x8, 0x9f, 0xd8, + 0x40, 0x3e, 0x25, 0xac, 0xa5, 0x10, 0x8, 0xdf, + 0x65, 0x4, 0x3, 0xff, 0xd2, 0x73, 0x68, 0x1, + 0x8e, 0xe4, 0xc0, 0x3c, 0x6d, 0x8e, 0x60, 0x2, + 0x6b, 0xd8, 0x30, 0xf, 0xff, 0x68, 0xb7, 0x28, + 0x80, 0x9, 0xbd, 0xc4, 0x3, 0x84, 0xda, 0x73, + 0xb9, 0x92, 0x82, 0x1, 0xff, 0x9, 0xa2, 0x7f, + 0xf0, 0x15, 0x58, 0x40, 0x18, 0xfc, 0x40, 0x3f, + 0xf9, 0xab, 0x79, 0xbf, 0xb6, 0xe8, 0x20, 0x1f, + 0xe1, 0x18, 0x3, 0xff, 0x84, 0x69, 0x17, 0x7f, + 0xf5, 0x42, 0x8, 0x4, 0x28, 0x64, 0x1, 0xff, + 0xce, 0x12, 0x20, 0x7, 0xff, 0x54, 0x9a, 0xcc, + 0x3, 0xf8, 0x44, 0x44, 0x35, 0x7a, 0xc9, 0x40, + 0xf, 0xfe, 0xd0, + + /* U+7A0B "程" */ + 0x0, 0xff, 0xe7, 0x89, 0x23, 0x44, 0xc2, 0x88, + 0x7, 0xff, 0xe4, 0x44, 0x48, 0xac, 0xf3, 0x59, + 0xbd, 0xcd, 0xb9, 0x76, 0x7a, 0xca, 0x51, 0x0, + 0x1c, 0x6f, 0x77, 0xff, 0x63, 0x60, 0xc0, 0x3f, + 0xe2, 0x57, 0x89, 0xab, 0xcd, 0xef, 0xee, 0x6d, + 0xd4, 0xc3, 0x29, 0x90, 0x80, 0x8, 0xd5, 0xa2, + 0xba, 0xd4, 0x40, 0x21, 0x31, 0x1f, 0xfe, 0xc1, + 0x88, 0x7, 0xff, 0x4, 0xa9, 0xd9, 0x50, 0xc8, + 0x40, 0x44, 0x46, 0x61, 0x0, 0xc4, 0xf9, 0xfb, + 0x95, 0x2e, 0xa6, 0x20, 0x1f, 0xe2, 0x7c, 0xff, + 0xff, 0xe6, 0x5b, 0x8, 0x7, 0xff, 0x14, 0x9b, + 0xaa, 0x97, 0x9b, 0xdc, 0xfe, 0xe6, 0xe4, 0xa0, + 0x7, 0x78, 0x80, 0x7f, 0xf2, 0x3c, 0x40, 0x3f, + 0xf9, 0x8e, 0x1, 0xff, 0xc8, 0x13, 0x55, 0x21, + 0x90, 0x88, 0x3, 0xff, 0xfe, 0x1, 0xff, 0xff, + 0x0, 0xff, 0xff, 0x80, 0x7f, 0xf5, 0xc4, 0xd9, + 0xdf, 0xff, 0x81, 0xee, 0x1, 0x8f, 0x2d, 0xdf, + 0xf9, 0x48, 0x3, 0xfb, 0xc4, 0x3, 0xff, 0x98, + 0xe0, 0x1f, 0xfc, 0x73, 0xbb, 0x44, 0x7f, 0xf0, + 0x14, 0x80, 0x30, 0xa3, 0x44, 0x7f, 0x73, 0x80, + 0x7e, 0x27, 0xcf, 0xff, 0xfe, 0x65, 0xb0, 0x80, + 0x7f, 0xf1, 0xb5, 0x15, 0x7f, 0xc8, 0x62, 0x1, + 0xe2, 0x45, 0x5f, 0xec, 0x10, 0x8, 0x48, 0xbf, + 0xfb, 0x42, 0x1, 0xff, 0xc0, 0x25, 0x9a, 0xaf, + 0xf7, 0x30, 0x80, 0x71, 0x54, 0xd5, 0x7f, 0x3a, + 0x0, 0xe, 0x33, 0x77, 0xff, 0xb1, 0x90, 0x60, + 0x1f, 0xfc, 0xa1, 0x6e, 0x50, 0xf, 0x15, 0xa9, + 0x0, 0x7f, 0xff, 0xc9, 0xad, 0x0, 0x3f, 0x1c, + 0x65, 0xb1, 0x0, 0x79, 0x6b, 0xbb, 0xff, 0xbf, + 0xb0, 0x60, 0x1f, 0xfc, 0x54, 0x89, 0x20, 0x33, + 0x80, 0x30, 0x91, 0x5, 0x27, 0x2d, 0x88, 0x3, + 0x8, 0xff, 0xf8, 0xc, 0x3, 0xff, 0x8a, 0x4f, + 0xa, 0x20, 0xb3, 0x4c, 0x1, 0x8d, 0x66, 0x94, + 0x44, 0x93, 0x94, 0xa2, 0xb7, 0xff, 0xff, 0xc6, + 0xa5, 0x0, 0xc2, 0xd7, 0xff, 0xff, 0xc4, 0xe8, + 0x30, 0xf, 0xfe, 0x8, 0xac, 0xc1, 0x80, 0xbc, + 0xa9, 0x80, 0x7b, 0xd9, 0x6a, 0x8c, 0x20, 0x2b, + 0x54, 0x51, 0x0, 0xff, 0xe7, 0x38, 0x7, 0xff, + 0x48, 0x52, 0xec, 0x80, 0x3, 0x9a, 0x30, 0xf, + 0xfe, 0x2, 0x45, 0x29, 0x1c, 0x4a, 0x88, 0x7, + 0xff, 0xac, 0x52, 0xe9, 0x44, 0x5, 0x65, 0xc8, + 0x3, 0xff, 0x84, 0x29, 0x5b, 0x8e, 0x40, 0x18, + 0x47, 0xff, 0x88, 0x60, 0x1e, 0x37, 0x11, 0xff, + 0xe1, 0x80, 0x7f, 0xc4, 0xd5, 0x45, 0x10, 0x1, + 0xc4, 0x14, 0x3, 0xff, 0x9a, 0xb5, 0xdd, 0xff, + 0xc4, 0x95, 0x0, 0xc2, 0xb7, 0xdd, 0xff, 0xc2, + 0xf9, 0x40, 0xf, 0xe6, 0xf5, 0x10, 0x1, 0x3f, + 0xb1, 0x0, 0x7f, 0xf3, 0x84, 0xc8, 0xbf, 0xf8, + 0x82, 0x1, 0xf0, 0x91, 0x7f, 0xf0, 0x8c, 0x5c, + 0x3, 0xf9, 0x22, 0xd4, 0xdf, 0xa0, 0xc0, 0x3f, + 0xfa, 0x9, 0x3b, 0xbf, 0xfc, 0x4b, 0x50, 0xc, + 0x2d, 0xbb, 0xff, 0xc4, 0x83, 0x0, 0xff, 0xa, + 0xd6, 0x41, 0x80, 0x7f, 0xff, 0xc0, 0x3f, 0xff, + 0xe0, 0x1f, 0xff, 0xf0, 0xf, 0xf9, 0xc0, 0x3f, + 0xfd, 0xab, 0x5f, 0xff, 0xfc, 0xaa, 0x50, 0xc, + 0x2d, 0x7f, 0xff, 0xfc, 0x6c, 0x72, 0x0, 0xff, + 0xff, 0x80, 0x7f, 0xf1, 0x40, + + /* U+7A0D "稍" */ + 0x0, 0xff, 0xf7, 0x9, 0x19, 0xf0, 0x80, 0x7f, + 0xf9, 0x84, 0x91, 0xa2, 0xae, 0x9c, 0xc0, 0x3f, + 0xf9, 0x49, 0x19, 0x9b, 0x98, 0x80, 0x3f, 0xfb, + 0x22, 0x48, 0xac, 0xf1, 0x37, 0x9d, 0xfd, 0xb7, + 0x2e, 0xa8, 0xb1, 0xb4, 0xa2, 0x1, 0xe1, 0x46, + 0x76, 0x43, 0x20, 0xf, 0xfe, 0x29, 0x23, 0xd5, + 0xc2, 0x0, 0x7f, 0xf1, 0x4d, 0xa6, 0xaf, 0x37, + 0xbf, 0xdd, 0xb7, 0x53, 0xe, 0xc8, 0x62, 0x0, + 0x12, 0x45, 0x78, 0xac, 0xfa, 0x51, 0x0, 0xe4, + 0x8a, 0x98, 0x9b, 0xf4, 0x20, 0xf, 0xfe, 0x20, + 0xe5, 0x2a, 0x3d, 0x5a, 0x88, 0x7, 0xff, 0x8, + 0x80, 0x95, 0xc, 0x84, 0x44, 0x66, 0x45, 0x64, + 0x20, 0xc, 0x51, 0x9b, 0x75, 0xe, 0xa6, 0x20, + 0x1e, 0x38, 0x96, 0x10, 0x1, 0x3f, 0xb1, 0x0, + 0x7f, 0xf1, 0xe, 0x39, 0xc8, 0x5, 0x2b, 0x5c, + 0x80, 0x3f, 0xf8, 0x2, 0xd5, 0xba, 0xef, 0xf7, + 0x6e, 0x62, 0xea, 0x79, 0xc0, 0x3f, 0xf8, 0xe4, + 0xfe, 0xe4, 0x0, 0x15, 0x99, 0x18, 0x7, 0xff, + 0x20, 0xe3, 0xe0, 0xc0, 0x7, 0x1f, 0x6, 0x1, + 0xff, 0xc0, 0x12, 0x20, 0x80, 0x7f, 0xf3, 0xc9, + 0xaf, 0x20, 0xc0, 0x2, 0x91, 0x68, 0x20, 0x1f, + 0xfc, 0xb2, 0x7e, 0x82, 0x0, 0x13, 0xf4, 0x18, + 0x7, 0xff, 0x68, 0x56, 0xbe, 0x50, 0x40, 0x2, + 0xb5, 0x46, 0x10, 0xf, 0xfe, 0x79, 0x3c, 0xb0, + 0x80, 0x9, 0xe1, 0x84, 0x3, 0xff, 0xb0, 0x2f, + 0xe8, 0x62, 0x24, 0x9c, 0xa4, 0x10, 0xf, 0xfe, + 0x9a, 0x44, 0x10, 0x91, 0xf9, 0x4, 0x3, 0xc4, + 0xf9, 0xdd, 0xff, 0xc0, 0xa5, 0x0, 0xc5, 0x19, + 0xdd, 0xf6, 0x59, 0xcf, 0xf4, 0xc, 0xe6, 0x7f, + 0xf0, 0x76, 0xd4, 0x3, 0x14, 0xfe, 0x67, 0xff, + 0x3, 0x6b, 0x3a, 0xe1, 0x48, 0x3, 0xf7, 0x88, + 0xff, 0xf0, 0x40, 0x3f, 0x8, 0xff, 0xc0, 0x20, + 0xe, 0x53, 0x3f, 0xfe, 0x9, 0x8, 0x7, 0x84, + 0x8c, 0xff, 0xf8, 0x25, 0xce, 0x1, 0xff, 0x14, + 0xfe, 0x67, 0xfa, 0x98, 0x80, 0x38, 0x9a, 0xb3, + 0x3f, 0xa5, 0x0, 0x3f, 0x13, 0x56, 0xef, 0xff, + 0x32, 0x94, 0x40, 0x3f, 0xf8, 0xc2, 0x46, 0x7f, + 0xc3, 0xa8, 0x40, 0x1e, 0x17, 0x33, 0xfe, 0x21, + 0x0, 0xfe, 0xe7, 0x22, 0xff, 0xe6, 0x31, 0x0, + 0x7f, 0xf4, 0x52, 0xd8, 0x80, 0x3c, 0x4d, 0xc, + 0x40, 0x1f, 0xff, 0xd1, 0x5f, 0x61, 0x0, 0xfc, + 0x2b, 0x39, 0x6c, 0x40, 0x1f, 0xfc, 0x22, 0xae, + 0xbb, 0xff, 0xe6, 0x7b, 0x8, 0x7, 0xff, 0x34, + 0xe6, 0x10, 0x0, 0x89, 0x0, 0x61, 0x34, 0x21, + 0x49, 0xca, 0x62, 0x0, 0xff, 0xe0, 0x11, 0xa2, + 0x7f, 0xf3, 0xc, 0x40, 0x3f, 0xf9, 0x82, 0xd0, + 0xe4, 0x2, 0xd1, 0xc2, 0x1, 0x8e, 0xe7, 0xe0, + 0xc0, 0x56, 0x72, 0x94, 0x40, 0x3f, 0x13, 0xe7, + 0xff, 0xff, 0x32, 0xd8, 0x40, 0x3f, 0xf9, 0x22, + 0xb7, 0x8, 0x0, 0x38, 0x81, 0x80, 0x7f, 0x13, + 0xf4, 0xa0, 0x0, 0x5f, 0x14, 0x3, 0xfb, 0xc4, + 0x3, 0xff, 0x98, 0xe2, 0x1, 0xff, 0xc9, 0x48, + 0xb5, 0x10, 0x15, 0x86, 0x10, 0xf, 0xfe, 0x1, + 0x35, 0x51, 0xe3, 0xa5, 0x0, 0x3f, 0xfd, 0x62, + 0xb5, 0x46, 0x10, 0x1, 0xcc, 0x20, 0x7, 0xff, + 0x10, 0x56, 0x1c, 0xc0, 0x3f, 0xc5, 0x3d, 0x99, + 0xff, 0xcc, 0xe6, 0x10, 0xf, 0xfe, 0x22, 0xdd, + 0x94, 0x40, 0x4, 0xfe, 0xe4, 0x1, 0xff, 0xd5, + 0x13, 0x3f, 0xfe, 0x69, 0x8, 0x7, 0xff, 0x15, + 0x79, 0x4, 0x9, 0xfa, 0xc, 0x3, 0xff, 0xac, + 0x4d, 0x5b, 0xbf, 0xfc, 0xca, 0x51, 0x0, 0xff, + 0xe2, 0xa5, 0xd5, 0xfc, 0x18, 0x7, 0xff, 0x67, + 0x9c, 0x8b, 0xff, 0x98, 0xc4, 0x1, 0xff, 0xc7, + 0x14, 0x41, 0x0, 0x7f, 0xff, 0xc0, 0x3f, 0xff, + 0xe0, 0x1f, 0xff, 0xf0, 0xf, 0xfe, 0x48, 0x80, + 0x7f, 0xff, 0xc0, 0x39, 0x67, 0x77, 0xe6, 0x10, + 0x8, 0xb9, 0x80, 0x3f, 0xff, 0xa9, 0xec, 0x45, + 0xc2, 0x2, 0x48, 0xf0, 0xc4, 0x1, 0xff, 0xce, + 0x5a, 0xff, 0xda, 0xe4, 0x1, 0xff, 0xc1, 0x38, + 0xcd, 0xdb, 0xd8, 0x80, 0x3f, 0xf8, 0x82, 0xd7, + 0xdd, 0xdf, 0xee, 0xdb, 0x84, 0x10, 0xf, 0xc0, + + /* U+7CFB "系" */ + 0x0, 0xff, 0xf9, 0x8, 0x88, 0xd1, 0xa, 0xcf, + 0x13, 0xc, 0x40, 0x1f, 0xfd, 0x71, 0x1c, 0x45, + 0x19, 0xc8, 0x99, 0x56, 0x66, 0x9d, 0xd1, 0x9, + 0x95, 0x52, 0xed, 0x98, 0xde, 0xe7, 0xfd, 0xdc, + 0xdc, 0xbb, 0x54, 0xc3, 0xb3, 0xce, 0x52, 0x88, + 0x7, 0xff, 0xc, 0x56, 0xb7, 0x77, 0x75, 0xff, + 0xf7, 0x76, 0xdd, 0xb3, 0x2b, 0xbd, 0x55, 0x4c, + 0xd1, 0x7, 0x73, 0x31, 0x54, 0x88, 0x33, 0x10, + 0x88, 0x3, 0xc2, 0x44, 0x34, 0x56, 0x77, 0x44, + 0x3d, 0x80, 0x3f, 0xf8, 0x82, 0xc6, 0x62, 0x28, + 0x46, 0x0, 0xff, 0xe0, 0x8, 0xf0, 0x7, 0xc2, + 0x6a, 0xcc, 0x77, 0x44, 0x26, 0x55, 0x4b, 0xb6, + 0x63, 0x75, 0xdc, 0xff, 0xbb, 0x75, 0x97, 0x53, + 0x10, 0x76, 0x53, 0x10, 0xf, 0xfe, 0x21, 0xc6, + 0x63, 0x77, 0x77, 0x77, 0xff, 0xee, 0xe6, 0x42, + 0x88, 0x7, 0x1c, 0xfd, 0x4c, 0xa2, 0xe, 0xe6, + 0x62, 0xa9, 0x10, 0x66, 0x22, 0x8, 0x80, 0x3f, + 0xfa, 0xc2, 0x46, 0x45, 0x84, 0x78, 0x3, 0xf1, + 0xcf, 0xca, 0x8, 0x0, 0x9a, 0xf5, 0xcc, 0x3, + 0xff, 0x82, 0x2b, 0x5d, 0xfb, 0x6e, 0x84, 0x1, + 0xff, 0xe3, 0x26, 0xbd, 0x62, 0x0, 0xa, 0x4f, + 0xca, 0x8, 0x7, 0xff, 0x0, 0x52, 0x72, 0x94, + 0x40, 0x92, 0xf0, 0x40, 0x3f, 0xfa, 0xc2, 0x91, + 0x52, 0xc6, 0x20, 0x2, 0x5a, 0xc9, 0x41, 0x1, + 0x49, 0xcb, 0x62, 0x0, 0xff, 0xe0, 0xa, 0x46, + 0xdb, 0x10, 0x4, 0x6f, 0x9b, 0x6, 0x1, 0xff, + 0xd4, 0x16, 0xab, 0x75, 0x69, 0xcf, 0xdc, 0xc5, + 0x28, 0x80, 0xa4, 0xe5, 0xb1, 0x0, 0x7f, 0xf0, + 0x4, 0xe3, 0x6d, 0xcc, 0x2, 0x37, 0xbd, 0x83, + 0x10, 0xf, 0xfe, 0xb0, 0xb5, 0x64, 0xa9, 0x0, + 0x4, 0x8c, 0x40, 0x24, 0x8a, 0x62, 0x0, 0xff, + 0xe0, 0xa, 0x4e, 0x61, 0xcc, 0x0, 0x27, 0x19, + 0x88, 0x41, 0x0, 0xff, 0xed, 0x89, 0xb5, 0x6e, + 0xad, 0xcc, 0x40, 0x32, 0x4f, 0xdb, 0x98, 0x80, + 0x7c, 0x2b, 0x39, 0x6c, 0x40, 0x1, 0x49, 0xdc, + 0x73, 0x0, 0xff, 0xf2, 0x12, 0x46, 0x7d, 0xb9, + 0x88, 0x0, 0x52, 0x33, 0x14, 0xc4, 0x4, 0xd5, + 0xf4, 0xc4, 0x0, 0x25, 0xac, 0xb6, 0x30, 0xf, + 0xa, 0x3c, 0xc2, 0x8, 0x7, 0xff, 0x78, 0x52, + 0x33, 0xe9, 0x88, 0x2, 0x25, 0x9d, 0xfd, 0x95, + 0x10, 0x1, 0xbd, 0xe5, 0x29, 0x0, 0x7c, 0x71, + 0x97, 0xc, 0xf7, 0xf6, 0xc4, 0x1, 0xff, 0xdf, + 0x15, 0x9d, 0xb6, 0x20, 0xf, 0x85, 0x27, 0x72, + 0x10, 0x40, 0x3f, 0xc7, 0x1f, 0x2a, 0x20, 0x1, + 0x49, 0xcc, 0x42, 0x8, 0x7, 0xff, 0x70, 0x52, + 0x20, 0xe4, 0x1, 0x9, 0xbd, 0xfd, 0xb1, 0x0, + 0x7f, 0xf1, 0x9, 0xab, 0xed, 0x88, 0x0, 0x26, + 0xf7, 0x94, 0xa4, 0x1, 0xff, 0xc3, 0x13, 0x3f, + 0xfe, 0x1a, 0x24, 0xaf, 0x7f, 0x6e, 0x62, 0x0, + 0x25, 0x9a, 0xd1, 0x76, 0x6f, 0xf3, 0xbf, 0xfa, + 0x21, 0x38, 0x28, 0x62, 0x1, 0x89, 0x6b, 0x29, + 0x48, 0x3, 0xfe, 0x39, 0xec, 0xcf, 0xfe, 0x15, + 0xdd, 0x50, 0x82, 0x1, 0xe2, 0x58, 0x9a, 0xa4, + 0xcf, 0xfd, 0x11, 0xfe, 0x77, 0xe6, 0x31, 0x0, + 0xf8, 0x56, 0xb2, 0x94, 0x80, 0x3f, 0x17, 0x8, + 0x7, 0xff, 0x14, 0x47, 0xe2, 0x2f, 0x8c, 0xc4, + 0x20, 0x1c, 0x24, 0x88, 0x55, 0xf3, 0x37, 0x9d, + 0xfd, 0x11, 0x9d, 0x48, 0x2, 0x15, 0xaf, 0x93, + 0x0, 0xf0, 0xb6, 0x77, 0xff, 0xff, 0x13, 0xbb, + 0xed, 0xdf, 0xb3, 0x12, 0xe2, 0x1, 0x96, 0x2e, + 0xd5, 0x5e, 0x99, 0xf4, 0x47, 0x9d, 0xf4, 0x56, + 0x52, 0x88, 0x4, 0x4f, 0x2a, 0x20, 0x1f, 0x8, + 0x7, 0xff, 0x8, 0x96, 0x20, 0xc8, 0x42, 0x1, + 0xff, 0xd1, 0x14, 0x79, 0x93, 0x10, 0x7, 0xf0, + 0xad, 0x6c, 0xbc, 0xe7, 0xd2, 0x88, 0x7, 0xff, + 0x1c, 0x52, 0x7e, 0x9d, 0xd3, 0x79, 0x6a, 0x20, + 0x1f, 0xfc, 0xd2, 0x7d, 0xb8, 0x66, 0x4e, 0xea, + 0x98, 0xc4, 0x3, 0xe3, 0x68, 0x63, 0x10, 0xf, + 0xfe, 0x38, 0xac, 0xe5, 0xb1, 0x0, 0x47, 0x19, + 0x4a, 0x20, 0x1f, 0xfc, 0xd2, 0x7c, 0xc4, 0xa9, + 0x0, 0x9, 0x67, 0x3e, 0xdc, 0xc4, 0x3, 0xff, + 0x9a, 0x6d, 0x7f, 0x4c, 0x40, 0x1, 0x38, 0xcc, + 0x39, 0x0, 0x7f, 0xf4, 0xcd, 0xab, 0x72, 0x54, + 0x80, 0x2, 0x91, 0x9f, 0x6e, 0x60, 0x1f, 0xfc, + 0x63, 0x6a, 0xdc, 0x94, 0x10, 0x0, 0xa4, 0xe6, + 0x1c, 0xc0, 0x3f, 0xfb, 0x46, 0xd5, 0x98, 0x84, + 0x10, 0x0, 0xa4, 0x66, 0xd3, 0x10, 0x7, 0xf1, + 0x2c, 0x5f, 0x64, 0xa9, 0x0, 0x46, 0xf7, 0xf6, + 0xc4, 0x1, 0xff, 0xe0, 0x13, 0x7b, 0xfb, 0x63, + 0x0, 0x89, 0x67, 0x30, 0xe6, 0x1, 0xc4, 0xf8, + 0xa8, 0x20, 0x11, 0xb5, 0x6e, 0x42, 0x8, 0x7, + 0xff, 0x9c, 0x52, 0x73, 0x10, 0x60, 0x11, 0xb8, + 0x0, 0x40, 0x31, 0x2c, 0xee, 0x4c, 0xaf, 0xb2, + 0x54, 0x80, 0x3f, 0xfd, 0xe6, 0xf9, 0xb9, 0xba, + 0xb7, 0x31, 0x0, + + /* U+7D22 "索" */ + 0x0, 0xff, 0xee, 0x9, 0x22, 0x71, 0x8, 0x7, + 0xff, 0xfd, 0x6e, 0xae, 0xea, 0xb2, 0x0, 0xff, + 0xff, 0x80, 0x7f, 0xf9, 0x45, 0x66, 0xef, 0xff, + 0xa9, 0x2e, 0x20, 0x10, 0xbf, 0xdd, 0xff, 0xf4, + 0xe5, 0x44, 0x3, 0xc6, 0x4a, 0x89, 0xff, 0xd4, + 0x21, 0x0, 0xe1, 0x34, 0x4f, 0xfe, 0x9a, 0x98, + 0x7, 0xc4, 0xdf, 0x99, 0xff, 0xd4, 0x84, 0x0, + 0xe4, 0x9c, 0xcf, 0xfe, 0x9f, 0x38, 0x80, 0x7c, + 0x26, 0x7f, 0xfd, 0x62, 0x10, 0x8, 0x49, 0x4c, + 0xff, 0xfa, 0x64, 0x20, 0x1f, 0xff, 0xf0, 0xf, + 0xfe, 0x21, 0x3e, 0x6e, 0xff, 0xf5, 0x29, 0x84, + 0x2, 0x16, 0xdd, 0xff, 0xea, 0xca, 0x0, 0x78, + 0x7c, 0x48, 0xbf, 0xfa, 0x82, 0x1, 0xf0, 0x91, + 0x7f, 0xf5, 0xc, 0x40, 0x3f, 0xf8, 0x2, 0xd7, + 0xff, 0xff, 0xc7, 0xeb, 0x62, 0x0, 0xc4, 0xd5, + 0xdf, 0xff, 0xfd, 0x1c, 0x72, 0x0, 0xff, 0xe3, + 0x8b, 0x80, 0x7f, 0xf1, 0x5, 0x27, 0x2d, 0x88, + 0x0, 0x29, 0x76, 0x51, 0x0, 0xff, 0x12, 0x29, + 0x88, 0x7, 0xff, 0x8, 0x40, 0x3f, 0xfa, 0x2, + 0x20, 0xf, 0x13, 0x56, 0x5b, 0x10, 0x0, 0x96, + 0xbe, 0xd8, 0x80, 0x3f, 0xa, 0x46, 0x6d, 0xd6, + 0x7d, 0xb9, 0x0, 0x7f, 0xf3, 0x87, 0x98, 0xce, + 0x5e, 0x10, 0x13, 0x8c, 0xfe, 0xe6, 0x54, 0x4e, + 0x6c, 0xa9, 0x0, 0xa4, 0x66, 0x29, 0x44, 0x3, + 0xf1, 0x35, 0x7d, 0xb9, 0x80, 0x5, 0x22, 0xe, + 0x40, 0x1f, 0xfc, 0xe, 0x73, 0x3c, 0x42, 0x1, + 0xe2, 0x6b, 0xcc, 0xad, 0x88, 0x0, 0xfe, 0xc6, + 0x2, 0x6a, 0xec, 0x60, 0x12, 0x4e, 0x5b, 0x98, + 0x80, 0x7c, 0x4b, 0x39, 0xb2, 0xa2, 0x2, 0x6f, + 0x7f, 0x6c, 0x60, 0x1f, 0xfc, 0x12, 0x6a, 0xcc, + 0xd0, 0x80, 0x1f, 0xfc, 0x41, 0x47, 0xad, 0xeb, + 0x85, 0x20, 0xe, 0x49, 0xe9, 0x52, 0x0, 0xc2, + 0x91, 0x98, 0xa6, 0x30, 0x1, 0x35, 0x66, 0x21, + 0x1, 0x62, 0x5c, 0xc4, 0x3, 0xff, 0xb8, 0x28, + 0xf5, 0xba, 0xa6, 0x31, 0x0, 0x1b, 0x56, 0xea, + 0xeb, 0x3e, 0xdc, 0xc4, 0xd, 0xab, 0x75, 0x2a, + 0x40, 0x2b, 0x56, 0xed, 0x19, 0xf9, 0x2a, 0x40, + 0x1f, 0xfd, 0xd2, 0x59, 0xcf, 0xb7, 0x30, 0x8, + 0x91, 0x4c, 0x44, 0x6f, 0x7d, 0x92, 0xa4, 0x1, + 0xc2, 0xb7, 0x96, 0xe6, 0x22, 0x36, 0xad, 0xd5, + 0x39, 0x88, 0x7, 0xff, 0x68, 0x51, 0xbd, 0x8c, + 0x3, 0xa, 0x45, 0xfe, 0x42, 0x8, 0x7, 0x84, + 0x7c, 0x6b, 0x3b, 0xa9, 0x52, 0x0, 0x12, 0xc6, + 0x7d, 0xb9, 0x88, 0x7, 0xff, 0x0, 0x9f, 0x3b, + 0xbf, 0xf8, 0xdf, 0xd7, 0x8, 0x20, 0x1c, 0x29, + 0x17, 0xdf, 0xff, 0xee, 0xef, 0xf6, 0x4a, 0x90, + 0x7, 0x85, 0x23, 0x31, 0x4c, 0x40, 0x1f, 0xc3, + 0xe2, 0x3f, 0xfc, 0x70, 0xf, 0xfe, 0x50, 0x91, + 0x71, 0x9f, 0x91, 0x3c, 0xab, 0xe4, 0x20, 0x1, + 0x2c, 0xee, 0x39, 0x80, 0x78, 0xe7, 0xf7, 0x7d, + 0xdd, 0xfe, 0xdc, 0xbd, 0xef, 0xff, 0xfa, 0xd8, + 0x40, 0x21, 0x6d, 0xdf, 0x66, 0x76, 0xcc, 0xaa, + 0xee, 0xaa, 0xf5, 0xee, 0x42, 0x9, 0x2d, 0x29, + 0x80, 0x7c, 0x24, 0x5f, 0x8, 0xf8, 0x9, 0xab, + 0x31, 0x7b, 0xdb, 0x2a, 0x20, 0x1f, 0xfc, 0xa1, + 0x48, 0xcf, 0xdd, 0x76, 0xd3, 0xa1, 0x0, 0x78, + 0xde, 0xfb, 0x69, 0x88, 0x3, 0xff, 0x8c, 0x29, + 0x17, 0xf9, 0x8, 0x20, 0x29, 0x1d, 0xa, 0x20, + 0x1f, 0xfc, 0xa1, 0x4a, 0x89, 0x52, 0x2, 0x58, + 0xbd, 0xec, 0x96, 0x31, 0x0, 0xff, 0xe4, 0x9, + 0xac, 0x5e, 0xf5, 0xba, 0x8, 0xa, 0x3d, 0xfd, + 0xb9, 0x88, 0x7, 0xff, 0x38, 0x91, 0xeb, 0x7b, + 0x25, 0x8c, 0x44, 0x6d, 0x39, 0xf9, 0x2c, 0x62, + 0x1, 0xfc, 0x26, 0xd1, 0x7b, 0xd9, 0x4e, 0x84, + 0x2, 0x6d, 0x39, 0xf7, 0x8, 0x20, 0x1f, 0xfd, + 0x71, 0x36, 0x9c, 0xfc, 0x95, 0x20, 0x13, 0x69, + 0xcf, 0xb7, 0x31, 0x0, 0xc4, 0x93, 0x6e, 0x84, + 0x0, 0x24, 0x7a, 0xde, 0xc9, 0x63, 0x10, 0xf, + 0xff, 0x0, 0x9b, 0x56, 0xea, 0x98, 0x80, 0x2, + 0xb7, 0x65, 0x10, 0x8, 0x96, 0xb2, 0xe6, 0x57, + 0xba, 0xb8, 0x52, 0x0, 0xff, 0xf5, 0x92, 0xce, + 0xea, 0xf3, 0xf2, 0x10, 0x40, + + /* U+7EBF "线" */ + 0x0, 0xff, 0xf2, 0x89, 0xaa, 0xf1, 0x88, 0x7, + 0xff, 0x88, 0xa3, 0x7f, 0x6e, 0x14, 0x80, 0x3f, + 0xf9, 0x65, 0x76, 0xaa, 0xae, 0x88, 0x3, 0x13, + 0x4c, 0x98, 0xc4, 0x3, 0xff, 0xac, 0x76, 0xc4, + 0x4, 0x8a, 0x40, 0x1f, 0xfd, 0x72, 0x69, 0x86, + 0x64, 0xe7, 0x6d, 0xc2, 0x90, 0x7, 0xff, 0x41, + 0x65, 0xc4, 0x2, 0x58, 0x72, 0x0, 0xff, 0xeb, + 0x13, 0x5f, 0xed, 0x3a, 0x9, 0x23, 0xd6, 0xea, + 0x98, 0x80, 0x3f, 0xf9, 0x42, 0xd2, 0xa2, 0x0, + 0x27, 0x95, 0x0, 0xff, 0xed, 0x89, 0x2c, 0x5f, + 0x64, 0xa9, 0x8, 0xb5, 0x48, 0x3, 0xff, 0x92, + 0x91, 0x3, 0x0, 0x92, 0xe4, 0xc0, 0x3f, 0xfc, + 0x46, 0xd5, 0xbd, 0xac, 0x24, 0x20, 0x1f, 0xfc, + 0x61, 0x68, 0x61, 0x0, 0x13, 0xc3, 0x8, 0x7, + 0xff, 0x58, 0xd5, 0x10, 0xac, 0xee, 0x89, 0xab, + 0xb6, 0x6f, 0x7f, 0xbb, 0x9b, 0xa8, 0x40, 0xf, + 0xfe, 0x22, 0x44, 0xc, 0x0, 0x2d, 0x30, 0x60, + 0x1e, 0x49, 0xdc, 0x85, 0x20, 0x8, 0x49, 0x10, + 0xac, 0xf1, 0x9, 0xab, 0xce, 0x61, 0x0, 0x85, + 0x66, 0xed, 0x53, 0x10, 0x76, 0x54, 0x41, 0x90, + 0x80, 0x42, 0x22, 0x1, 0x10, 0x7, 0xff, 0x4, + 0xe2, 0x58, 0x40, 0x56, 0xe1, 0x0, 0x3c, 0x71, + 0x2c, 0x46, 0xf7, 0x64, 0x0, 0x24, 0xdd, 0xaa, + 0x61, 0xdc, 0xca, 0x86, 0x42, 0x1, 0xe1, 0x24, + 0x42, 0xb3, 0xc4, 0x26, 0xaf, 0x37, 0x5d, 0xfe, + 0xee, 0x6c, 0xa8, 0x80, 0x7f, 0xc4, 0xfe, 0xe4, + 0x0, 0x48, 0xb5, 0x10, 0xe, 0x26, 0xf7, 0x20, + 0x0, 0xad, 0xc2, 0x0, 0x1f, 0x54, 0xd1, 0x59, + 0xdd, 0x13, 0x57, 0x92, 0xa0, 0x18, 0xa7, 0xee, + 0xd5, 0x30, 0xee, 0x65, 0x43, 0x22, 0x8, 0x7, + 0xff, 0x10, 0x96, 0x7e, 0xc, 0x2, 0x32, 0x16, + 0x88, 0x4c, 0xaa, 0x97, 0xf2, 0x60, 0x1, 0x5b, + 0xb2, 0x88, 0x4, 0x4d, 0x59, 0x75, 0x31, 0x7, + 0x65, 0x43, 0x52, 0x20, 0x4, 0x5c, 0xc0, 0x1f, + 0xfd, 0x11, 0x49, 0x62, 0x0, 0xe3, 0x68, 0x83, + 0xb9, 0x98, 0xaa, 0x42, 0x0, 0x92, 0x2d, 0x44, + 0x3, 0xff, 0x8e, 0x5e, 0x20, 0x18, 0x84, 0x3, + 0xff, 0x82, 0x24, 0x68, 0xac, 0xf0, 0xc6, 0x1, + 0xe1, 0x7b, 0x30, 0x23, 0x45, 0x67, 0x74, 0x4d, + 0x4b, 0x10, 0x7, 0x24, 0xc9, 0x84, 0x3, 0xff, + 0x92, 0x24, 0xe0, 0x19, 0xb1, 0x54, 0xcf, 0x13, + 0x57, 0x9b, 0xdf, 0xee, 0xdc, 0xba, 0x98, 0x7b, + 0xb1, 0x80, 0x78, 0x5f, 0x3f, 0x72, 0xea, 0x62, + 0xe, 0xe3, 0xd6, 0x20, 0x0, 0xa4, 0xd3, 0x10, + 0x7, 0xff, 0x4, 0x48, 0xd1, 0x59, 0xe2, 0x6a, + 0xe1, 0x40, 0x31, 0x35, 0x52, 0x61, 0xd9, 0x50, + 0xc8, 0x40, 0x2, 0x46, 0x8a, 0xcf, 0x17, 0x84, + 0x1, 0xff, 0xc4, 0x26, 0xd9, 0x40, 0x1, 0x35, + 0x51, 0x84, 0x3, 0xf9, 0x27, 0x7b, 0xfd, 0xdb, + 0x97, 0x53, 0xe, 0xca, 0x84, 0x20, 0x1c, 0x24, + 0x8c, 0xf1, 0x35, 0x79, 0xbd, 0xfe, 0xed, 0xcb, + 0xa9, 0x87, 0x64, 0x10, 0xf, 0xfe, 0x11, 0xc7, + 0xc9, 0x80, 0x9, 0xfa, 0x50, 0x40, 0x3f, 0xe7, + 0x13, 0x10, 0x8, 0x48, 0xd1, 0x59, 0xe2, 0x6e, + 0xd0, 0x80, 0x18, 0xd6, 0x26, 0x1d, 0x95, 0xc, + 0x84, 0x3, 0x89, 0xa1, 0xd0, 0x80, 0x3f, 0xf8, + 0x24, 0xd7, 0xae, 0x40, 0x4, 0x9f, 0x83, 0x1, + 0x23, 0x45, 0x67, 0x89, 0xa7, 0x40, 0x39, 0xcd, + 0xef, 0xf7, 0x6e, 0x5d, 0x4c, 0x3b, 0x22, 0x17, + 0xc, 0x2, 0x23, 0x50, 0xf, 0xfe, 0x2, 0x4f, + 0xcb, 0xc5, 0xfc, 0x18, 0x7, 0xe2, 0x5a, 0xf9, + 0x41, 0x0, 0x85, 0xeb, 0xfb, 0xfd, 0xdb, 0x97, + 0x53, 0xe, 0xcb, 0xa2, 0x0, 0x12, 0x20, 0x80, + 0x7f, 0xf0, 0x48, 0xd4, 0x3, 0x2f, 0x98, 0x7, + 0xe1, 0x5b, 0xa6, 0x20, 0x1, 0xc7, 0x41, 0x80, + 0x79, 0x27, 0x29, 0x48, 0x3, 0xc2, 0x66, 0x21, + 0x1, 0x23, 0x45, 0x68, 0x9a, 0xbc, 0x85, 0x0, + 0xff, 0xe4, 0x2f, 0x98, 0x4, 0x2a, 0x84, 0x1, + 0x85, 0x27, 0x29, 0x4, 0x5, 0x27, 0x5c, 0xc0, + 0x3f, 0x26, 0xb8, 0x80, 0x92, 0x2b, 0x44, 0xd5, + 0xe7, 0x7f, 0xbb, 0x72, 0xea, 0x5d, 0x95, 0xc, + 0x80, 0x3f, 0xf9, 0x22, 0x88, 0x20, 0x8, 0xf1, + 0x4, 0x96, 0xbe, 0xd8, 0x80, 0x4, 0xd5, 0x46, + 0x10, 0xf, 0xf9, 0x23, 0xfb, 0x9b, 0x75, 0x2e, + 0xca, 0x86, 0x20, 0x1f, 0xfd, 0x82, 0xb4, 0x10, + 0x9, 0x23, 0x31, 0x4a, 0x20, 0x27, 0x19, 0x89, + 0x41, 0x0, 0xff, 0xe1, 0x8, 0xc0, 0x1f, 0xfc, + 0x81, 0x34, 0x66, 0x20, 0x80, 0x7f, 0xf2, 0x4f, + 0x14, 0x3, 0x9, 0x8, 0x12, 0xce, 0x61, 0xcc, + 0x40, 0x3f, 0xfa, 0x22, 0x68, 0xcf, 0x35, 0x7b, + 0xdf, 0xd9, 0x73, 0x2e, 0x40, 0xf, 0xfe, 0x29, + 0x2c, 0x5e, 0xd2, 0x0, 0x78, 0x9f, 0xe9, 0x88, + 0x3, 0xf1, 0x10, 0x40, 0x3f, 0xc2, 0x46, 0xac, + 0xf3, 0x59, 0xbd, 0xfd, 0x97, 0x30, 0xca, 0x84, + 0x20, 0x24, 0x8c, 0xfe, 0xe0, 0x1f, 0xf0, 0x9b, + 0x4e, 0x76, 0xd3, 0xa1, 0x0, 0x4, 0x60, 0x8, + 0x96, 0x8c, 0x3, 0xf8, 0x97, 0xbf, 0x21, 0x4, + 0x3, 0x2d, 0x76, 0xe5, 0x4c, 0x32, 0x99, 0x8, + 0x0, 0x4d, 0x19, 0xe6, 0xb3, 0xbf, 0xb6, 0xe6, + 0x14, 0x80, 0x30, 0x9a, 0xbd, 0x66, 0xf6, 0x4b, + 0x18, 0x80, 0x9, 0x62, 0xf7, 0xbe, 0x10, 0x2, + 0x27, 0xe8, 0x30, 0xf, 0x9b, 0x88, 0x4d, 0xc, + 0x3, 0x9f, 0x4c, 0x0, 0x26, 0x8d, 0x13, 0x79, + 0xdf, 0xd9, 0x73, 0xc, 0xa6, 0x20, 0x1c, 0x28, + 0xf3, 0x7b, 0xfd, 0x95, 0xa, 0x64, 0x0, 0x13, + 0x68, 0xce, 0xda, 0x74, 0x20, 0x16, 0x98, 0x30, + 0x8, 0x9f, 0x31, 0x2c, 0x86, 0x66, 0xe7, 0x10, + 0x15, 0x31, 0x0, 0xc4, 0xdb, 0xdf, 0xd9, 0x72, + 0xec, 0x86, 0x20, 0x1f, 0xfc, 0x31, 0x60, 0x54, + 0x20, 0x8, 0x4d, 0x5e, 0x73, 0xb9, 0x92, 0xe6, + 0x20, 0x1f, 0x89, 0xf6, 0x94, 0x40, 0x23, 0x69, + 0xbc, 0xc4, 0xa8, 0x80, 0xb5, 0x20, 0x7, 0x84, + 0x60, 0xf, 0xfe, 0x71, 0x3e, 0xdc, 0xd6, 0x77, + 0x32, 0xa1, 0x8c, 0x40, 0x3f, 0xf8, 0x82, 0xb5, + 0xf9, 0x2c, 0x86, 0x22, 0x0, 0x9, 0x2c, 0x6c, + 0x98, 0x6, + + /* U+7EDF "统" */ + 0x0, 0xff, 0xe4, 0x11, 0x90, 0x7, 0xff, 0x54, + 0x4c, 0xc4, 0x1, 0xff, 0xe1, 0x16, 0xec, 0xde, + 0xda, 0x73, 0x0, 0xff, 0xe6, 0xb, 0x67, 0xf6, + 0x63, 0xdc, 0x80, 0x3f, 0xfb, 0xc5, 0x36, 0x60, + 0x1, 0x26, 0x1, 0x0, 0xff, 0xe6, 0xb, 0xd2, + 0x0, 0x45, 0x30, 0xa0, 0x1f, 0xfd, 0xc3, 0xb6, + 0x20, 0x8, 0x5a, 0x1c, 0x80, 0x3f, 0xf9, 0xa2, + 0xde, 0xc2, 0x0, 0x15, 0x97, 0x20, 0xf, 0xfe, + 0xc0, 0xb4, 0x30, 0x80, 0x47, 0x36, 0x80, 0x1f, + 0xfd, 0x14, 0xa7, 0x10, 0x13, 0x60, 0x10, 0xf, + 0xfe, 0xb9, 0xcd, 0xa0, 0x4, 0x2b, 0xe, 0x40, + 0x1f, 0xe3, 0x9e, 0xff, 0xff, 0xe3, 0x63, 0x8, + 0x9, 0xac, 0x67, 0xff, 0xff, 0x1b, 0x1c, 0x80, + 0x3f, 0xf8, 0x2, 0xb0, 0xe4, 0x1, 0x1c, 0xc2, + 0x0, 0x7f, 0xfc, 0x4, 0x3, 0xff, 0x82, 0x71, + 0x68, 0x1, 0x13, 0xfb, 0x90, 0x7, 0x24, 0xe6, + 0x21, 0x48, 0xe, 0x7b, 0xff, 0xfe, 0xeb, 0x62, + 0x0, 0xe3, 0x8c, 0xef, 0xff, 0xfe, 0x4e, 0xb9, + 0x0, 0x7f, 0x14, 0x7b, 0x8, 0x0, 0x9a, 0x60, + 0xc0, 0x38, 0x9e, 0x58, 0xcc, 0xf5, 0xcc, 0x20, + 0x1f, 0xfc, 0x3, 0x99, 0x31, 0x0, 0x47, 0x3c, + 0xe6, 0x20, 0x1e, 0x13, 0x54, 0x20, 0xf, 0xfe, + 0x41, 0x3f, 0x39, 0x80, 0x5, 0x66, 0x48, 0x1, + 0xc2, 0xd3, 0x4, 0x1, 0x13, 0xfb, 0x8, 0x7, + 0xf9, 0x27, 0x9c, 0x80, 0x24, 0x9e, 0x62, 0x0, + 0xf0, 0xb5, 0xf6, 0x55, 0xf3, 0x90, 0x7, 0xff, + 0xc, 0x52, 0x7e, 0xc, 0x2, 0x36, 0xf0, 0x55, + 0x33, 0xba, 0x27, 0x61, 0x0, 0x21, 0x69, 0x83, + 0x0, 0xfe, 0x14, 0xaa, 0x31, 0x0, 0x5, 0x26, + 0x98, 0x80, 0x3f, 0xb, 0x43, 0x90, 0x0, 0xe3, + 0xdc, 0x80, 0x3f, 0xf8, 0x7, 0x14, 0xc4, 0x1, + 0xc6, 0xf5, 0x75, 0x49, 0x88, 0x3b, 0x18, 0x80, + 0x5, 0x6e, 0x10, 0x3, 0xf8, 0x9a, 0xa8, 0xa2, + 0x0, 0x15, 0xaa, 0x30, 0x80, 0x7f, 0xf0, 0xe, + 0x39, 0x88, 0x0, 0x51, 0xf0, 0x60, 0x1f, 0xe3, + 0xa7, 0x10, 0xf, 0x9, 0x10, 0xd1, 0x6, 0x20, + 0x1e, 0x4b, 0xb2, 0x88, 0x7, 0xc2, 0x93, 0xf2, + 0x82, 0x0, 0x26, 0xaa, 0x20, 0x8c, 0x44, 0x33, + 0x91, 0xa, 0xa6, 0x63, 0xba, 0x2c, 0x4, 0x40, + 0x11, 0x3f, 0x41, 0x80, 0x7f, 0x1d, 0xd5, 0x2f, + 0x7b, 0xfd, 0xdb, 0xac, 0x83, 0x11, 0x0, 0x64, + 0x99, 0x28, 0x80, 0x71, 0xbd, 0x6f, 0xdb, 0x10, + 0x7, 0x13, 0x5f, 0xfd, 0xdc, 0xdd, 0x66, 0x57, + 0x6a, 0xa4, 0xca, 0x20, 0xee, 0x63, 0x10, 0xe, + 0x27, 0xf7, 0x20, 0xf, 0xc4, 0x8a, 0x84, 0x20, + 0x19, 0x27, 0x9c, 0x80, 0x2, 0xb5, 0x46, 0x20, + 0xf, 0x87, 0xdc, 0x84, 0x3, 0xff, 0x88, 0x22, + 0x22, 0x19, 0x91, 0x54, 0xcc, 0x77, 0x44, 0x26, + 0x55, 0x53, 0x98, 0x4, 0x71, 0x2a, 0x20, 0x1f, + 0xfc, 0x11, 0x5a, 0xa3, 0x10, 0x0, 0x9b, 0x69, + 0x44, 0x3, 0xf8, 0xae, 0x91, 0xc, 0xf1, 0x33, + 0x44, 0x53, 0x57, 0x9d, 0xfe, 0xee, 0x6e, 0xb3, + 0x17, 0x13, 0x54, 0xbb, 0x2b, 0x34, 0xab, 0x47, + 0xb9, 0x0, 0x5, 0xf4, 0x80, 0x3f, 0xe2, 0x7d, + 0xa5, 0x10, 0x1, 0xc7, 0x49, 0x80, 0x70, 0x91, + 0xaa, 0x8c, 0x40, 0xde, 0xed, 0x30, 0xec, 0xc3, + 0xd8, 0x84, 0xd5, 0x2c, 0x80, 0x3f, 0x1d, 0xee, + 0x65, 0xb6, 0xa0, 0x1e, 0x39, 0xeb, 0xcf, 0xc8, + 0x30, 0xf, 0xc2, 0xb5, 0x90, 0x60, 0x10, 0x9a, + 0xfd, 0x52, 0xf3, 0x7b, 0xfd, 0xdb, 0x95, 0x76, + 0x20, 0xf, 0xf8, 0x40, 0x31, 0x80, 0x7f, 0xf3, + 0x84, 0xd0, 0xc4, 0x3, 0xf1, 0xbe, 0x7d, 0x28, + 0x80, 0x70, 0x9b, 0x3b, 0x2a, 0x19, 0x8, 0x0, + 0x4d, 0x15, 0xb4, 0x40, 0x3f, 0x84, 0xdc, 0x3, + 0xbc, 0x40, 0x3f, 0xfb, 0x22, 0x0, 0x10, 0xf, + 0x84, 0xd1, 0x5e, 0x26, 0xaf, 0x7b, 0xfd, 0xd9, + 0x75, 0xa, 0x40, 0x1f, 0xc6, 0x20, 0x1c, 0xc2, + 0x40, 0x1f, 0xfd, 0x92, 0x59, 0x77, 0x4d, 0x66, + 0xff, 0xbb, 0x2e, 0xa1, 0xd9, 0x50, 0x84, 0x3, + 0xff, 0x8c, 0xfa, 0x60, 0x10, 0x91, 0x0, 0x3f, + 0xfb, 0x64, 0xb1, 0x6, 0x53, 0x20, 0xf, 0xfe, + 0x92, 0x62, 0x0, 0x64, 0xc4, 0x0, 0xff, 0xf6, + 0x9, 0x1a, 0xbc, 0x55, 0xef, 0x7d, 0x28, 0x7, + 0xc5, 0x88, 0x20, 0x12, 0x62, 0x0, 0x7f, 0xf3, + 0xc9, 0xea, 0x8e, 0xa6, 0x20, 0x1f, 0xfc, 0x1, + 0x24, 0x57, 0x9a, 0xcd, 0xee, 0x6e, 0x54, 0x3a, + 0xa1, 0x8, 0x31, 0x10, 0x3, 0xa, 0xc3, 0x10, + 0x4, 0x58, 0x82, 0x1, 0xff, 0xcf, 0x1f, 0x75, + 0x8a, 0x87, 0x10, 0x8, 0x96, 0x26, 0xf3, 0xbf, + 0xb6, 0xea, 0x19, 0x4c, 0x84, 0x0, 0x26, 0xad, + 0x15, 0x7b, 0xf8, 0xe4, 0x0, 0x26, 0xab, 0x51, + 0x0, 0xa, 0xc3, 0x10, 0x7, 0xff, 0x44, 0x4c, + 0x2, 0x13, 0x10, 0x9, 0xb1, 0x98, 0x86, 0x20, + 0x18, 0x8d, 0x5e, 0x6b, 0x3b, 0xfb, 0x2a, 0x5d, + 0x50, 0x80, 0x4, 0xb1, 0x98, 0x94, 0x10, 0x0, + 0xa5, 0xd9, 0x44, 0x3, 0xff, 0x82, 0x20, 0x18, + 0x4c, 0x40, 0x3e, 0x15, 0x21, 0x0, 0x9, 0xb0, + 0x6, 0x4d, 0x64, 0x67, 0x9b, 0xde, 0xfd, 0xca, + 0x86, 0x53, 0x10, 0xf, 0x1b, 0x4e, 0x76, 0xd3, + 0x98, 0x80, 0x5, 0x27, 0x6d, 0x44, 0x3, 0xff, + 0x84, 0x5c, 0x40, 0x19, 0x6b, 0xfd, 0xdd, 0xe9, + 0x40, 0x9, 0x70, 0xc0, 0x39, 0x22, 0xe6, 0x19, + 0x8, 0x40, 0x3f, 0xf8, 0x66, 0xa0, 0x22, 0x0, + 0x9, 0x2c, 0x67, 0xdb, 0x18, 0x7, 0xff, 0x14, + 0x5b, 0xe1, 0x8, 0x40, 0x30, 0x8f, 0x0, 0x4, + 0x96, 0x64, 0xa0, 0x1f, 0xfd, 0x33, 0x9f, 0xbb, + 0x6f, 0x6d, 0x39, 0x88, 0x7, 0xff, 0x28, 0xde, + 0xf7, 0xbf, 0xff, 0xee, 0xda, 0x62, 0x0, 0x80, + + /* U+7EF4 "维" */ + 0x0, 0xff, 0xe3, 0x88, 0xc0, 0x1f, 0xff, 0xf0, + 0xf, 0xc7, 0x39, 0xdc, 0xca, 0x63, 0x0, 0xff, + 0xe4, 0x1c, 0x6f, 0xf6, 0xdb, 0x98, 0x0, 0x4d, + 0xef, 0x7b, 0x94, 0xa2, 0x1, 0xff, 0xd8, 0x3b, + 0x62, 0x1, 0x31, 0x2, 0x0, 0xff, 0xe3, 0x9d, + 0xb1, 0x0, 0x90, 0x9, 0x0, 0x4, 0x85, 0xc8, + 0x44, 0xb7, 0x8, 0x1, 0xff, 0xd6, 0x4a, 0x61, + 0x0, 0xb, 0x7b, 0x8, 0x7, 0xff, 0x19, 0x29, + 0x84, 0x2, 0x5e, 0x61, 0x0, 0x85, 0xbd, 0xc8, + 0x0, 0x2d, 0xe, 0x40, 0x1f, 0xfd, 0x21, 0x5f, + 0x61, 0x0, 0x14, 0xda, 0x0, 0x7f, 0xf1, 0x85, + 0x79, 0x84, 0x0, 0x2d, 0x2a, 0x1, 0xf1, 0xcd, + 0x18, 0x4, 0x75, 0x43, 0x0, 0xff, 0xe8, 0x13, + 0x4a, 0x0, 0x49, 0xc, 0x40, 0x1f, 0xfc, 0x62, + 0x69, 0x50, 0x8, 0x9a, 0xcc, 0x3, 0xf8, 0x5a, + 0x5d, 0x5e, 0x7a, 0x4c, 0x3, 0xff, 0x9e, 0x97, + 0x26, 0x0, 0x27, 0x85, 0x10, 0xf, 0xfe, 0x32, + 0x5c, 0x98, 0x6, 0x27, 0xce, 0xef, 0xfb, 0xed, + 0x91, 0xa3, 0x7f, 0xbb, 0xff, 0x81, 0x8e, 0x40, + 0x1f, 0xf1, 0x34, 0x30, 0x80, 0xac, 0x49, 0x80, + 0x78, 0x9a, 0xf7, 0x25, 0x48, 0x3, 0x13, 0xcb, + 0x8, 0x7, 0xc2, 0x3f, 0xfd, 0x50, 0xf, 0xfe, + 0x2, 0x44, 0xc, 0x0, 0x91, 0x5, 0x10, 0xe, + 0x15, 0x88, 0x21, 0x1b, 0xfb, 0x88, 0xb, 0x4c, + 0x10, 0x7, 0x24, 0x6f, 0x77, 0xfd, 0x8e, 0x40, + 0x19, 0x6b, 0xbb, 0xff, 0x83, 0x8e, 0x40, 0x1f, + 0x8e, 0x64, 0xa2, 0x4, 0xf2, 0xc4, 0x1, 0xe3, + 0x98, 0x51, 0x0, 0x24, 0x5a, 0x82, 0xd4, 0x20, + 0x7, 0xe2, 0x20, 0x8f, 0xff, 0x3, 0xc0, 0x38, + 0xc4, 0x7f, 0xf8, 0x60, 0x1f, 0xa, 0x4f, 0x31, + 0x0, 0xa5, 0xd8, 0x51, 0xa, 0xcc, 0x78, 0xae, + 0x72, 0x0, 0x1c, 0x4b, 0x1b, 0x6d, 0x20, 0x80, + 0x7f, 0xf9, 0xd2, 0x29, 0x88, 0x2, 0x14, 0x9c, + 0xc5, 0xda, 0xa6, 0x50, 0xea, 0x40, 0x2, 0x7f, + 0x72, 0x58, 0x93, 0x0, 0x8e, 0x1d, 0x0, 0x3f, + 0xfc, 0x69, 0x88, 0x1, 0x84, 0x8d, 0x15, 0x4c, + 0xec, 0x82, 0x1, 0x89, 0xba, 0xc, 0x0, 0xb2, + 0xe4, 0x2b, 0x5a, 0xfa, 0x1, 0xc9, 0x5f, 0xff, + 0xfc, 0xd, 0x82, 0x0, 0xcd, 0x7f, 0xff, 0xf6, + 0x39, 0x0, 0x7c, 0xb7, 0xdc, 0xff, 0x76, 0xe5, + 0xd5, 0x23, 0x4d, 0x44, 0x0, 0x4f, 0xd2, 0x60, + 0x1c, 0x73, 0xf9, 0x4a, 0x20, 0x1f, 0xfe, 0x81, + 0x18, 0x3, 0xc2, 0xb5, 0x6a, 0x20, 0x71, 0xf0, + 0x60, 0x1f, 0x84, 0x88, 0x1, 0xfe, 0x49, 0xde, + 0xef, 0xfb, 0x1c, 0x80, 0x32, 0xd7, 0x77, 0xfd, + 0xae, 0x40, 0x1f, 0xfc, 0x32, 0x6a, 0xa2, 0x8, + 0x92, 0x79, 0xc8, 0x3, 0xff, 0x98, 0x64, 0x23, + 0xff, 0xc0, 0xf0, 0xe, 0x31, 0x1f, 0xfe, 0x8, + 0x7, 0xff, 0x8, 0x52, 0x7e, 0x50, 0x5, 0x6e, + 0x98, 0x80, 0x38, 0x48, 0xd1, 0x50, 0x80, 0x3f, + 0xfe, 0x6, 0xfb, 0x6c, 0x40, 0x2, 0x53, 0xcb, + 0xb6, 0x6f, 0x7f, 0xdd, 0xb9, 0x75, 0xcc, 0x1, + 0xff, 0xc2, 0x30, 0xf, 0xfe, 0x39, 0x80, 0x7f, + 0xf2, 0x45, 0x27, 0x72, 0xc, 0x3, 0x89, 0x19, + 0x8a, 0x86, 0x42, 0x2, 0x46, 0x8a, 0xd1, 0xca, + 0x1, 0xff, 0xc1, 0x49, 0xff, 0xff, 0xe0, 0x6c, + 0x10, 0x6, 0x5b, 0xff, 0xff, 0xb1, 0xc8, 0x3, + 0xc2, 0xc2, 0x1, 0xc2, 0x46, 0x8c, 0xf1, 0x35, + 0x7b, 0xdf, 0xee, 0xdc, 0xba, 0x97, 0x41, 0x0, + 0xff, 0xf6, 0x95, 0x75, 0xe7, 0x7f, 0x6e, 0x5c, + 0xc3, 0xb2, 0xa1, 0x8, 0x7, 0xff, 0x31, 0x2b, + 0xff, 0xff, 0x81, 0xb0, 0x40, 0x19, 0xaf, 0xff, + 0xfe, 0xc7, 0x20, 0xf, 0xc4, 0x68, 0x62, 0x1, + 0xff, 0xff, 0x0, 0xff, 0xe6, 0x89, 0xa2, 0xb3, + 0xcd, 0x5e, 0x62, 0xc, 0x3, 0xff, 0xe0, 0x24, + 0x68, 0xaf, 0x13, 0x57, 0xbd, 0xfe, 0xec, 0xba, + 0x98, 0x65, 0x43, 0x31, 0x30, 0x7, 0xff, 0xa8, + 0x5a, 0xb7, 0xbf, 0xb7, 0x2e, 0xa1, 0xd9, 0x50, + 0x84, 0x0, 0x26, 0x8a, 0xf1, 0x57, 0x9d, 0xf4, + 0xa0, 0x1f, 0xf2, 0x57, 0xff, 0xff, 0x3, 0x60, + 0x80, 0x33, 0x5f, 0xff, 0xff, 0xb, 0xa5, 0x0, + 0x21, 0x30, 0x21, 0x0, 0x84, 0x91, 0x5a, 0x26, + 0xb3, 0x7b, 0xfb, 0x2e, 0xa1, 0xd5, 0xc, 0x40, + 0x3f, 0xfd, 0xc9, 0x17, 0x6d, 0xef, 0xed, 0xba, + 0x97, 0x65, 0x32, 0x10, 0xf, 0xfe, 0x69, 0xc6, + 0xf7, 0x7f, 0xf5, 0xbe, 0x10, 0x3, 0x9, 0x22, + 0x8, 0x40, 0x3f, 0xfb, 0x2e, 0x44, 0x11, 0xff, + 0xec, 0x0, + + /* U+7F6E "置" */ + 0x0, 0xf1, 0xc6, 0xff, 0xff, 0xfd, 0xb6, 0xc, + 0x3, 0xff, 0x8e, 0x48, 0xab, 0xff, 0xc0, 0x31, + 0x0, 0xc2, 0x6a, 0xbf, 0xfc, 0x13, 0x10, 0xc, + 0x26, 0xab, 0xff, 0xc1, 0x32, 0x0, 0xc6, 0x1, + 0xff, 0xc8, 0x15, 0x8a, 0xaf, 0xfe, 0x4, 0xa8, + 0x6, 0x59, 0xaa, 0xff, 0xe1, 0x28, 0x6, 0x49, + 0xaa, 0xff, 0xe0, 0xc2, 0x0, 0x7f, 0xff, 0xc0, + 0x3f, 0xfa, 0xc2, 0xb1, 0x33, 0xff, 0xc0, 0xe5, + 0x0, 0xcb, 0xd3, 0x3f, 0xfc, 0x1a, 0x50, 0xc, + 0xfd, 0x33, 0xff, 0xc1, 0xf4, 0x0, 0xff, 0xe7, + 0x12, 0x33, 0x7f, 0xf0, 0x10, 0x40, 0x30, 0xa3, + 0x37, 0xff, 0x4, 0xc4, 0x3, 0x12, 0x33, 0x7f, + 0xf0, 0x50, 0x80, 0x3f, 0xf8, 0xe7, 0x1b, 0xff, + 0xff, 0xd1, 0xb6, 0x10, 0xc, 0xb5, 0xdf, 0xff, + 0xfc, 0xfe, 0x83, 0x0, 0xff, 0xf0, 0x9, 0x88, + 0x4, 0x26, 0x22, 0x0, 0xff, 0xed, 0x1c, 0xf7, + 0xff, 0xff, 0x56, 0x94, 0x3, 0xb, 0x5f, 0xff, + 0xff, 0x53, 0x18, 0x40, 0x30, 0xfa, 0x27, 0xff, + 0x54, 0xc4, 0x3, 0x88, 0xd1, 0x3f, 0xfa, 0xc4, + 0x1, 0xc4, 0xd5, 0x77, 0xff, 0xd3, 0x94, 0x30, + 0xc, 0x91, 0x97, 0x7f, 0xfd, 0x58, 0x41, 0x0, + 0xfe, 0x26, 0xab, 0xba, 0x9c, 0xc0, 0x3e, 0x5a, + 0xff, 0xff, 0xb5, 0xc8, 0x3, 0x25, 0x7f, 0xff, + 0xf3, 0xba, 0x50, 0x3, 0xff, 0x8a, 0xde, 0x89, + 0x97, 0x9c, 0x3, 0xf0, 0x80, 0x62, 0x58, 0x99, + 0xff, 0xea, 0xb1, 0x80, 0x61, 0x0, 0xff, 0xee, + 0xb7, 0xbb, 0x37, 0xff, 0x56, 0x94, 0x40, 0x3f, + 0xfc, 0x29, 0x5f, 0xff, 0xfd, 0x6c, 0x61, 0x0, + 0xff, 0xf0, 0x93, 0x4c, 0xff, 0xf5, 0x9c, 0xc0, + 0x3f, 0xfc, 0x4d, 0x8c, 0xdf, 0xfd, 0x6b, 0x51, + 0x0, 0xff, 0xf0, 0xa5, 0x7f, 0xff, 0xf5, 0xb1, + 0x84, 0x3, 0xff, 0xc2, 0x4d, 0x33, 0xff, 0xd6, + 0x73, 0x0, 0xff, 0xf1, 0x36, 0x33, 0x7f, 0xf5, + 0xad, 0x44, 0x3, 0xff, 0xc2, 0x95, 0xff, 0xff, + 0xd6, 0xc6, 0x10, 0xf, 0xfe, 0xdb, 0xfc, 0xcf, + 0xff, 0x8a, 0xa8, 0xa0, 0x1f, 0xfd, 0x52, 0x46, + 0x6f, 0xff, 0x12, 0x98, 0x80, 0x7f, 0xf3, 0x1e, + 0x73, 0x3f, 0xfe, 0xb4, 0xc4, 0x1, 0xff, 0xc2, + 0x12, 0x33, 0xff, 0xfa, 0xa7, 0x8, 0x7, 0xff, + 0x9, 0x6f, 0xff, 0xff, 0xeb, 0xd0, 0x60, + + /* U+8054 "联" */ + 0x0, 0xff, 0xef, 0x9, 0xb4, 0x3a, 0x8, 0x7, + 0xff, 0x1c, 0x9a, 0x20, 0xea, 0x84, 0x20, 0x1f, + 0xf2, 0x4f, 0x7f, 0xff, 0xf4, 0xba, 0x4c, 0x2, + 0x15, 0xbd, 0x97, 0x8a, 0xa3, 0x10, 0x7, 0xff, + 0xc, 0x56, 0x25, 0xdd, 0x15, 0xa, 0x60, 0x1f, + 0xfc, 0x11, 0x0, 0xff, 0xec, 0xa, 0xdd, 0x28, + 0x80, 0xa4, 0xf3, 0x90, 0x7, 0xff, 0x0, 0xe6, + 0x14, 0x2, 0x27, 0xf7, 0x20, 0xf, 0xf9, 0x27, + 0xba, 0xa5, 0x0, 0xcb, 0x3d, 0xdf, 0xf4, 0xa0, + 0x6, 0x5a, 0xef, 0x93, 0x0, 0xe1, 0x4a, 0xa3, + 0x8, 0x0, 0xe2, 0x58, 0x40, 0x3f, 0x13, 0x7b, + 0x90, 0x0, 0x56, 0x60, 0xc0, 0x3f, 0xf8, 0x62, + 0x38, 0x3, 0xc6, 0x23, 0xff, 0x18, 0x80, 0x42, + 0x62, 0x30, 0x7, 0xf9, 0x22, 0x6, 0x1, 0x24, + 0x49, 0x80, 0x70, 0xb4, 0xc8, 0xc0, 0x2, 0xb7, + 0x64, 0x0, 0xff, 0xf4, 0x88, 0xfc, 0xf, 0xe, + 0xaf, 0x5b, 0x24, 0x23, 0x13, 0x54, 0x20, 0x4, + 0x91, 0x4, 0x1, 0x1f, 0x80, 0x3f, 0xfc, 0x27, + 0x1f, 0xdd, 0xfa, 0xdd, 0x5e, 0xb3, 0xbb, 0xb6, + 0x50, 0x40, 0x32, 0x4e, 0xf7, 0x7e, 0xd7, 0x10, + 0xf, 0xfe, 0x32, 0x46, 0x67, 0xfd, 0x8, 0x1, + 0xff, 0xc0, 0x30, 0xf, 0xfe, 0xd3, 0x88, 0x7, + 0xff, 0x1c, 0x48, 0xcf, 0xfe, 0x21, 0x0, 0xff, + 0x1c, 0x6f, 0xff, 0xff, 0x7, 0x18, 0x40, 0x33, + 0x5f, 0xff, 0xff, 0x12, 0xd8, 0x40, 0x3f, 0xf8, + 0xc9, 0x3d, 0xdf, 0xf4, 0xa0, 0x7, 0xff, 0xf0, + 0x4c, 0x47, 0xfe, 0x31, 0x0, 0xff, 0xff, 0x80, + 0x7f, 0xf6, 0x9c, 0x3, 0xff, 0xfe, 0x1, 0xff, + 0xc1, 0x10, 0xf, 0xfe, 0xf8, 0x91, 0x7f, 0xc6, + 0x42, 0x1, 0xfc, 0x24, 0x5f, 0xfc, 0x60, 0xc, + 0x26, 0x45, 0xff, 0xc9, 0x10, 0xf, 0xfe, 0x22, + 0x46, 0xef, 0xfb, 0x21, 0x0, 0x3f, 0x25, 0xee, + 0xff, 0xf1, 0x25, 0x0, 0x30, 0xac, 0xee, 0xff, + 0xf1, 0xf2, 0x4c, 0x3, 0xff, 0x86, 0x26, 0x89, + 0xff, 0x18, 0x80, 0x7f, 0x11, 0x7f, 0xf1, 0x4, + 0x40, 0x1e, 0x11, 0x11, 0x7f, 0xf2, 0x3c, 0x3, + 0xff, 0x88, 0x93, 0x77, 0xff, 0x4a, 0x0, 0x7e, + 0x48, 0xdd, 0xff, 0xe1, 0xda, 0x0, 0x79, 0x63, + 0x37, 0x7f, 0xf8, 0xd8, 0xe6, 0x1, 0xff, 0xea, + 0x4c, 0x40, 0xf, 0x25, 0x31, 0x0, 0x7f, 0xff, + 0x4f, 0x10, 0x40, 0x3e, 0x3a, 0xa1, 0x80, 0x7f, + 0xf8, 0x4, 0x8c, 0x98, 0x2, 0x14, 0xfa, 0xbc, + 0xdd, 0x42, 0x0, 0x7e, 0x15, 0x97, 0x20, 0x8, + 0xdd, 0x8c, 0x0, 0x4f, 0xee, 0x40, 0x1f, 0xfc, + 0x91, 0x23, 0x32, 0x63, 0x0, 0x64, 0x9b, 0xcc, + 0x6f, 0x7f, 0xdd, 0xb9, 0x6, 0x1, 0x89, 0x15, + 0xc, 0x8a, 0x10, 0xf, 0x89, 0xa1, 0x40, 0x21, + 0x58, 0x84, 0xc3, 0x8, 0x0, 0xe2, 0x58, 0x80, + 0x3f, 0xf8, 0xc2, 0xf3, 0x98, 0xb7, 0x30, 0xc, + 0x26, 0x86, 0x62, 0x10, 0x0, 0x91, 0xa1, 0x88, + 0x6, 0x48, 0xcd, 0xef, 0xf5, 0x28, 0x7, 0x1b, + 0xf4, 0x10, 0x4, 0x73, 0x8, 0x0, 0x48, 0x82, + 0x0, 0x49, 0x3c, 0xe4, 0x1, 0xff, 0xc4, 0x14, + 0xc4, 0x33, 0x22, 0xb3, 0xc4, 0xd5, 0x2f, 0x37, + 0xbf, 0xee, 0xdc, 0xb9, 0x40, 0x8, 0x48, 0xcc, + 0x42, 0x1, 0xe1, 0x49, 0xd8, 0x30, 0x8, 0xe3, + 0x9c, 0x80, 0x30, 0xb5, 0x51, 0x4, 0x0, 0x71, + 0x96, 0xc4, 0x1, 0xff, 0xc2, 0x27, 0xbc, 0xc5, + 0xd4, 0xc3, 0xb2, 0xa9, 0xc, 0x84, 0x3, 0xff, + 0x94, 0x6f, 0xb6, 0xc2, 0x0, 0x14, 0x9e, 0x72, + 0x0, 0xfc, 0x2b, 0x54, 0x62, 0x0, 0xa, 0x4e, + 0x5b, 0x98, 0x80, 0x7f, 0xf8, 0x49, 0x67, 0x72, + 0xc, 0x2, 0x37, 0xdb, 0x62, 0x0, 0xff, 0xe0, + 0xa, 0x4e, 0x52, 0x90, 0x0, 0x52, 0x33, 0xf2, + 0x58, 0xc4, 0x3, 0xff, 0xb0, 0x29, 0x3b, 0xaa, + 0x62, 0x0, 0x9, 0xbd, 0xec, 0x18, 0x7, 0xff, + 0x18, 0x56, 0xb2, 0xdc, 0xc4, 0x0, 0x26, 0xd3, + 0xd0, 0x80, 0x1f, 0xfd, 0x71, 0x4b, 0xb2, 0x8, + 0x1b, 0x57, 0xe4, 0x20, 0x80, 0x7f, 0xf2, 0xc5, + 0x23, 0x3f, 0x25, 0x8d, 0x23, 0xe5, 0x0, 0x3f, + 0xfa, 0xb, 0x5f, 0xf7, 0x4a, 0x1, 0x35, 0xff, + 0x64, 0xa8, 0x80, 0x7f, 0xf4, 0xc4, 0xda, 0x72, + 0xdc, 0x80, 0x38, + + /* U+81EA "自" */ + 0x0, 0xff, 0xe8, 0x88, 0x80, 0x3f, 0xfe, 0x47, + 0x19, 0xdf, 0xf6, 0xca, 0x0, 0x7f, 0xfa, 0xc5, + 0x10, 0x40, 0x19, 0xf1, 0x0, 0x3f, 0xfd, 0x42, + 0xf8, 0x60, 0x10, 0xb7, 0x28, 0x7, 0xff, 0xa8, + 0x5f, 0x50, 0x2, 0x26, 0xa4, 0x0, 0xff, 0xea, + 0xad, 0x7f, 0xff, 0xf2, 0x3a, 0x50, 0x3, 0x13, + 0xe7, 0xff, 0xff, 0x46, 0xd8, 0x3, 0xff, 0xfe, + 0x2d, 0x7d, 0xdf, 0xfe, 0x1a, 0x51, 0x0, 0xff, + 0xe1, 0x98, 0xb8, 0x8f, 0xff, 0x85, 0x8c, 0x3, + 0xff, 0xfe, 0x1, 0xff, 0xfd, 0x32, 0x53, 0x3f, + 0xff, 0xa, 0x98, 0x80, 0x7f, 0xf0, 0xc5, 0x67, + 0x33, 0xff, 0xc3, 0x2a, 0x1, 0xff, 0xc6, 0x11, + 0xff, 0xf1, 0x80, 0x7f, 0xf1, 0x49, 0xf7, 0xbb, + 0xff, 0xc3, 0xac, 0x20, 0x1f, 0xff, 0xf0, 0xf, + 0xff, 0xf8, 0x7, 0xff, 0xcc, 0x9f, 0x3f, 0xff, + 0xfc, 0x38, 0xc2, 0x1, 0xff, 0xff, 0x0, 0xf0, + 0xb5, 0xf7, 0x7f, 0xf8, 0x69, 0x44, 0x3, 0xff, + 0x86, 0x62, 0xe2, 0x3f, 0xfe, 0x16, 0x30, 0xf, + 0xff, 0xf8, 0x7, 0xff, 0xf4, 0xc9, 0x4c, 0xff, + 0xfc, 0x2a, 0x62, 0x1, 0xff, 0xc3, 0x15, 0x9c, + 0xcf, 0xff, 0xc, 0xa8, 0x7, 0xff, 0x18, 0x48, + 0xbf, 0xfc, 0x22, 0x1, 0xff, 0xc5, 0x27, 0xdd, + 0xff, 0xf1, 0xb9, 0x91, 0x71, 0x80, + + /* U+8303 "范" */ + 0x0, 0xff, 0xe4, 0x8b, 0x56, 0xee, 0xa6, 0x10, + 0xf, 0xfe, 0x51, 0xbe, 0x6e, 0xe9, 0x40, 0xf, + 0xff, 0x18, 0xb1, 0x16, 0x61, 0x0, 0xff, 0xe6, + 0x79, 0x17, 0x18, 0x80, 0x7f, 0xf3, 0xc8, 0xd1, + 0x3f, 0xf8, 0xdc, 0x20, 0x18, 0x79, 0x13, 0xff, + 0x98, 0x40, 0x1c, 0xda, 0x89, 0xff, 0xc7, 0x21, + 0x0, 0xe2, 0x5f, 0xbb, 0xff, 0xe2, 0xd3, 0x10, + 0x6, 0x26, 0xab, 0xbf, 0xfe, 0x54, 0x28, 0x80, + 0x63, 0x7b, 0xbf, 0xfe, 0x35, 0x50, 0x80, 0x38, + 0xc9, 0x8c, 0xff, 0xf8, 0xc2, 0x1, 0xe1, 0x33, + 0xff, 0xe5, 0x90, 0x80, 0x70, 0x91, 0x9f, 0xff, + 0x19, 0x7c, 0x40, 0x38, 0x56, 0xb3, 0x3f, 0xf8, + 0xbb, 0x26, 0x1, 0x8e, 0x77, 0x33, 0xff, 0x95, + 0xcc, 0x20, 0x19, 0x23, 0x33, 0xff, 0x8d, 0x6e, + 0x40, 0x1f, 0xff, 0xf0, 0xf, 0xfe, 0xd1, 0xa2, + 0xae, 0x42, 0x0, 0xff, 0xe5, 0x8f, 0x3a, 0xae, + 0xd6, 0x0, 0xff, 0xea, 0x93, 0x5e, 0xf5, 0xc3, + 0x18, 0x80, 0x42, 0x91, 0x55, 0xa1, 0x44, 0x0, + 0x24, 0x5f, 0xfc, 0x70, 0x4b, 0x88, 0xca, 0x24, + 0x5f, 0xfc, 0x11, 0x0, 0xff, 0xe3, 0xb, 0x73, + 0x98, 0xa3, 0xce, 0x76, 0xd3, 0xa1, 0x0, 0x7f, + 0x92, 0x37, 0x7f, 0xfb, 0x70, 0x80, 0x1f, 0xfc, + 0x61, 0x48, 0xce, 0xda, 0x74, 0x10, 0x25, 0x8b, + 0xde, 0xb8, 0x52, 0x0, 0xff, 0xfd, 0x92, 0xc5, + 0xf6, 0xd3, 0x98, 0x80, 0xa2, 0xe8, 0x80, 0x7f, + 0xc2, 0xd7, 0xff, 0xff, 0xcd, 0xd8, 0x20, 0xf, + 0xfe, 0xb1, 0x2c, 0x67, 0xe5, 0x5f, 0xc1, 0x80, + 0x7f, 0xfc, 0xc9, 0x5d, 0x90, 0x40, 0x3f, 0xe1, + 0x35, 0x42, 0x0, 0xff, 0xf9, 0x9c, 0x7d, 0x44, + 0xdf, 0x73, 0x29, 0xd4, 0x84, 0x3, 0xff, 0xf8, + 0x73, 0xd4, 0xe8, 0x40, 0x26, 0xb1, 0x5b, 0xdb, + 0x50, 0xa4, 0x1, 0xff, 0xf8, 0x13, 0x58, 0xbd, + 0xec, 0xa7, 0x42, 0x0, 0x12, 0xbd, 0xc2, 0x88, + 0x7, 0xff, 0x44, 0x47, 0xff, 0x84, 0xfc, 0x60, + 0x1c, 0x20, 0x1f, 0xfc, 0x81, 0x35, 0x8b, 0xde, + 0xb8, 0x67, 0xab, 0x51, 0x0, 0xff, 0xe8, 0xb, + 0xef, 0x77, 0xff, 0x2, 0x98, 0x40, 0x23, 0xd6, + 0x0, 0xff, 0xe7, 0xa, 0x3c, 0xc2, 0x8, 0x96, + 0xb2, 0x90, 0x40, 0x3f, 0xf9, 0x62, 0xd2, 0xa0, + 0x1f, 0xc2, 0x22, 0x34, 0x58, 0xbd, 0x72, 0x0, + 0xff, 0xe9, 0x9c, 0x65, 0x29, 0xad, 0x41, 0x80, + 0x7f, 0xf3, 0x16, 0xbf, 0xff, 0xbb, 0x9b, 0x97, + 0x4e, 0x82, 0x1, 0xff, 0xd2, 0x26, 0xbd, 0x72, + 0x0, 0xa, 0xdc, 0x18, 0x7, 0xff, 0x88, 0x44, + 0x1, 0xff, 0xcb, 0x15, 0xaf, 0x94, 0x10, 0x1, + 0xc6, 0xd2, 0x88, 0x7, 0xff, 0x89, 0x23, 0xfb, + 0x2a, 0x14, 0x80, 0x3f, 0xf8, 0x42, 0x91, 0xb4, + 0xa4, 0x0, 0x15, 0xad, 0x73, 0x0, 0xff, 0xf3, + 0x18, 0x88, 0xd5, 0xb1, 0x80, 0x3f, 0xf8, 0x7, + 0x1b, 0x6e, 0x60, 0x11, 0xbe, 0xd2, 0x88, 0x7, + 0xf0, 0x80, 0x70, 0x98, 0x80, 0x7f, 0xf5, 0x4, + 0xd8, 0x3, 0x17, 0x28, 0x7, 0xf1, 0xbe, 0x61, + 0xcc, 0x2, 0x26, 0xbd, 0x83, 0x0, 0xff, 0xe0, + 0x39, 0x10, 0x3, 0x27, 0x3a, 0x19, 0x8, 0xff, + 0xf3, 0x48, 0xda, 0xe4, 0xc0, 0x22, 0x44, 0x8, + 0x7, 0x85, 0xaf, 0x20, 0xc0, 0x21, 0x5a, 0xc9, + 0x41, 0x0, 0xff, 0xe1, 0x1d, 0x50, 0x80, 0x21, + 0x48, 0xbc, 0xde, 0xef, 0xfe, 0x6e, 0xe4, 0xa8, + 0x80, 0x47, 0x72, 0x60, 0x1f, 0xb, 0xfb, 0x10, + 0xa, 0x46, 0x52, 0x88, 0x7, 0xff, 0x18, 0x9f, + 0xee, 0x19, 0x8, 0x82, 0x20, 0xf, 0xfe, 0x78, + 0x91, 0x11, 0xa7, 0x35, 0x84, 0x3, 0xf8, 0x52, + 0x7f, 0x72, 0xdc, 0x80, 0x3f, 0xf9, 0x64, 0x8f, + 0x37, 0xba, 0xee, 0x7f, 0xff, 0xf3, 0xfb, 0x75, + 0x72, 0xc6, 0x20, 0x1f, 0x0, + + /* U+884C "行" */ + 0x0, 0xff, 0xe4, 0x8a, 0x4e, 0x62, 0xe1, 0x90, + 0x80, 0x3f, 0xff, 0xe4, 0xd5, 0x46, 0x33, 0x23, + 0x69, 0x0, 0x7f, 0x8, 0x88, 0xbf, 0xfb, 0xc2, + 0x1, 0xff, 0xc7, 0x25, 0xac, 0x94, 0x10, 0x1, + 0x35, 0x51, 0x88, 0x3, 0xe1, 0x6d, 0xdf, 0xfe, + 0xf6, 0x41, 0x80, 0x7f, 0xf0, 0xc9, 0xab, 0x29, + 0x44, 0x0, 0x4b, 0x59, 0x28, 0x20, 0x1f, 0xe1, + 0x70, 0xf, 0xfe, 0xe9, 0x88, 0x7, 0xff, 0x0, + 0x52, 0x33, 0x65, 0x44, 0x0, 0x2b, 0x59, 0x4a, + 0x20, 0x1f, 0xfc, 0x1, 0x6b, 0xff, 0xff, 0xee, + 0xec, 0x18, 0x7, 0xc2, 0x8f, 0x7f, 0x6e, 0x60, + 0x11, 0xb5, 0xfd, 0x28, 0x80, 0x7f, 0xfd, 0x85, + 0x6b, 0xee, 0x10, 0x40, 0x2, 0x91, 0x98, 0x94, + 0x10, 0xf, 0x12, 0xbb, 0x94, 0xc4, 0x3, 0xff, + 0xd8, 0x2b, 0x12, 0x60, 0x29, 0x19, 0xf6, 0xe6, + 0x1, 0xf8, 0x9f, 0xaa, 0x21, 0x59, 0x87, 0x30, + 0xf, 0xff, 0x61, 0x3e, 0xf7, 0xdb, 0x98, 0x80, + 0x7f, 0x1c, 0x7c, 0x18, 0x4, 0x93, 0xee, 0x60, + 0x1f, 0xfe, 0xe1, 0x18, 0x3, 0xfc, 0x2b, 0x5a, + 0xe4, 0x0, 0x15, 0xaa, 0x31, 0x0, 0x42, 0x3f, + 0xfe, 0x50, 0xf, 0xfe, 0x39, 0xc6, 0xd2, 0x88, + 0x0, 0x9f, 0x69, 0x44, 0x2, 0x16, 0xae, 0xef, + 0xff, 0x24, 0xa0, 0x7, 0xff, 0x8, 0x9e, 0xf5, + 0xcc, 0x2, 0x27, 0xf8, 0x30, 0xf, 0xff, 0xd1, + 0xbe, 0x62, 0x10, 0x40, 0x39, 0xb8, 0x80, 0x3f, + 0xb, 0x5f, 0xff, 0xff, 0x3f, 0x60, 0xc0, 0x31, + 0x3e, 0x7f, 0xff, 0xd2, 0x80, 0x1f, 0xa, 0x46, + 0x62, 0xc, 0x40, 0x3f, 0xfc, 0xa6, 0x20, 0x1f, + 0x8, 0x7, 0xff, 0x10, 0x4d, 0xef, 0xed, 0xcc, + 0x2, 0x25, 0x75, 0x10, 0xf, 0xff, 0xd2, 0x46, + 0xc2, 0x8, 0x4, 0x6f, 0x79, 0x54, 0x23, 0x0, + 0xff, 0xfd, 0x24, 0xe4, 0x19, 0x24, 0x66, 0x21, + 0x4, 0x3, 0xff, 0xfe, 0x4, 0xf9, 0xb6, 0xe6, + 0x1, 0xff, 0xff, 0x0, 0xff, 0xff, 0x80, 0x7f, + 0xff, 0xc0, 0x3f, 0xff, 0xe0, 0x1f, 0xff, 0xf0, + 0xf, 0xff, 0xf8, 0x7, 0xff, 0xfc, 0x3, 0xff, + 0xfe, 0x1, 0xff, 0xf2, 0x2e, 0x10, 0xe, 0xf0, + 0xf, 0xff, 0x9a, 0x4f, 0x7f, 0xff, 0xf0, 0x31, + 0xc8, 0x3, 0x39, 0x10, 0x3, 0xff, 0xe4, 0x94, + 0xc4, 0x1, 0xfe, 0x11, 0x11, 0xa3, 0x4e, 0x52, + 0x80, 0x7f, 0xf0, 0x80, + + /* U+8865 "补" */ + 0x0, 0xff, 0xf4, 0x9, 0x22, 0xae, 0x42, 0x0, + 0xff, 0xf0, 0xa, 0x46, 0x76, 0xca, 0x8, 0x7, + 0xff, 0x40, 0xaa, 0xbd, 0x8, 0x20, 0x1f, 0xfd, + 0xf2, 0xc4, 0x31, 0x26, 0xbd, 0x83, 0x0, 0xff, + 0xff, 0x80, 0x63, 0x8d, 0xa5, 0x10, 0x1, 0xbe, + 0xd2, 0x8, 0x7, 0xff, 0xfc, 0x2, 0x15, 0xad, + 0x72, 0x0, 0xa, 0xcc, 0x8c, 0x3, 0xff, 0xfe, + 0x1, 0xc7, 0x1d, 0xa, 0xd5, 0xf0, 0x60, 0x1f, + 0xff, 0x44, 0x9e, 0xff, 0xff, 0xe1, 0xe4, 0x2b, + 0x56, 0xff, 0xfe, 0xed, 0x95, 0x20, 0xf, 0xff, + 0xf8, 0x7, 0xf8, 0x49, 0x8, 0x3, 0xff, 0xd4, + 0x93, 0xfd, 0xdf, 0xfc, 0xad, 0x94, 0x10, 0x8, + 0x56, 0x1c, 0x80, 0x3f, 0xfd, 0x62, 0x3f, 0xfc, + 0xa5, 0xb8, 0x41, 0x0, 0x1c, 0xc2, 0x80, 0x7f, + 0xf2, 0x8c, 0x44, 0x1, 0xff, 0xe8, 0x49, 0xa6, + 0x10, 0x1, 0x3f, 0xb9, 0x0, 0x7f, 0xf2, 0x4a, + 0x33, 0xb9, 0xb2, 0xa4, 0x1, 0xff, 0xe1, 0x15, + 0xaa, 0x30, 0x80, 0x9, 0xfa, 0xc, 0x3, 0x8, + 0xc0, 0x1f, 0xfc, 0x41, 0x18, 0x0, 0x4d, 0x5b, + 0xa9, 0x62, 0x0, 0xff, 0xed, 0x93, 0xed, 0x28, + 0x80, 0xa, 0x3a, 0xc, 0x3, 0x13, 0xef, 0x73, + 0x25, 0x4, 0x3, 0xff, 0x80, 0x71, 0x96, 0xc6, + 0x1, 0x13, 0x4e, 0xea, 0x98, 0xc0, 0x3f, 0xfa, + 0x82, 0x93, 0x90, 0x60, 0x10, 0xac, 0xb9, 0x80, + 0x42, 0x93, 0xf0, 0x60, 0x2, 0x28, 0xc0, 0x3f, + 0xf8, 0x22, 0x49, 0x39, 0xb4, 0xc4, 0x1, 0x12, + 0xce, 0x6d, 0x29, 0x0, 0x7f, 0xf3, 0x45, 0x23, + 0x2d, 0x84, 0x3, 0x85, 0x6a, 0xd8, 0xcc, 0xfb, + 0x6c, 0x40, 0x29, 0x39, 0x6c, 0x40, 0x1f, 0xfc, + 0x62, 0x59, 0xdd, 0x4a, 0x90, 0x4, 0x4b, 0x59, + 0x88, 0x41, 0x0, 0xff, 0xe3, 0xa, 0x4e, 0x5b, + 0x90, 0x7, 0xf8, 0x52, 0x73, 0x10, 0x60, 0x2b, + 0x59, 0x6c, 0x40, 0x1f, 0xfc, 0xd2, 0x6a, 0xcc, + 0x39, 0x88, 0x0, 0x4d, 0xef, 0x25, 0x44, 0x3, + 0xff, 0x80, 0x4b, 0x59, 0x6c, 0x40, 0x11, 0x98, + 0x80, 0x31, 0x3d, 0x41, 0x80, 0x71, 0xcc, 0x29, + 0x0, 0x7f, 0xf4, 0xc4, 0xe3, 0x31, 0x28, 0x20, + 0x11, 0x91, 0x98, 0x3, 0xf1, 0x2c, 0xee, 0xa9, + 0x48, 0x0, 0x27, 0x19, 0xb2, 0xe0, 0x1e, 0x77, + 0x6d, 0xb9, 0x0, 0xe, 0x32, 0x94, 0x40, 0x3f, + 0xfa, 0xc4, 0xd7, 0x95, 0x15, 0x96, 0xc4, 0x1, + 0xc4, 0xd9, 0xb4, 0xc4, 0x1, 0xa, 0x46, 0x61, + 0xcc, 0x40, 0x3f, 0xc2, 0x91, 0x94, 0xa2, 0x2, + 0xb5, 0x92, 0xa2, 0x1, 0xff, 0xd6, 0x25, 0x75, + 0x20, 0xf, 0xc4, 0xf2, 0x80, 0x1, 0x37, 0xbf, + 0xb7, 0x20, 0xf, 0xfe, 0x28, 0xad, 0x6c, 0x18, + 0x0, 0x9b, 0x9c, 0x40, 0x3f, 0xfc, 0x62, 0xb3, + 0x97, 0x98, 0x84, 0x10, 0xf, 0xfe, 0x59, 0xbe, + 0xd3, 0x32, 0xa8, 0xc2, 0x1, 0xff, 0xe5, 0x23, + 0x42, 0x0, 0xff, 0xe8, 0x8a, 0xcc, 0x94, 0x40, + 0x3f, 0xff, 0xe0, 0x1f, 0xff, 0xf0, 0xf, 0xff, + 0xf8, 0x7, 0xff, 0xfc, 0x3, 0xff, 0xfe, 0x1, + 0xff, 0xff, 0x0, 0xff, 0xff, 0x80, 0x7f, 0xf3, + 0x4c, 0x47, 0x38, 0x7, 0xff, 0x48, + + /* U+88AB "被" */ + 0x0, 0xff, 0xe2, 0x89, 0x19, 0xc4, 0x20, 0x1f, + 0xfd, 0x71, 0x34, 0x4c, 0x42, 0x1, 0xff, 0xdb, + 0x39, 0xfc, 0xcd, 0x6, 0x1, 0xff, 0xd5, 0x16, + 0xfb, 0xbd, 0x28, 0x1, 0xff, 0xff, 0x0, 0xff, + 0xff, 0x80, 0x7f, 0xff, 0xc0, 0x3f, 0xff, 0xe0, + 0x1f, 0xfd, 0x32, 0x6a, 0xaf, 0xfe, 0x41, 0x0, + 0x65, 0x9b, 0xaa, 0xff, 0xae, 0xf5, 0x43, 0x18, + 0x7, 0xc9, 0x19, 0x9f, 0xee, 0x62, 0x0, 0x85, + 0xfb, 0x33, 0xeb, 0x95, 0x20, 0x0, 0xfa, 0x2a, + 0xff, 0xf1, 0x50, 0x84, 0x3, 0x9, 0xa2, 0xaf, + 0xfc, 0x89, 0x95, 0xbd, 0xc0, 0x3e, 0x13, 0x3f, + 0xf8, 0x84, 0x3, 0x84, 0x8c, 0xfe, 0x47, 0xf6, + 0x0, 0xfe, 0x26, 0x9a, 0xaf, 0xf4, 0x29, 0x0, + 0x63, 0x69, 0xaa, 0xfe, 0x74, 0x0, 0xe4, 0xc4, + 0x0, 0xf9, 0x26, 0xef, 0xff, 0x91, 0x8, 0x20, + 0x10, 0xb4, 0xa0, 0x7, 0xf3, 0x7b, 0x2a, 0xff, + 0x9b, 0x44, 0x3, 0x3e, 0x32, 0xaf, 0xe7, 0xf7, + 0x0, 0xc9, 0x88, 0x1, 0xf8, 0x49, 0x13, 0xff, + 0x8c, 0xc5, 0x68, 0x20, 0x3, 0x9a, 0x30, 0xf, + 0xfe, 0xe0, 0xa6, 0x18, 0x4, 0x7a, 0xe2, 0x1, + 0xff, 0xce, 0x15, 0x88, 0x18, 0x4, 0xb2, 0xc4, + 0x1, 0xff, 0xdc, 0x17, 0xd4, 0x0, 0x8e, 0x9c, + 0x40, 0x3f, 0xf9, 0xa2, 0x91, 0x6a, 0x20, 0x3, + 0x88, 0x28, 0x80, 0x7f, 0xf7, 0x4c, 0x4, 0xc8, + 0x52, 0x5c, 0x40, 0x3f, 0xf9, 0x82, 0xb5, 0x46, + 0x10, 0x1, 0x3f, 0xb9, 0xb, 0x5e, 0x52, 0x93, + 0x80, 0x79, 0xc4, 0x84, 0x7f, 0xc5, 0xe2, 0x1, + 0xc4, 0x41, 0x1f, 0x1b, 0xc7, 0x7f, 0xad, 0x44, + 0x3, 0xff, 0x96, 0x4f, 0xb4, 0x82, 0x0, 0x16, + 0x98, 0x31, 0x5b, 0x84, 0x37, 0xc6, 0x10, 0xf, + 0x1c, 0x6f, 0x77, 0xfb, 0x1c, 0x80, 0x32, 0x46, + 0xf7, 0x7e, 0xdd, 0xbb, 0x96, 0xc4, 0x1, 0xff, + 0xc7, 0x15, 0xac, 0x83, 0x0, 0xe1, 0x53, 0x46, + 0xab, 0x51, 0x38, 0xf9, 0x41, 0x1, 0x0, 0xff, + 0xe0, 0x8, 0x88, 0xbf, 0xf8, 0xc2, 0x20, 0xe, + 0x11, 0x11, 0x0, 0x3f, 0xf8, 0x82, 0x93, 0x94, + 0xa2, 0x1, 0xf8, 0xe2, 0xe5, 0x1, 0x6b, 0x5c, + 0x80, 0x23, 0x0, 0xe5, 0x77, 0x10, 0x6, 0x4b, + 0xcd, 0xdf, 0xfe, 0x2d, 0x20, 0x80, 0x65, 0xf4, + 0x0, 0xff, 0xe1, 0x12, 0xce, 0x5b, 0x10, 0x7, + 0xe1, 0x57, 0x62, 0x0, 0x8c, 0xc2, 0x20, 0xc, + 0x22, 0x0, 0xf6, 0x4d, 0xa0, 0x4, 0xb2, 0xc4, + 0x1, 0xff, 0xc2, 0x16, 0xf5, 0x10, 0x9, 0x7d, + 0x40, 0x3f, 0xe1, 0x48, 0xcc, 0x53, 0x10, 0x0, + 0x52, 0x64, 0xc4, 0x1, 0x8e, 0xe7, 0x9c, 0xc0, + 0x9a, 0xad, 0x88, 0x4, 0x9c, 0x3, 0x9, 0xb8, + 0xb7, 0xb0, 0x80, 0xe, 0x6d, 0x0, 0x3f, 0xf8, + 0x4, 0xd6, 0x80, 0x10, 0xbc, 0xa8, 0x7, 0xfc, + 0x4d, 0xe, 0x62, 0x0, 0x25, 0xac, 0xb6, 0x51, + 0x0, 0xfc, 0x71, 0xd2, 0x80, 0x29, 0x10, 0x42, + 0xf2, 0x0, 0xc7, 0xc2, 0x0, 0x4b, 0x62, 0x0, + 0xb, 0x43, 0x90, 0x7, 0xe1, 0x58, 0x92, 0x0, + 0x8e, 0x68, 0xc0, 0x3f, 0xf8, 0x4, 0xfd, 0x2a, + 0xa9, 0xcd, 0xa5, 0x20, 0xf, 0xfe, 0x11, 0x35, + 0x51, 0xe3, 0x69, 0x1c, 0x84, 0x3, 0x39, 0x10, + 0x2, 0x29, 0x92, 0x88, 0x0, 0xe3, 0xe0, 0xc0, + 0x30, 0xad, 0xd9, 0x44, 0x0, 0x4f, 0xee, 0x40, + 0x1f, 0xfc, 0x32, 0x6a, 0xa3, 0x18, 0x7, 0xff, + 0x20, 0x56, 0x1c, 0xc0, 0xf1, 0xc0, 0x31, 0xeb, + 0x80, 0x70, 0xa5, 0xd3, 0x8, 0x0, 0x9f, 0x65, + 0x9, 0x6a, 0xd4, 0x40, 0x2, 0xd3, 0x6, 0x1, + 0xff, 0xe4, 0x14, 0x41, 0x0, 0x66, 0x32, 0x0, + 0xf8, 0x52, 0x69, 0x88, 0x0, 0x2d, 0x7b, 0x48, + 0x20, 0x2, 0x6d, 0x94, 0x0, 0xff, 0xf3, 0x26, + 0x18, 0x6, 0x5f, 0x40, 0xf, 0xf9, 0x26, 0x4a, + 0x20, 0x1f, 0x13, 0xf4, 0x98, 0x7, 0xff, 0x9d, + 0x3d, 0x40, 0x32, 0xf2, 0x80, 0x7f, 0x84, 0xde, + 0xe5, 0x44, 0x3, 0xe2, 0x7e, 0xa6, 0x31, 0x0, + 0xff, 0xf1, 0x8b, 0x7a, 0x88, 0x0, 0x57, 0x90, + 0x3, 0xe1, 0x47, 0xbf, 0xc8, 0x42, 0x0, 0xa, + 0x3c, 0x31, 0x0, 0x44, 0xb3, 0x9f, 0x6e, 0x82, + 0x1, 0xff, 0xde, 0x39, 0xb4, 0x0, 0x8a, 0x61, + 0x0, 0x4, 0x8f, 0x39, 0xdc, 0xb8, 0x41, 0x0, + 0x12, 0xc6, 0x7d, 0xc3, 0xce, 0xea, 0x98, 0x80, + 0x21, 0x48, 0xbe, 0xe6, 0x54, 0x29, 0x88, 0x7, + 0xff, 0x54, 0x9f, 0x9c, 0x80, 0x4, 0xfc, 0xe4, + 0x93, 0xdb, 0x70, 0xc6, 0x20, 0x1, 0x36, 0x9c, + 0xda, 0x73, 0x10, 0xe, 0x25, 0x9d, 0xd5, 0x32, + 0x8, 0x4, 0x26, 0xaf, 0x59, 0x89, 0x40, 0xf, + 0xfe, 0x99, 0x37, 0x4a, 0x9b, 0x4c, 0x18, 0x1, + 0x22, 0xd4, 0x49, 0x1e, 0x73, 0xb9, 0x92, 0xc6, + 0x1, 0xff, 0xc2, 0x25, 0x9b, 0xee, 0x64, 0xba, + 0x10, 0x93, 0xf4, 0xa0, 0x7, 0xff, 0x18, 0xe3, + 0x7f, 0xee, 0x93, 0x0, 0xe1, 0x36, 0xac, 0x94, + 0x0, 0xe1, 0x5a, 0xed, 0xb8, 0x63, 0x10, 0xf, + 0xfe, 0x60, 0x9b, 0x45, 0xef, 0x6c, 0x18, 0x6, + + /* U+8BAF "讯" */ + 0x0, 0xff, 0xff, 0x80, 0x7f, 0xf2, 0x9, 0x6b, + 0x7f, 0x69, 0x44, 0x3, 0xff, 0x80, 0x24, 0x67, + 0xff, 0xdd, 0x20, 0xf, 0xfe, 0x48, 0x8b, 0x58, + 0x80, 0x96, 0xbe, 0xd8, 0x80, 0x3f, 0x92, 0x73, + 0x3f, 0xfb, 0x9b, 0x68, 0x1, 0xff, 0xc8, 0x13, + 0x8d, 0xb7, 0x20, 0x0, 0xa4, 0xe5, 0xb1, 0x0, + 0x7c, 0x45, 0xff, 0xc0, 0x10, 0xf, 0x9, 0x17, + 0xff, 0xc, 0x40, 0x3f, 0xfa, 0x62, 0x91, 0x96, + 0xc4, 0x0, 0x14, 0x9f, 0x94, 0x10, 0x9, 0x67, + 0x77, 0xfe, 0xb5, 0x0, 0xc9, 0x19, 0xbb, 0xff, + 0xc3, 0x71, 0x0, 0xff, 0xea, 0xa, 0x4f, 0xd2, + 0x8, 0x0, 0x44, 0x1, 0xff, 0xff, 0x0, 0xc4, + 0xb7, 0xb7, 0x98, 0x84, 0x10, 0xf, 0xff, 0x8, + 0x80, 0x7f, 0xf5, 0x8d, 0xc, 0x3, 0xff, 0xfe, + 0x1, 0xff, 0xff, 0x0, 0xa, 0xcd, 0xdf, 0xff, + 0x15, 0xc8, 0x3, 0xff, 0xec, 0x6a, 0x89, 0xff, + 0xc4, 0x5e, 0x10, 0xf, 0xff, 0x9, 0x80, 0x7f, + 0xf1, 0xc5, 0x22, 0xab, 0xfd, 0x8, 0x20, 0x1f, + 0xfe, 0x51, 0x0, 0xf1, 0x80, 0x7f, 0xf0, 0xc9, + 0x15, 0x7f, 0xc8, 0x60, 0x1f, 0xfc, 0x25, 0xaf, + 0xff, 0xfa, 0x94, 0x3, 0x24, 0xf7, 0xff, 0xfd, + 0x4a, 0x1, 0xfc, 0x20, 0x1f, 0xfd, 0xf1, 0x0, + 0xff, 0xe9, 0x88, 0x5, 0xe0, 0x1f, 0xfe, 0x55, + 0xae, 0xef, 0xf6, 0xc2, 0x0, 0x63, 0x8c, 0xee, + 0xff, 0xa9, 0x40, 0xc0, 0x40, 0x30, 0x80, 0x7f, + 0xf8, 0x4, 0x7f, 0xe2, 0x20, 0x80, 0x67, 0x12, + 0x11, 0xff, 0xe0, 0x0, 0x42, 0x1, 0xe3, 0x10, + 0xf, 0xff, 0xf8, 0x0, 0x41, 0xc0, 0x33, 0x88, + 0x7, 0xff, 0xfc, 0x3, 0x18, 0x80, 0x61, 0x3, + 0x0, 0xff, 0xff, 0x80, 0x42, 0x62, 0x1, 0x1f, + 0x88, 0x7, 0xff, 0x68, 0xda, 0xb2, 0xc, 0x3, + 0xff, 0xac, 0xc2, 0x60, 0x10, 0x93, 0x80, 0x7f, + 0xf5, 0x5c, 0x9a, 0xb7, 0x25, 0x4d, 0xe5, 0x40, + 0x3f, 0xfa, 0xa7, 0xcc, 0x1, 0x84, 0x80, 0x31, + 0x19, 0x80, 0x3f, 0xf8, 0xe2, 0x1, 0x85, 0xeb, + 0x65, 0x48, 0x0, 0x4b, 0x50, 0xa0, 0x1f, 0xfd, + 0x51, 0x22, 0x8, 0x4, 0xdc, 0x60, 0x13, 0xcf, + 0x4a, 0x8, 0x7, 0xff, 0x8, 0x54, 0x84, 0x3, + 0x8, 0x80, 0x2, 0x91, 0x9b, 0x4a, 0x40, 0x1f, + 0xfd, 0x75, 0xe2, 0x0, 0x88, 0xd8, 0x0, 0x26, + 0x24, 0xfa, 0x40, 0x1f, 0xfc, 0x1, 0x48, 0xb4, + 0x0, 0xe1, 0x37, 0xbf, 0xb7, 0x30, 0xf, 0xfe, + 0xd8, 0xa2, 0x4, 0x2, 0x4c, 0x40, 0x31, 0x60, + 0x31, 0x0, 0xff, 0xe0, 0x13, 0x43, 0x10, 0x4, + 0x4d, 0x59, 0x88, 0x41, 0x0, 0xff, 0xef, 0x9e, + 0x38, 0x80, 0x4d, 0x10, 0xac, 0x20, 0x1f, 0x20, + 0xf, 0xf8, 0x9f, 0xdc, 0xcc, 0xf9, 0x89, 0x52, + 0x0, 0xff, 0xf2, 0x25, 0x31, 0x0, 0x46, 0xee, + 0x40, 0x15, 0x31, 0x0, 0xff, 0xe0, 0x9c, 0x66, + 0x20, 0xc4, 0x3, 0xff, 0xd0, 0x71, 0x2e, 0x62, + 0x1, 0x89, 0xa9, 0x0, 0x3f, 0xfc, 0x2b, 0x5f, + 0xfa, 0xd8, 0x40, 0x3f, 0xf9, 0x29, 0x19, 0xfb, + 0x98, 0xdc, 0x83, 0x0, 0xc0, + + /* U+8BBE "设" */ + 0x0, 0xff, 0x89, 0x10, 0x40, 0x1f, 0xff, 0xf0, + 0xe, 0x26, 0xbc, 0xbb, 0x66, 0x21, 0x4, 0x3, + 0xff, 0x92, 0x2d, 0x9f, 0xff, 0xfc, 0xdd, 0x72, + 0x0, 0xff, 0xe6, 0x12, 0x6a, 0x8, 0x9, 0xbd, + 0xe5, 0x29, 0x0, 0x7f, 0xff, 0x89, 0xab, 0xe9, + 0x88, 0x0, 0x4b, 0x59, 0x4c, 0x40, 0x1f, 0xfc, + 0xa5, 0xaf, 0xff, 0xfe, 0xd, 0xb0, 0x80, 0x7f, + 0xf5, 0x85, 0x67, 0x2d, 0x88, 0x0, 0x2b, 0x39, + 0x28, 0x20, 0x1f, 0xfc, 0x3, 0x11, 0x0, 0x70, + 0x80, 0x7f, 0xf0, 0x5c, 0x3, 0xff, 0xb6, 0x29, + 0x39, 0x4a, 0x20, 0x4f, 0xaa, 0x20, 0x1f, 0xfc, + 0x1, 0xe3, 0x0, 0x88, 0x8c, 0x1, 0xff, 0xec, + 0x15, 0xaf, 0xec, 0x94, 0x10, 0xf, 0xfe, 0x1, + 0xda, 0x8, 0x4, 0xdc, 0x60, 0x1f, 0xfe, 0xf1, + 0x18, 0x3, 0xff, 0x82, 0x29, 0x2c, 0x40, 0x12, + 0x73, 0x88, 0x7, 0xff, 0x23, 0xc0, 0x3f, 0xfd, + 0x4, 0xfb, 0x6a, 0x20, 0x1, 0x5f, 0x51, 0x0, + 0xff, 0xe1, 0x89, 0x80, 0x44, 0x68, 0x64, 0x5e, + 0x33, 0x88, 0x40, 0x30, 0xb5, 0xf7, 0x7f, 0xf1, + 0x36, 0xc, 0x3, 0xf8, 0x52, 0x2f, 0x20, 0xc0, + 0x22, 0x6a, 0xb4, 0x0, 0xff, 0xe2, 0x1e, 0xb8, + 0x6, 0x49, 0xcd, 0xdf, 0x66, 0x56, 0xa0, 0x1e, + 0x71, 0x1f, 0xfe, 0x21, 0x88, 0x7, 0x85, 0x6b, + 0x7a, 0xdd, 0x4, 0x0, 0x29, 0x3f, 0x28, 0x20, + 0x1f, 0xfc, 0x65, 0xbc, 0x86, 0x55, 0x22, 0x7f, + 0x2a, 0xbd, 0xc0, 0x30, 0xbf, 0x6e, 0xff, 0xa5, + 0x44, 0x3, 0xfe, 0x15, 0x95, 0x20, 0x0, 0xa3, + 0xdf, 0xdb, 0x10, 0x7, 0xff, 0x28, 0x4d, 0xe6, + 0xa9, 0x77, 0xfd, 0x54, 0x63, 0x0, 0xe1, 0x22, + 0xff, 0x94, 0x80, 0x3f, 0xf8, 0x47, 0x19, 0xbd, + 0xcb, 0x84, 0x10, 0xf, 0xff, 0xf8, 0x6, 0x5b, + 0xff, 0xff, 0xee, 0xf6, 0x42, 0x8, 0x7, 0xff, + 0x74, 0x40, 0x3f, 0xfb, 0x82, 0x20, 0x71, 0x0, + 0xff, 0xed, 0xa4, 0x6e, 0xa5, 0x0, 0x31, 0x35, + 0xee, 0xff, 0xf2, 0xed, 0x88, 0x3, 0x15, 0x50, + 0xc0, 0x3f, 0xfb, 0xa2, 0x44, 0x69, 0x72, 0x0, + 0x13, 0x7a, 0x19, 0x17, 0xff, 0x1c, 0xd3, 0xd8, + 0x80, 0x24, 0xb6, 0x20, 0xf, 0xff, 0x11, 0x44, + 0xb0, 0x80, 0x12, 0x69, 0x44, 0x3, 0xff, 0x86, + 0x2b, 0x70, 0x80, 0x11, 0xc4, 0xb0, 0x80, 0x7f, + 0xf9, 0x52, 0x2d, 0x0, 0x24, 0xba, 0x52, 0x0, + 0xff, 0x85, 0x6e, 0xca, 0x20, 0x2, 0x7f, 0x72, + 0x0, 0xff, 0xef, 0x8, 0x80, 0x3f, 0xa, 0xd5, + 0x14, 0x40, 0x52, 0xbe, 0x94, 0x40, 0x38, 0x52, + 0x72, 0x94, 0x40, 0x7, 0x1f, 0x6, 0x1, 0xff, + 0xdc, 0x14, 0x8b, 0xfc, 0x83, 0x0, 0xfc, 0x2b, + 0x5b, 0x6, 0x0, 0x25, 0xac, 0x94, 0x24, 0x9c, + 0xb6, 0x20, 0x0, 0xa5, 0x6b, 0x90, 0x7, 0xff, + 0x69, 0x52, 0x33, 0xed, 0xd0, 0x49, 0x50, 0x80, + 0x3f, 0xc6, 0xfb, 0x6c, 0x40, 0x2, 0x6b, 0xdb, + 0x62, 0x0, 0xa, 0x4e, 0x5a, 0x88, 0x7, 0xff, + 0x51, 0xc8, 0x40, 0x21, 0x69, 0xb7, 0x31, 0x1, + 0x48, 0xcc, 0x39, 0x0, 0x7f, 0xf0, 0x5, 0xb1, + 0x8, 0x3, 0xf8, 0x9f, 0x90, 0x80, 0x3f, 0xfa, + 0xc9, 0xc8, 0x1, 0xf8, 0x56, 0x33, 0xed, 0xcc, + 0x40, 0x3f, 0x89, 0x5e, 0xb7, 0xb6, 0x98, 0x80, + 0x21, 0x21, 0x0, 0x89, 0xab, 0x7b, 0x29, 0xd0, + 0x80, 0x3f, 0xf9, 0xc4, 0xd7, 0x4a, 0x20, 0x18, + 0x52, 0x33, 0xe9, 0xcc, 0x40, 0x30, 0x9a, 0x34, + 0x4d, 0xef, 0x6d, 0x42, 0x90, 0x80, 0x9b, 0x4e, + 0x77, 0x37, 0xb6, 0x9c, 0xc4, 0x0, 0x26, 0xb1, + 0x7b, 0xd9, 0x72, 0xec, 0x84, 0x20, 0x1f, 0xfc, + 0x52, 0x53, 0x30, 0x0, 0x52, 0x33, 0xed, 0xcc, + 0x40, 0x21, 0x49, 0xdf, 0xec, 0xb9, 0x76, 0x42, + 0x10, 0x1, 0x23, 0xd6, 0xf6, 0x4b, 0x18, 0x80, + 0x44, 0xb1, 0x9d, 0xb4, 0xe8, 0x20, 0x10, 0x9a, + 0x34, 0x4d, 0xef, 0x7f, 0x53, 0x10, 0x7, 0xff, + 0x4, 0xe3, 0xaa, 0xfe, 0xdc, 0xc4, 0x3, 0xe1, + 0x4a, 0x52, 0x0, 0x89, 0x1a, 0x2a, 0xf7, 0xf6, + 0xe1, 0x48, 0x3, 0xff, 0x84, 0x4b, 0x17, 0xdc, + 0xdb, 0x97, 0x64, 0x20, 0xc, 0x4f, 0xcc, 0x40, + 0x1f, 0xfc, 0x33, 0x54, 0x10, 0xf, 0xfe, 0x9, + 0xcf, 0xef, 0x7e, 0xdc, 0xba, 0xa1, 0x0, 0x7f, + 0xf3, 0x44, 0x91, 0xa2, 0x6f, 0x7f, 0xb3, 0x1f, + 0x8, 0x1, 0xc0, + + /* U+8BD5 "试" */ + 0x0, 0xff, 0x89, 0xc, 0x40, 0x3f, 0xfb, 0xa2, + 0xf9, 0xff, 0xad, 0x84, 0x0, 0x48, 0xf0, 0xc4, + 0x1, 0xff, 0xc9, 0x38, 0xcd, 0xbc, 0xfa, 0x62, + 0x0, 0xff, 0xf0, 0xb8, 0x80, 0xac, 0x54, 0x3c, + 0xe5, 0xa9, 0x0, 0x7f, 0xf1, 0x8e, 0xec, 0x62, + 0x2, 0xb3, 0xb9, 0x8, 0x20, 0x1f, 0xfe, 0x1, + 0x5a, 0xd7, 0x30, 0x14, 0xaf, 0x94, 0x10, 0xf, + 0xfe, 0x21, 0xbe, 0x62, 0x54, 0x40, 0x6, 0xf7, + 0x92, 0x82, 0x1, 0xff, 0xe0, 0x38, 0xda, 0x51, + 0x2, 0x6a, 0xb5, 0x10, 0xf, 0xfe, 0x29, 0x35, + 0x65, 0x28, 0x80, 0x9, 0xae, 0x94, 0x40, 0x3f, + 0xfc, 0x2, 0xb7, 0x4a, 0x20, 0x2f, 0x8a, 0x20, + 0x1f, 0xfc, 0x72, 0x5a, 0xc8, 0x42, 0x49, 0x92, + 0x88, 0x7, 0xff, 0x44, 0xc0, 0x3f, 0x18, 0x7, + 0xc2, 0x97, 0x98, 0xdd, 0x4a, 0x8, 0x7, 0xff, + 0x28, 0x9e, 0xf6, 0xd8, 0x80, 0x25, 0xaf, 0xff, + 0xfe, 0x76, 0xc1, 0x80, 0x63, 0x8d, 0xff, 0xfe, + 0xed, 0xcd, 0xff, 0xba, 0x4c, 0x3, 0xff, 0xfe, + 0x1, 0xff, 0xde, 0x5a, 0xff, 0xff, 0xe8, 0x52, + 0x80, 0x61, 0x6b, 0xff, 0xff, 0xe1, 0xf4, 0x98, + 0x4, 0x93, 0xdd, 0xff, 0xc4, 0xd8, 0x30, 0xf, + 0xfe, 0xc0, 0x80, 0x7c, 0xe0, 0x1f, 0xfc, 0xa3, + 0x11, 0xff, 0xe2, 0x18, 0x80, 0x7f, 0xf6, 0x8c, + 0x3, 0xce, 0x1, 0xff, 0xc9, 0x4b, 0xdd, 0xff, + 0x53, 0x8, 0x7, 0xff, 0x90, 0x4c, 0x3, 0xff, + 0x96, 0x24, 0x5f, 0xe6, 0x13, 0x0, 0xff, 0xe1, + 0x91, 0x9f, 0xff, 0x28, 0x84, 0x0, 0xe2, 0x20, + 0xe, 0x10, 0xf, 0xff, 0x32, 0x5e, 0x67, 0xff, + 0x2a, 0x10, 0x0, 0x20, 0x60, 0x18, 0x4c, 0x40, + 0x3f, 0xfc, 0xc2, 0x45, 0xf0, 0x80, 0x7c, 0x24, + 0x5e, 0x31, 0x0, 0x1f, 0x88, 0x6, 0x71, 0x30, + 0xf, 0xff, 0x2a, 0x46, 0xef, 0xd8, 0xe4, 0x1, + 0xb, 0xee, 0xfd, 0x28, 0x0, 0x11, 0x38, 0x6, + 0x2f, 0x10, 0xf, 0xff, 0xf8, 0x4, 0x44, 0x0, + 0xc2, 0x4c, 0x1, 0xff, 0xff, 0x0, 0x98, 0x48, + 0x3, 0x31, 0x10, 0x3, 0xff, 0xfe, 0x0, 0x2e, + 0x60, 0xc, 0x7a, 0xc0, 0x1f, 0xff, 0xf0, 0x9, + 0x4c, 0x40, 0x33, 0x19, 0x0, 0x7f, 0xf7, 0xc4, + 0xda, 0x61, 0x0, 0x3f, 0xf9, 0x22, 0x68, 0x82, + 0x0, 0x1e, 0xa0, 0x6, 0x3c, 0x70, 0xf, 0x85, + 0xef, 0x25, 0x8c, 0x40, 0x3f, 0xf8, 0xa6, 0x1, + 0xcc, 0x6d, 0x39, 0xf9, 0x2c, 0xfc, 0x80, 0x1f, + 0xfc, 0x1, 0x58, 0xac, 0xde, 0xfe, 0xcb, 0x9a, + 0x30, 0x3, 0xe9, 0x80, 0x64, 0xf5, 0x0, 0xf1, + 0xfb, 0x1b, 0x4c, 0x20, 0x7, 0xff, 0xd, 0xc8, + 0x40, 0x21, 0x6a, 0xc9, 0x63, 0x11, 0x1b, 0x4f, + 0x82, 0xb4, 0x4d, 0x67, 0xb9, 0x0, 0x62, 0x45, + 0x32, 0x10, 0x13, 0x44, 0x68, 0x80, 0x9, 0x50, + 0x80, 0x32, 0xf3, 0x8, 0x6, 0x62, 0x20, 0x0, + 0x8d, 0x80, 0x3f, 0xf8, 0x24, 0xfe, 0xa0, 0x1f, + 0x89, 0x67, 0x3f, 0x2b, 0xee, 0xd5, 0x2e, 0xca, + 0x64, 0x0, 0x12, 0x35, 0x78, 0xab, 0xde, 0xfe, + 0xcb, 0x95, 0x20, 0x8, 0xa9, 0x48, 0x3, 0x24, + 0x5a, 0x88, 0x1e, 0xa0, 0x4, 0xfa, 0x60, 0x1f, + 0xf0, 0xb7, 0x42, 0x0, 0x61, 0x37, 0xad, 0xd5, + 0x31, 0x88, 0x1e, 0x20, 0x9a, 0x33, 0xcd, 0x66, + 0xff, 0x6e, 0x54, 0x3a, 0xa1, 0x8, 0x7, 0xfc, + 0x53, 0x68, 0x1, 0x85, 0x6b, 0xbf, 0x18, 0x40, + 0x9, 0xea, 0x1, 0xff, 0xc0, 0x16, 0xf6, 0x21, + 0x48, 0xbf, 0xc8, 0x52, 0x0, 0xf9, 0x6b, 0xb2, + 0xe6, 0x19, 0x4c, 0x80, 0x3f, 0xf9, 0x62, 0xd3, + 0x6, 0x1, 0xfe, 0x16, 0xf5, 0x0, 0xff, 0xe1, + 0x9c, 0x67, 0xdb, 0xa0, 0x80, 0x7f, 0xf8, 0xc9, + 0xf3, 0x12, 0xa6, 0x40, 0x1, 0x37, 0xd9, 0x40, + 0xf, 0xfe, 0x28, 0x8c, 0x1, 0xff, 0xea, 0x36, + 0xac, 0xdf, 0xf7, 0x64, 0x18, 0x7, 0xc0, + + /* U+8BDD "话" */ + 0x0, 0xff, 0xff, 0x80, 0x7f, 0xf2, 0x45, 0x10, + 0x40, 0x1f, 0xfe, 0x41, 0x23, 0x45, 0x68, 0x9a, + 0xcd, 0xff, 0x75, 0x28, 0x80, 0x7f, 0xf0, 0xc5, + 0x6b, 0xee, 0xdb, 0x90, 0x82, 0x1, 0xff, 0xcd, + 0x11, 0x11, 0x99, 0x15, 0x98, 0xf1, 0x9, 0xab, + 0xcd, 0xef, 0xed, 0xcb, 0xa9, 0x76, 0x53, 0x20, + 0x0, 0xad, 0xd9, 0x44, 0x3, 0xff, 0x82, 0x2f, + 0xe8, 0x20, 0x3, 0x7b, 0xca, 0x52, 0x0, 0xff, + 0x1b, 0x4d, 0x5d, 0xb3, 0x7b, 0x9f, 0xee, 0xe6, + 0xe6, 0x2e, 0xa6, 0x50, 0xee, 0x65, 0x43, 0x21, + 0x0, 0x84, 0x8d, 0x15, 0x9e, 0x6a, 0xf7, 0xbf, + 0xa9, 0x44, 0x3, 0xff, 0x84, 0x4b, 0x5f, 0x4a, + 0x40, 0x2, 0x5a, 0xca, 0x51, 0x0, 0xf8, 0x80, + 0x95, 0x10, 0x64, 0x22, 0x0, 0x9, 0x10, 0xcc, + 0x8a, 0xa6, 0x68, 0xc4, 0x3, 0x1c, 0xf7, 0xf6, + 0xe5, 0xd4, 0xc3, 0x2a, 0x10, 0x80, 0x7f, 0xf2, + 0x85, 0x6b, 0x2d, 0x48, 0x0, 0x2b, 0x59, 0x6, + 0x1, 0xc2, 0xd3, 0x98, 0xdd, 0x77, 0x3f, 0xee, + 0xdd, 0x66, 0x2e, 0xa9, 0x32, 0xbb, 0x18, 0x6, + 0x70, 0x10, 0xf, 0xfe, 0xd0, 0xa5, 0x7c, 0xa0, + 0x89, 0x62, 0x8c, 0x3, 0xe2, 0x33, 0x11, 0x4, + 0x40, 0x1f, 0xff, 0x42, 0x6b, 0xff, 0x52, 0x90, + 0x7, 0xff, 0xfc, 0x3, 0xe1, 0x10, 0x7, 0xff, + 0xfc, 0x3, 0xff, 0x92, 0x22, 0x22, 0xff, 0xe4, + 0x37, 0x0, 0x73, 0x89, 0x91, 0x7f, 0xf2, 0x44, + 0x3, 0x2d, 0x77, 0x7f, 0xf1, 0x36, 0xc, 0x3, + 0xe1, 0x7a, 0xdd, 0xff, 0xe4, 0x5b, 0x10, 0x6, + 0x38, 0xcd, 0xdf, 0xfe, 0x46, 0x41, 0x80, 0x61, + 0x1f, 0xfe, 0x28, 0x7, 0xff, 0xe5, 0x27, 0x77, + 0xfd, 0x2a, 0x20, 0x1f, 0xfc, 0x11, 0x6b, 0xff, + 0xff, 0xe4, 0x6c, 0x10, 0x6, 0x49, 0xff, 0xff, + 0xe4, 0xf4, 0x98, 0x4, 0x24, 0x5f, 0xf2, 0x90, + 0x7, 0xff, 0xfc, 0x3, 0xff, 0xfe, 0x1, 0xff, + 0xff, 0x0, 0xff, 0xff, 0x80, 0x7f, 0xfd, 0xce, + 0x37, 0xff, 0xff, 0x87, 0xb0, 0x40, 0x19, 0x27, + 0xff, 0xff, 0x89, 0xb0, 0x60, 0x1f, 0xfd, 0xf3, + 0x0, 0xff, 0xee, 0x18, 0x7, 0xff, 0x99, 0x27, + 0xbb, 0xff, 0x9f, 0xb0, 0x60, 0x1f, 0xfd, 0xd2, + 0x56, 0x41, 0x0, 0xfe, 0x13, 0x11, 0xff, 0xe7, + 0x98, 0x80, 0x7f, 0xf6, 0x85, 0x67, 0x36, 0xa6, + 0x63, 0x0, 0xff, 0xfc, 0x8, 0x6, 0x34, 0x8c, + 0xfa, 0x63, 0x0, 0xb, 0x78, 0x7, 0xff, 0xe1, + 0x88, 0x40, 0x21, 0x34, 0x31, 0x1, 0x48, 0xcf, + 0xb7, 0x30, 0xf, 0xff, 0xa9, 0x3c, 0xa0, 0x7, + 0x84, 0xde, 0xfe, 0xdc, 0xc4, 0x3, 0xff, 0xec, + 0x71, 0xf0, 0x60, 0x18, 0xda, 0xbf, 0x21, 0x4, + 0x3, 0xff, 0x86, 0xb5, 0xff, 0xff, 0xcf, 0xe9, + 0x30, 0xf, 0xfe, 0x59, 0xd5, 0xc, 0x5, 0x67, + 0x72, 0x54, 0x40, 0x3f, 0xff, 0xe4, 0xfb, 0xdf, + 0x4c, 0x40, 0x1f, 0xfc, 0xb4, 0x9e, 0xef, 0xfe, + 0x7e, 0xca, 0x11, 0x77, 0x80, 0x7e, + + /* U+8BF7 "请" */ + 0x0, 0xff, 0xf5, 0x8, 0xe0, 0xf, 0xfe, 0xd9, + 0x10, 0x40, 0x3f, 0xfb, 0x6d, 0x7d, 0xdb, 0x1c, + 0x40, 0x3f, 0xfa, 0x82, 0x91, 0x9b, 0xaf, 0xa6, + 0x20, 0xf, 0xff, 0xf8, 0x0, 0x5f, 0xc0, 0x40, + 0x56, 0x73, 0xe, 0x62, 0x1, 0xff, 0x1b, 0xdd, + 0xff, 0xf1, 0xb2, 0xd4, 0x3, 0x1d, 0x6d, 0xdf, + 0xff, 0x1d, 0xcc, 0x3, 0xff, 0x80, 0x6f, 0x98, + 0x94, 0x10, 0x13, 0x8c, 0xd8, 0x31, 0x0, 0xfc, + 0xfc, 0xa8, 0x9f, 0xfc, 0x53, 0x21, 0x0, 0xe2, + 0x34, 0x4f, 0xfe, 0x3e, 0xb0, 0x7, 0xff, 0xc, + 0x9a, 0xf2, 0x50, 0x40, 0x6, 0xf9, 0xae, 0x40, + 0x1e, 0x49, 0xef, 0xff, 0xfe, 0x34, 0xa0, 0x6, + 0x38, 0xef, 0xff, 0xfe, 0x3d, 0x28, 0x7, 0xff, + 0x18, 0x9a, 0xf5, 0xcc, 0x3, 0x78, 0x80, 0x7f, + 0xf3, 0x84, 0x3, 0xf1, 0x80, 0x7f, 0xf7, 0x8e, + 0x36, 0xeb, 0x36, 0xc, 0x3, 0xf1, 0xc7, 0x7f, + 0xff, 0xf0, 0xfa, 0x50, 0x3, 0x1c, 0x6f, 0xff, + 0xff, 0x13, 0x18, 0x40, 0x3f, 0xf9, 0xa2, 0x8a, + 0x62, 0x1, 0xfe, 0x1d, 0x66, 0xff, 0xe2, 0xa0, + 0x80, 0x61, 0x35, 0x66, 0xff, 0xe2, 0x59, 0x0, + 0x7f, 0xf7, 0x49, 0x62, 0x67, 0xff, 0x89, 0xaa, + 0x1, 0x8a, 0xed, 0x33, 0xff, 0xc4, 0x74, 0x10, + 0xf, 0x92, 0x7b, 0xbf, 0xf8, 0xd2, 0x80, 0x1e, + 0x15, 0x8a, 0xaf, 0xfe, 0x52, 0x80, 0x62, 0xbb, + 0x55, 0x7f, 0xf2, 0x61, 0x48, 0x0, 0x26, 0x23, + 0xff, 0xc6, 0x30, 0xf, 0x8f, 0x55, 0x7f, 0xf9, + 0x46, 0x20, 0x18, 0x4d, 0x57, 0xff, 0x97, 0xa2, + 0x0, 0x5b, 0xdd, 0xff, 0xa9, 0x84, 0x3, 0xff, + 0x80, 0x51, 0x9d, 0xdf, 0xfe, 0x7c, 0x83, 0x0, + 0x84, 0x8b, 0xfe, 0x71, 0x30, 0xf, 0xfe, 0x10, + 0x8f, 0xff, 0xa4, 0x3, 0xff, 0xb6, 0xd7, 0xff, + 0xff, 0xda, 0xd8, 0x30, 0xf, 0xff, 0x30, 0x92, + 0x27, 0xff, 0x38, 0xc4, 0x3, 0xff, 0xda, 0xb1, + 0x77, 0xff, 0xce, 0x87, 0x10, 0xf, 0xff, 0xf8, + 0x7, 0xff, 0xe1, 0x2b, 0xff, 0xff, 0x9d, 0x6c, + 0x20, 0x1f, 0xfe, 0xc1, 0x35, 0x66, 0xff, 0xe6, + 0xa1, 0x0, 0x7f, 0xfb, 0x56, 0x6a, 0x67, 0xff, + 0x9b, 0xe8, 0x20, 0x1f, 0xfd, 0xc1, 0x37, 0xad, + 0xd4, 0x18, 0x7, 0xff, 0xfc, 0x92, 0x33, 0xf2, + 0x14, 0x88, 0xb6, 0x62, 0x1, 0xe4, 0xaf, 0xff, + 0xfe, 0x75, 0xb0, 0x80, 0x7f, 0xf4, 0x1c, 0x88, + 0x1, 0x96, 0x6d, 0xcc, 0x40, 0x51, 0xef, 0x20, + 0xc4, 0x3, 0xc2, 0x6a, 0xbf, 0xfc, 0xe4, 0x20, + 0xf, 0xfe, 0x82, 0xfa, 0x0, 0x7e, 0x25, 0x8c, + 0xfb, 0x84, 0x10, 0xf, 0xe5, 0x9a, 0xaf, 0xfe, + 0x77, 0xa0, 0x80, 0x7f, 0xf3, 0x5, 0x6a, 0xd4, + 0x40, 0x31, 0x2c, 0xee, 0xa9, 0xcc, 0x40, 0x3f, + 0xfb, 0xa2, 0x62, 0x1, 0xc2, 0x1, 0xff, 0xc6, + 0x14, 0xe4, 0x10, 0x25, 0x9d, 0xd5, 0x31, 0x0, + 0x7f, 0xf5, 0xd6, 0xbf, 0xff, 0xa9, 0x40, 0x33, + 0xe9, 0x0, 0x7f, 0xf1, 0xc5, 0x2f, 0x37, 0x29, + 0x88, 0x3, 0xff, 0xb6, 0xbc, 0xc4, 0x23, 0x88, + 0xa3, 0x45, 0x68, 0xbb, 0x28, 0x7, 0xf8, + + /* U+8D2D "购" */ + 0x0, 0xff, 0xf2, 0xa4, 0x65, 0xd4, 0xba, 0x8, + 0x7, 0xff, 0x54, 0x47, 0xff, 0xa2, 0x1, 0xff, + 0xc0, 0x4e, 0x63, 0x45, 0x6d, 0x11, 0x0, 0x7f, + 0xf5, 0x16, 0xbb, 0xbf, 0xf9, 0xf4, 0xc2, 0x1, + 0xfc, 0x9c, 0xa2, 0x1, 0x2f, 0xa8, 0x7, 0xff, + 0x70, 0x47, 0xff, 0x8a, 0x1, 0xff, 0xc4, 0x5e, + 0x50, 0xc, 0x9e, 0xa0, 0x1f, 0xfd, 0xb4, 0x9f, + 0xee, 0xff, 0xe1, 0xfc, 0xa0, 0x7, 0xff, 0x5, + 0x7d, 0x40, 0x31, 0xe3, 0x11, 0x7f, 0xf3, 0xc4, + 0x3, 0xff, 0xc2, 0xbe, 0xa0, 0x1c, 0x71, 0x9b, + 0xbf, 0xfc, 0xee, 0x62, 0x0, 0xff, 0xe2, 0x93, + 0x55, 0xdd, 0x8, 0x20, 0x1f, 0xfc, 0x42, 0x78, + 0x50, 0xc, 0x23, 0xff, 0xce, 0x0, 0xc2, 0x88, + 0x20, 0xf, 0xfe, 0x28, 0xfa, 0x27, 0x10, 0x7, + 0xff, 0xc, 0x56, 0x20, 0x40, 0x11, 0xcf, 0xf7, + 0x7f, 0xf3, 0x21, 0x0, 0x3f, 0xfc, 0x49, 0x10, + 0x50, 0x8, 0x9b, 0xd8, 0x40, 0x3f, 0xff, 0x22, + 0x93, 0x4c, 0x40, 0x1, 0x58, 0x81, 0x80, 0xac, + 0x54, 0x3a, 0x98, 0x80, 0x7f, 0xf0, 0xc4, 0x3, + 0xff, 0xc0, 0xfe, 0x60, 0x60, 0x1, 0x5b, 0xb2, + 0x88, 0x1, 0x7d, 0xd5, 0xe2, 0x16, 0x40, 0x1f, + 0xff, 0x7, 0xe7, 0x9d, 0xd5, 0xed, 0xa8, 0x80, + 0x45, 0x8e, 0x1, 0xa, 0xd9, 0x80, 0x7f, 0xfd, + 0x49, 0xc, 0x40, 0x31, 0x2a, 0x10, 0x0, 0x5e, + 0xcc, 0x3, 0xff, 0x8c, 0xe0, 0x1f, 0xfc, 0xc7, + 0x0, 0xff, 0xe8, 0x8a, 0x59, 0x80, 0x5, 0xf4, + 0xc0, 0x4, 0xaf, 0x32, 0x62, 0x0, 0xfe, 0x10, + 0xf, 0xfe, 0x78, 0x80, 0x4e, 0x2, 0x1, 0xff, + 0xc8, 0x17, 0xd3, 0x0, 0xb, 0xea, 0x0, 0x43, + 0xb2, 0xcc, 0x8b, 0x40, 0xf, 0x8c, 0x3, 0xff, + 0x9e, 0x60, 0x18, 0x4c, 0x3, 0xff, 0x90, 0x2f, + 0xa8, 0x0, 0x26, 0xa4, 0x0, 0xc7, 0x4c, 0x40, + 0x2d, 0xca, 0x1, 0xf8, 0x40, 0x23, 0x0, 0xff, + 0xe4, 0x8, 0x7, 0x18, 0x80, 0x7f, 0xf1, 0xc9, + 0xa9, 0x0, 0x5, 0x54, 0x30, 0xf, 0x15, 0x50, + 0xc0, 0xb, 0xcc, 0x20, 0x18, 0x7c, 0x3, 0xc2, + 0x1, 0xff, 0xc5, 0x12, 0x60, 0x8, 0x85, 0x80, + 0x3f, 0xf8, 0xc7, 0x52, 0x60, 0x3, 0xb6, 0x20, + 0xe, 0x12, 0x37, 0x7, 0x10, 0x2, 0x53, 0x88, + 0x6, 0x13, 0x0, 0xff, 0xe5, 0xaf, 0x18, 0x0, + 0x53, 0x8, 0x3, 0xff, 0x88, 0x6f, 0xee, 0x20, + 0x1, 0xc, 0xbb, 0x66, 0xf7, 0xfb, 0xb7, 0x2a, + 0x10, 0x40, 0x23, 0xa7, 0x10, 0x3, 0x80, 0x80, + 0x6f, 0x0, 0xfe, 0x11, 0xc0, 0x18, 0x8d, 0x40, + 0x25, 0xf5, 0x0, 0xf1, 0x89, 0x14, 0x26, 0x1, + 0x1d, 0xd1, 0x80, 0x61, 0x35, 0x52, 0x19, 0x1, + 0x1a, 0x2b, 0x3c, 0x4c, 0x98, 0x80, 0x7, 0xae, + 0x20, 0x26, 0x1, 0x84, 0xc, 0x3, 0xe5, 0xae, + 0xea, 0xd8, 0x44, 0x96, 0x60, 0x2, 0xc4, 0x10, + 0x13, 0x31, 0xa, 0xd6, 0xed, 0x4a, 0x20, 0x3, + 0xaa, 0x21, 0xab, 0x44, 0xd5, 0xef, 0x7f, 0xbb, + 0x72, 0xea, 0x61, 0xd9, 0x94, 0xa6, 0x65, 0x32, + 0x1, 0x36, 0x0, 0xe1, 0x0, 0xff, 0xe1, 0x93, + 0x59, 0x80, 0xe, 0xd8, 0x1b, 0x3b, 0x32, 0xa5, + 0x10, 0xf, 0xe2, 0x7b, 0xca, 0x97, 0x65, 0x42, + 0x10, 0xf, 0xfe, 0x1, 0xc6, 0x62, 0xa1, 0x4, + 0xb8, 0x40, 0x33, 0x98, 0x80, 0x7f, 0xf0, 0x5, + 0xa6, 0x8, 0x5, 0x61, 0x84, 0x9e, 0x18, 0x80, + 0x56, 0xb2, 0x50, 0x40, 0x3f, 0xfb, 0x4c, 0x44, + 0x0, 0xc4, 0x20, 0x1f, 0xf1, 0xc6, 0xca, 0x0, + 0xa5, 0xd9, 0x0, 0x21, 0x49, 0xca, 0x51, 0x2, + 0x6b, 0xd7, 0x30, 0xf, 0xfe, 0xba, 0x62, 0x0, + 0x62, 0xe6, 0x0, 0xf8, 0x52, 0x33, 0x5c, 0xc0, + 0x9a, 0xa8, 0xa2, 0x1, 0xf0, 0xad, 0x6c, 0x18, + 0x0, 0xe3, 0x69, 0x44, 0x3, 0xff, 0x8a, 0x46, + 0x71, 0x17, 0xf2, 0x44, 0x18, 0x40, 0x32, 0x19, + 0x0, 0x61, 0x5a, 0xfb, 0x73, 0x11, 0x24, 0xfc, + 0xa0, 0x80, 0x7f, 0xf0, 0xd, 0xf6, 0x50, 0x40, + 0x5b, 0x48, 0x3, 0xff, 0x8a, 0xd5, 0xb9, 0xbb, + 0xfd, 0x6e, 0x60, 0x18, 0x9e, 0x90, 0x3, 0x85, + 0x62, 0xa, 0x8f, 0x7f, 0x6c, 0x40, 0x1f, 0xfc, + 0x51, 0x6a, 0xdc, 0xdc, 0x83, 0x0, 0xff, 0xe2, + 0xa6, 0x20, 0x7, 0xfc, 0x24, 0x6b, 0x17, 0x90, + 0x60, 0x1f, 0x89, 0xaa, 0xe1, 0x4, 0x3, 0xff, + 0x94, 0x26, 0x62, 0x0, 0xff, 0xe4, 0xad, 0x7f, + 0xff, 0xdd, 0xb9, 0x4e, 0x82, 0x1, 0xe0, + + /* U+8D85 "超" */ + 0x0, 0xff, 0xe4, 0x89, 0x19, 0xc4, 0x20, 0x1f, + 0xff, 0xf0, 0xf, 0x8a, 0x7f, 0x32, 0xf6, 0x20, + 0xf, 0xff, 0xf8, 0x7, 0xff, 0x45, 0x23, 0x77, + 0xff, 0xb3, 0x4c, 0x20, 0x1f, 0xfe, 0x51, 0x22, + 0xff, 0xec, 0xb0, 0x7, 0xff, 0x8, 0x8d, 0x13, + 0xff, 0x80, 0x46, 0x1, 0x1e, 0xa2, 0x7f, 0xf0, + 0xc, 0x41, 0x6f, 0x33, 0xfd, 0x70, 0x60, 0x18, + 0x9a, 0xb3, 0x3f, 0xd6, 0xe6, 0x1, 0xff, 0xc6, + 0x3a, 0xeb, 0xbf, 0xfa, 0x54, 0x40, 0x21, 0x59, + 0xbb, 0xff, 0xbd, 0xc4, 0x44, 0x67, 0xfe, 0x7f, + 0x10, 0x8, 0x52, 0x94, 0xcf, 0xfc, 0x9c, 0xe0, + 0x19, 0xc0, 0x40, 0x3f, 0xe1, 0xe4, 0x4f, 0xfe, + 0x1, 0x90, 0x7, 0x11, 0xa2, 0x7f, 0xf0, 0xc, + 0x3, 0xff, 0x80, 0x2a, 0x84, 0x1, 0x26, 0x18, + 0x7, 0xfc, 0x20, 0x1f, 0xfc, 0x82, 0x69, 0xbb, + 0xff, 0xb9, 0x48, 0x2, 0x2a, 0xeb, 0xbf, 0xfa, + 0x14, 0x40, 0x3f, 0xc5, 0x36, 0x60, 0x12, 0x7a, + 0x0, 0x7f, 0xf0, 0xc, 0x58, 0x3, 0x9, 0x0, + 0x7f, 0xfb, 0x45, 0x61, 0xc8, 0x0, 0x4f, 0xa, + 0x20, 0x1f, 0xfc, 0x6, 0xe3, 0x0, 0x84, 0x9c, + 0x3, 0xff, 0xd6, 0x4f, 0xb4, 0xa0, 0x1, 0x48, + 0x93, 0x0, 0xff, 0xe0, 0xa6, 0xa0, 0x80, 0x4b, + 0xc4, 0x1, 0xfe, 0x16, 0xbe, 0xef, 0xfe, 0xe, + 0xb9, 0x0, 0x45, 0x1b, 0xdd, 0xff, 0xc1, 0xd8, + 0x41, 0x48, 0xcc, 0x41, 0x80, 0x9, 0xaa, 0xd4, + 0x40, 0x25, 0xae, 0xff, 0x77, 0x6f, 0xf5, 0xb1, + 0x0, 0x47, 0x88, 0x20, 0x1f, 0xfc, 0x7, 0x11, + 0xff, 0xe0, 0x80, 0x7f, 0x8, 0xff, 0xf0, 0x49, + 0xab, 0xed, 0xcc, 0x40, 0x96, 0xb2, 0x50, 0x3, + 0xcb, 0xe8, 0x22, 0x0, 0x8, 0xf1, 0x1a, 0x35, + 0x73, 0x90, 0x7, 0xfc, 0x2d, 0x9f, 0xff, 0xfc, + 0x2d, 0x83, 0x0, 0x89, 0xf3, 0xff, 0xff, 0x81, + 0xb4, 0xc4, 0x53, 0x56, 0xea, 0x94, 0x40, 0x3f, + 0x96, 0xbb, 0xb7, 0xfb, 0xba, 0xdc, 0xb9, 0x52, + 0x0, 0xff, 0xe9, 0x18, 0x80, 0x7f, 0xf1, 0xc9, + 0x23, 0x37, 0xb0, 0x95, 0xdf, 0xff, 0xa4, 0x84, + 0x1, 0xff, 0xc3, 0x48, 0xcc, 0xd2, 0xa2, 0x1, + 0xff, 0xd1, 0x15, 0x98, 0x8f, 0xfe, 0x9c, 0xeb, + 0x0, 0x7f, 0xf1, 0x8, 0xcf, 0x29, 0x80, 0x7f, + 0xf6, 0x4d, 0xaa, 0xbf, 0xf8, 0xee, 0x80, 0x1f, + 0xfc, 0xa1, 0x0, 0xff, 0xe3, 0x13, 0x76, 0x67, + 0xfd, 0x2a, 0x20, 0x1f, 0xcd, 0x8a, 0xbf, 0xfc, + 0x7b, 0x21, 0x0, 0xff, 0xee, 0x89, 0x19, 0xff, + 0xca, 0x60, 0x1f, 0xfe, 0xc1, 0x0, 0xc2, 0x23, + 0x0, 0xff, 0xb, 0x56, 0xef, 0xfd, 0xce, 0x20, + 0x1f, 0xfe, 0x91, 0x30, 0xe, 0x2a, 0x52, 0x0, + 0xfe, 0x31, 0x62, 0x2f, 0xfe, 0x0, 0x80, 0x7f, + 0xfa, 0x8c, 0x5c, 0x3, 0x8a, 0xa8, 0x60, 0x1f, + 0xff, 0xf0, 0x8, 0x7c, 0x40, 0x3c, 0x4d, 0x2a, + 0x20, 0x1f, 0xfd, 0x45, 0xaf, 0xff, 0xfe, 0x3e, + 0x30, 0x80, 0x7f, 0xf2, 0x18, 0x88, 0x1, 0x8, + 0xc0, 0x2b, 0x74, 0xdc, 0x1, 0xff, 0xcd, 0x71, + 0x1f, 0xfe, 0x99, 0x8b, 0x80, 0x7f, 0xf0, 0x48, + 0x8e, 0x1, 0x1c, 0x6c, 0x18, 0x0, 0x52, 0x1c, + 0xc0, 0x3f, 0xf9, 0x42, 0xd7, 0xdd, 0xff, 0xd3, + 0xd8, 0x30, 0xf, 0xfe, 0xb, 0xe9, 0x0, 0x5, + 0x54, 0x6d, 0xb4, 0x82, 0x1, 0xf1, 0x93, 0x8, + 0x7, 0xff, 0xd1, 0x31, 0x0, 0x25, 0xc3, 0x0, + 0xa, 0xde, 0x53, 0x18, 0x6, 0x15, 0xae, 0xfe, + 0xdb, 0xa8, 0x76, 0x55, 0x91, 0x23, 0x38, 0x8b, + 0xff, 0xb2, 0x64, 0x20, 0x1e, 0x5e, 0x61, 0x0, + 0x26, 0xa0, 0x7, 0x89, 0x67, 0x3a, 0xe1, 0x8, + 0x3, 0x9, 0x22, 0xbc, 0x4d, 0x55, 0x77, 0x66, + 0x5b, 0xbf, 0xfd, 0x98, 0x40, 0xf, 0x2f, 0xa8, + 0x4, 0x9a, 0xe2, 0x1, 0xfe, 0x14, 0x7b, 0xdf, + 0xed, 0xba, 0x97, 0x65, 0x43, 0x22, 0x8, 0x80, + 0x3f, 0xfb, 0xab, 0xcc, 0x20, 0x1c, 0xb5, 0xb4, + 0xf1, 0xec, 0x20, 0x1f, 0xfc, 0x51, 0x24, 0x56, + 0x89, 0xab, 0xcd, 0xd7, 0x73, 0xff, 0xff, 0xbb, + 0x4a, 0x1, 0x80, + + /* U+8FC7 "过" */ + 0x0, 0xff, 0x84, 0x84, 0x3, 0xff, 0xca, 0x2d, + 0x7f, 0xfb, 0x1c, 0x40, 0x3f, 0xf9, 0x84, 0xd5, + 0xbd, 0xbf, 0x6c, 0x40, 0x1f, 0xff, 0xf0, 0xe, + 0x24, 0xd6, 0x10, 0x14, 0x9c, 0xb6, 0x20, 0xf, + 0xff, 0xf8, 0x4, 0x4f, 0x7b, 0x8, 0x20, 0x29, + 0x39, 0x6c, 0x40, 0x1f, 0xff, 0xf0, 0x8, 0xde, + 0xf5, 0xcc, 0x0, 0x29, 0x39, 0x48, 0x20, 0x1f, + 0xff, 0xf0, 0x8, 0xe3, 0x69, 0x44, 0x0, 0x2b, + 0xc, 0x40, 0x4, 0x9e, 0xff, 0xff, 0xe9, 0xf4, + 0xa0, 0x6, 0x38, 0xef, 0xff, 0xee, 0x94, 0x0, + 0xff, 0xe4, 0x8a, 0xdd, 0x43, 0xd6, 0xe3, 0x90, + 0x6, 0x10, 0xf, 0xff, 0xf8, 0xa, 0x3c, 0x29, + 0x0, 0x72, 0x46, 0xef, 0xff, 0x53, 0x1c, 0xc0, + 0x31, 0x3d, 0xee, 0xff, 0x64, 0x20, 0x7, 0xff, + 0x5c, 0x48, 0xbf, 0xfa, 0xbc, 0xe0, 0x18, 0x7d, + 0x48, 0xbf, 0xc2, 0x1, 0xff, 0xe0, 0x22, 0x8, + 0x7, 0xff, 0xfc, 0x3, 0xf1, 0xbe, 0x76, 0xeb, + 0x20, 0xc0, 0x3f, 0xfc, 0xeb, 0x5f, 0xff, 0xfc, + 0x4e, 0x93, 0x0, 0xfe, 0x34, 0x53, 0x0, 0x13, + 0xed, 0x28, 0x80, 0x7f, 0xf9, 0x44, 0x3, 0xff, + 0xa2, 0x73, 0xd0, 0x60, 0x1, 0x5a, 0xd7, 0x20, + 0xf, 0xff, 0x12, 0xd6, 0xef, 0xfa, 0x54, 0x3, + 0xff, 0x8e, 0x6f, 0xd2, 0x80, 0x11, 0xc7, 0xb9, + 0x80, 0x7f, 0xf8, 0x44, 0x8b, 0xfe, 0x31, 0x0, + 0xff, 0xe4, 0x13, 0x54, 0xa0, 0x4, 0x51, 0xd0, + 0x60, 0x1f, 0xff, 0xf0, 0xc, 0x2d, 0x32, 0x30, + 0x8, 0x9a, 0x90, 0x3, 0xff, 0xfe, 0x1, 0xc4, + 0xdf, 0x2f, 0x39, 0xf2, 0x80, 0x1f, 0xff, 0xf0, + 0xf, 0x8d, 0xa1, 0x8c, 0x40, 0x3f, 0xff, 0xe0, + 0x1f, 0xff, 0xf0, 0xf, 0xfe, 0x78, 0x8f, 0x80, + 0x3f, 0xa, 0xfb, 0x0, 0x7f, 0xf7, 0x84, 0x3, + 0xff, 0xa0, 0x73, 0xfd, 0xdb, 0xff, 0xf7, 0x5b, + 0x10, 0x4, 0x2a, 0x62, 0x1, 0xff, 0xd1, 0x25, + 0x8b, 0xa6, 0x0, 0xc2, 0xf0, 0xe6, 0x20, 0x1f, + 0xfc, 0x73, 0xb6, 0x20, 0xf, 0xfe, 0x8, 0x92, + 0x34, 0xe4, 0xa0, 0x7, 0xff, 0x38, 0x56, 0x77, + 0x54, 0xe8, 0x20, 0x1, 0x21, 0x1, 0x48, 0xcf, + 0xc8, 0x52, 0x10, 0xf, 0xfe, 0x19, 0xc6, 0x6e, + 0xfb, 0xbb, 0x7f, 0xdd, 0xb7, 0x2c, 0x40, 0x1f, + 0xfc, 0xd2, 0x6a, 0xfa, 0x62, 0x0, 0xa, 0x46, + 0x7f, 0x6f, 0x6d, 0x39, 0x88, 0x8d, 0xeb, 0x7b, + 0x6e, 0x5d, 0x95, 0xc, 0x84, 0x40, 0x1e, 0x12, + 0x2f, 0x8, 0xe0, 0xf, 0xc2, 0x38, 0x8a, 0x33, + 0x91, 0xa, 0xa6, 0x62, 0x10, 0x7, 0x8e, 0x3e, + 0x54, 0x40, 0x23, 0x8c, 0xb7, 0x30, 0xc, 0x4b, + 0x19, 0xf7, 0x8, 0x40, 0x2, 0x46, 0x89, 0xab, + 0xcd, 0xee, 0x7f, 0xf7, 0x77, 0xef, 0xff, 0xfe, + 0x7, 0x76, 0xdd, 0xb3, 0x2b, 0xb5, 0x52, 0x70, + 0x48, 0x3, 0xc7, 0x30, 0x82, 0x2, 0xb5, 0xae, + 0x40, 0x1f, 0xf0, 0xa3, 0xde, 0xf6, 0x54, 0x32, + 0xa1, 0x8, 0x7, 0xf0, 0x8f, 0xe0, 0xf, 0xfe, + 0x72, 0xfa, 0x80, 0x7e, 0x15, 0xad, 0xbd, 0xa5, + 0x10, 0xf, 0xfe, 0x30, 0x9a, 0xbc, 0xd5, 0xef, + 0x7f, 0xdd, 0xcd, 0xdb, 0x33, 0xff, 0x89, 0xbb, + 0xf7, 0x77, 0x7f, 0xfd, 0x4a, 0x1, 0xc0, + + /* U+8FD0 "运" */ + 0x0, 0xff, 0xa, 0x29, 0x88, 0x7, 0xff, 0xfc, + 0x3, 0x12, 0xd7, 0xdd, 0x67, 0x64, 0xb1, 0x88, + 0x7, 0xff, 0x4, 0x48, 0xbf, 0xfc, 0x2, 0x1, + 0xff, 0xc3, 0x24, 0xe9, 0x41, 0x0, 0x1b, 0x4e, + 0x7e, 0x42, 0x8, 0x7, 0xe3, 0x8c, 0xdd, 0xff, + 0xef, 0x4a, 0x0, 0x7f, 0xf1, 0x5, 0x1e, 0xfb, + 0x69, 0x8c, 0x0, 0x26, 0xf7, 0xf4, 0xc4, 0x1, + 0xe1, 0x31, 0x1f, 0xfe, 0xf8, 0x7, 0xff, 0x28, + 0x96, 0x73, 0x65, 0x44, 0x0, 0x2d, 0xc2, 0x1, + 0xc7, 0x1b, 0xdd, 0xff, 0xde, 0xa5, 0x0, 0xff, + 0xe6, 0x93, 0x56, 0x55, 0x33, 0x60, 0xc0, 0x3f, + 0xfe, 0xc2, 0x6a, 0xa3, 0x10, 0xf, 0xc4, 0xaa, + 0x31, 0x0, 0xff, 0xfb, 0x1b, 0xee, 0x55, 0x33, + 0xb6, 0x9d, 0x8, 0x3, 0xff, 0xfc, 0x6b, 0x2e, + 0x82, 0x0, 0x25, 0x8b, 0xdd, 0x53, 0x98, 0x80, + 0x70, 0x91, 0x9f, 0xff, 0xac, 0x80, 0x3e, 0x25, + 0x8b, 0xed, 0xa7, 0x31, 0x0, 0x12, 0xc6, 0x62, + 0x98, 0x80, 0x9b, 0xb3, 0x3f, 0xfd, 0x5b, 0x68, + 0x1, 0xff, 0x12, 0xc6, 0x7d, 0xb9, 0x88, 0x4, + 0x64, 0x60, 0x13, 0x88, 0xff, 0xf1, 0x0, 0x3f, + 0x8, 0xff, 0xf4, 0x8c, 0x5c, 0x3, 0xff, 0x86, + 0x29, 0x19, 0x8b, 0xcc, 0x4a, 0x8, 0x13, 0xdf, + 0x77, 0xff, 0xb, 0xe0, 0xc0, 0x38, 0xe7, 0xfb, + 0xbf, 0xfa, 0x3b, 0x6, 0x1, 0xff, 0xc7, 0x24, + 0x31, 0x0, 0xff, 0xe4, 0xb, 0x51, 0x80, 0x64, + 0x97, 0x10, 0xf, 0xf0, 0xa2, 0xa0, 0x80, 0x7f, + 0xf2, 0x84, 0x7f, 0xf8, 0xc0, 0x1f, 0xfc, 0x71, + 0x6b, 0x30, 0x8, 0x5b, 0xd4, 0x40, 0x3f, 0x13, + 0x67, 0x5d, 0x5e, 0xb9, 0x0, 0x7f, 0xf1, 0x89, + 0xf7, 0xbb, 0xff, 0x89, 0x6a, 0x1, 0xff, 0xc5, + 0x16, 0xb3, 0x0, 0x85, 0xa9, 0x0, 0x3f, 0xc4, + 0xf0, 0xc2, 0x0, 0x38, 0xf8, 0x30, 0xf, 0xff, + 0x49, 0x35, 0x98, 0x4, 0x73, 0x46, 0x1, 0xff, + 0xc0, 0x14, 0x9a, 0x62, 0x0, 0x13, 0xf4, 0xa0, + 0x7, 0xff, 0x8, 0x9f, 0x3f, 0xff, 0xb6, 0xc, + 0x3, 0xff, 0x92, 0x75, 0x43, 0x0, 0x96, 0x58, + 0x80, 0x3f, 0xf8, 0x89, 0x3c, 0xe4, 0x0, 0x26, + 0xaa, 0x20, 0x80, 0x7f, 0xf8, 0x92, 0x98, 0x80, + 0x2, 0xd2, 0xa2, 0x1, 0xff, 0xc7, 0x38, 0xe7, + 0x30, 0x0, 0xad, 0x5a, 0x0, 0x7f, 0xf7, 0xc5, + 0xbd, 0x84, 0x0, 0x4d, 0xa2, 0x66, 0x44, 0x2a, + 0x99, 0x8e, 0xe8, 0x8a, 0x65, 0x54, 0xbb, 0x66, + 0x37, 0x5c, 0xc6, 0x1, 0x85, 0x66, 0xc, 0x3, + 0xff, 0xaa, 0x4d, 0x59, 0x8d, 0xdb, 0xe5, 0x0, + 0x31, 0x3d, 0xee, 0x62, 0xed, 0x54, 0x99, 0x44, + 0x1d, 0xe6, 0x62, 0xa9, 0x10, 0x66, 0x22, 0x84, + 0x3, 0xe2, 0x7f, 0x72, 0x0, 0xff, 0xe9, 0x98, + 0x9, 0x98, 0x8a, 0x10, 0xf, 0xfe, 0x0, 0x88, + 0x88, 0x66, 0x44, 0x2a, 0x99, 0x8e, 0xe8, 0x84, + 0xca, 0xa9, 0x76, 0xcc, 0x6e, 0xb2, 0xc, 0x2, + 0x39, 0x84, 0x0, 0xff, 0xe2, 0x8f, 0x88, 0x6, + 0x63, 0x10, 0x8, 0x53, 0xe6, 0x6a, 0xa5, 0xdb, + 0x31, 0xba, 0xee, 0x7f, 0xf7, 0x73, 0x75, 0x98, + 0xbb, 0x55, 0x26, 0x51, 0x7, 0x73, 0x31, 0x54, + 0x88, 0x33, 0x11, 0xd, 0xe5, 0x44, 0x0, 0x2f, + 0x86, 0x1, 0xff, 0xc1, 0x37, 0xbd, 0x72, 0x0, + 0xc7, 0x39, 0x6, 0x0, 0x24, 0x66, 0x95, 0x48, + 0x83, 0x31, 0x10, 0x44, 0x1, 0xff, 0xd5, 0x58, + 0xb9, 0xbe, 0xd8, 0x30, 0xf, 0xe2, 0x5a, 0xdc, + 0x84, 0x10, 0x0, 0x9a, 0x10, 0x0, 0x9f, 0x3a, + 0xe1, 0x48, 0x3, 0xff, 0xc4, 0x4a, 0xc8, 0x20, + 0x1f, 0x89, 0x67, 0x75, 0x4a, 0x40, 0x11, 0x35, + 0xfe, 0x5e, 0x5b, 0x98, 0x0, 0x51, 0xeb, 0x7f, + 0x72, 0xa1, 0xd9, 0x50, 0xcc, 0x44, 0x11, 0xc0, + 0x1f, 0xfc, 0x51, 0x1f, 0xc4, 0x5c, 0x67, 0x91, + 0x4, 0x20, 0x11, 0xdd, 0x98, 0x80, 0x21, 0x38, + 0xcc, 0x4a, 0x8, 0x0, 0x52, 0x33, 0x6e, 0x14, + 0x80, 0x22, 0x35, 0x78, 0x9a, 0xbc, 0xc6, 0xeb, + 0xbb, 0x7f, 0xff, 0xf1, 0x7b, 0xbf, 0x6e, 0xf6, + 0x66, 0xbf, 0x71, 0x0, 0x8e, 0x2d, 0x44, 0x4b, + 0x39, 0x87, 0x31, 0x0, 0xfe, 0x24, 0x7a, 0xdf, + 0xdc, 0xa9, 0x76, 0x43, 0x31, 0x10, 0x44, 0x1, + 0xff, 0xdb, 0x4d, 0x40, 0xe, 0x15, 0xbf, 0xf5, + 0x31, 0x0, 0x7f, 0xf1, 0xc8, 0xd5, 0xa2, 0x6f, + 0x31, 0xba, 0xee, 0x7f, 0xff, 0xbb, 0xbf, 0xf8, + 0x7f, 0xff, 0xfc, 0x2b, 0x61, 0x0, 0x0, + + /* U+9000 "退" */ + 0x0, 0xff, 0x8, 0xc0, 0x1f, 0xff, 0xf0, 0xf, + 0xc2, 0x6f, 0x7f, 0xdf, 0x90, 0x82, 0x1, 0xff, + 0xc6, 0x38, 0xde, 0xef, 0xfe, 0xd6, 0xc1, 0x80, + 0x7f, 0xf1, 0x9f, 0xdc, 0x40, 0x4d, 0xef, 0xed, + 0xcc, 0x40, 0x3f, 0xf8, 0x62, 0x62, 0x3f, 0xfd, + 0xa3, 0x10, 0xf, 0xfe, 0x30, 0xa4, 0x66, 0xca, + 0x90, 0x0, 0x52, 0x33, 0x12, 0x82, 0x1, 0xff, + 0xc5, 0x16, 0xbf, 0xff, 0xfe, 0x75, 0xb0, 0x7, + 0xff, 0x40, 0x9a, 0xb2, 0xdc, 0xc0, 0x22, 0x6b, + 0xc8, 0x41, 0x0, 0xff, 0xe1, 0x8b, 0x80, 0x7f, + 0xf4, 0x4, 0x3, 0xff, 0xa4, 0x29, 0x1b, 0x6c, + 0x40, 0x11, 0x3c, 0xc8, 0xc0, 0x3f, 0xf8, 0x42, + 0xe0, 0x1f, 0xfd, 0x1, 0x0, 0xff, 0xea, 0x8a, + 0x4f, 0xca, 0x1a, 0xd7, 0xc1, 0x80, 0x7f, 0xf0, + 0x45, 0xaf, 0xff, 0xff, 0x9d, 0x6c, 0x1, 0xff, + 0xd9, 0x26, 0xbc, 0xa5, 0x20, 0xf, 0xfe, 0x21, + 0x1a, 0xaf, 0xff, 0x38, 0xc8, 0x3, 0xff, 0xde, + 0x2b, 0xf5, 0x5f, 0xfc, 0xe8, 0x41, 0x0, 0xff, + 0xff, 0x80, 0x7f, 0xff, 0x44, 0xed, 0x57, 0xff, + 0x9d, 0x84, 0x20, 0x1f, 0xfc, 0xa1, 0x22, 0xff, + 0xe2, 0x88, 0x7, 0xff, 0x19, 0x1e, 0xab, 0xff, + 0x9c, 0xe8, 0x1, 0xff, 0xc9, 0x16, 0xdd, 0xff, + 0xe2, 0xe4, 0x18, 0x7, 0xff, 0x14, 0x95, 0x9b, + 0xf9, 0x8, 0x3, 0x9, 0xab, 0x37, 0xff, 0x9, + 0xc6, 0xdd, 0x48, 0x3, 0xff, 0x82, 0xe0, 0x1f, + 0xfd, 0x71, 0x59, 0x9f, 0xf5, 0xc2, 0x88, 0x0, + 0x43, 0x6e, 0x67, 0xfd, 0x78, 0x8, 0xee, 0x8a, + 0xdd, 0x41, 0x80, 0x7e, 0x16, 0xbf, 0xff, 0xf5, + 0xb0, 0x80, 0x7f, 0xf5, 0xd6, 0x58, 0x40, 0x7, + 0x30, 0x80, 0x1c, 0x4b, 0x19, 0x8a, 0x62, 0x0, + 0x12, 0xcf, 0xc1, 0x80, 0x7f, 0xfc, 0xe, 0xa4, + 0x80, 0x2, 0xb1, 0x5, 0x6a, 0xdd, 0x53, 0x98, + 0x81, 0xb5, 0x6e, 0xa9, 0x88, 0x3, 0xff, 0xe6, + 0x4d, 0x2c, 0x20, 0x3, 0x7a, 0x95, 0x20, 0x25, + 0x8c, 0xec, 0x95, 0x20, 0xf, 0xff, 0xc0, 0xa4, + 0xd3, 0x8, 0x7, 0x24, 0xfd, 0x39, 0x88, 0x7, + 0xff, 0xe8, 0x48, 0xd1, 0x42, 0xe9, 0x84, 0x2, + 0x49, 0xfa, 0x52, 0x0, 0xff, 0xf7, 0xb, 0x1a, + 0x2b, 0x44, 0xd6, 0x6f, 0x7f, 0x6e, 0x5d, 0x7b, + 0xa4, 0xec, 0xa0, 0x80, 0x9, 0x6b, 0x2d, 0xcc, + 0x40, 0x3f, 0xfb, 0xc2, 0x68, 0xaf, 0x4a, 0x20, + 0x10, 0xb5, 0x65, 0xd4, 0xbb, 0x29, 0x90, 0x80, + 0x4, 0x91, 0x70, 0x44, 0x6, 0xd7, 0x94, 0xa2, + 0x0, 0x14, 0x8c, 0xed, 0xb8, 0x63, 0x10, 0xf, + 0xfe, 0x48, 0x88, 0xc4, 0x2, 0x12, 0x51, 0x0, + 0x89, 0xba, 0xea, 0x18, 0xc0, 0x3e, 0x13, 0x45, + 0x78, 0x9b, 0xcd, 0xef, 0xed, 0xba, 0x74, 0x10, + 0xc, 0x4b, 0x5f, 0x6e, 0x82, 0x1, 0x12, 0x3c, + 0xe7, 0x5b, 0x8, 0x7, 0xff, 0xc, 0xda, 0xb2, + 0x94, 0x3, 0x92, 0x76, 0xc, 0x48, 0xd4, 0x8d, + 0x15, 0xe2, 0x6f, 0x37, 0xbf, 0xb2, 0xea, 0x1d, + 0x90, 0xc8, 0x40, 0x3f, 0xf8, 0x62, 0x91, 0x7d, + 0xb7, 0xa, 0x62, 0x7, 0x12, 0xc2, 0x1, 0xff, + 0x13, 0x56, 0xe4, 0xa9, 0x0, 0x46, 0xa8, 0x20, + 0x3, 0x7c, 0xfb, 0xcd, 0xfc, 0xba, 0x87, 0x64, + 0x32, 0x10, 0xf, 0xfe, 0xa1, 0x23, 0xd6, 0x77, + 0x35, 0xc8, 0x3, 0xf0, 0x9b, 0x56, 0xea, 0x54, + 0x80, 0x22, 0x59, 0xdc, 0xab, 0xfa, 0x52, 0x0, + 0xa, 0x3d, 0x6f, 0xf6, 0x5c, 0xbb, 0x31, 0x51, + 0x6, 0x45, 0x84, 0x7f, 0xf8, 0xc4, 0x5f, 0x8c, + 0xf9, 0x15, 0x48, 0xa8, 0x40, 0x1e, 0x2a, 0xb5, + 0x20, 0xc, 0x6f, 0x79, 0x4c, 0x40, 0x10, 0xad, + 0x6e, 0xa9, 0xd0, 0x80, 0x21, 0x34, 0x68, 0x99, + 0x55, 0xdb, 0x37, 0x77, 0x77, 0xff, 0x1b, 0x77, + 0xf6, 0x67, 0x5d, 0xf6, 0x88, 0x7, 0x8e, 0x20, + 0xa2, 0x25, 0x9d, 0xc8, 0x41, 0x0, 0xff, 0x12, + 0xc5, 0xef, 0x6d, 0xd4, 0x3a, 0xa1, 0x98, 0x88, + 0x20, 0x1f, 0xfd, 0xb1, 0x7d, 0x30, 0xf, 0x85, + 0x6f, 0xfd, 0x4c, 0x40, 0x1f, 0xfc, 0x71, 0x24, + 0x57, 0x8a, 0xbc, 0xc6, 0xeb, 0xbf, 0xff, 0xfb, + 0x7d, 0x28, 0x1, 0x80, + + /* U+901A "通" */ + 0x0, 0xfe, 0x23, 0x21, 0x0, 0xff, 0xff, 0x80, + 0x7c, 0x29, 0x19, 0x96, 0xe5, 0x31, 0x0, 0x7f, + 0xf1, 0xe, 0x7b, 0xff, 0xff, 0xbf, 0x92, 0xa4, + 0x1, 0xff, 0xc1, 0x16, 0xe6, 0x0, 0x89, 0x67, + 0x72, 0x50, 0x40, 0x3f, 0xf8, 0x22, 0x45, 0xff, + 0xd7, 0x10, 0xf, 0xc2, 0x0, 0x30, 0xf, 0xfe, + 0x11, 0x35, 0x7d, 0xb9, 0x80, 0x46, 0xd7, 0xf4, + 0xa2, 0x1, 0xfc, 0x71, 0x9b, 0xbf, 0xdf, 0x31, + 0xd9, 0xbb, 0xff, 0xc4, 0xf8, 0x51, 0x0, 0xe1, + 0x48, 0xcd, 0x95, 0x10, 0xf, 0xfe, 0x28, 0xa4, + 0x66, 0x21, 0x4, 0x0, 0x2b, 0x59, 0x28, 0x20, + 0x1f, 0xfc, 0x32, 0x6b, 0xcb, 0xac, 0xee, 0x6d, + 0x43, 0x21, 0x0, 0x62, 0x58, 0xbd, 0xd5, 0x39, + 0x89, 0x24, 0x5f, 0xdb, 0x98, 0x7, 0xff, 0x34, + 0xde, 0xf5, 0xcc, 0x2, 0x26, 0x96, 0x20, 0xf, + 0xfe, 0x11, 0x34, 0xd4, 0xba, 0x10, 0x92, 0xbc, + 0xde, 0xff, 0x75, 0xb4, 0xe8, 0x42, 0x8f, 0x5b, + 0xab, 0x74, 0x10, 0xf, 0xfe, 0x99, 0xc7, 0x4a, + 0x9b, 0x56, 0x39, 0x0, 0x7f, 0xf1, 0x9, 0x1a, + 0x2f, 0x7f, 0x6e, 0x59, 0x8, 0x4, 0x60, 0xc, + 0x49, 0x98, 0x42, 0x0, 0xff, 0xed, 0x13, 0x56, + 0x4a, 0x88, 0x7, 0xc4, 0xd5, 0x5f, 0xfc, 0x48, + 0xec, 0x31, 0x63, 0x20, 0xf, 0x12, 0xc5, 0xf6, + 0xe5, 0xd5, 0x7f, 0x31, 0x80, 0x7f, 0xf6, 0xc7, + 0xd1, 0x57, 0xff, 0x90, 0x86, 0x40, 0x1f, 0xf1, + 0x1a, 0x2a, 0xff, 0x7b, 0x80, 0x7f, 0xf8, 0x4a, + 0x37, 0xff, 0xff, 0x81, 0x6c, 0x20, 0x11, 0xc6, + 0xff, 0xff, 0xf0, 0x31, 0xc8, 0x3, 0xff, 0xce, + 0x20, 0x1f, 0xfc, 0x27, 0x0, 0xf8, 0xc0, 0x3f, + 0xf8, 0x3, 0xe0, 0x1f, 0xfc, 0x61, 0x22, 0xff, + 0xe3, 0x8, 0x7, 0xff, 0x8, 0x7c, 0x47, 0xff, + 0x82, 0xc6, 0x1, 0x87, 0xc8, 0x47, 0xff, 0x83, + 0xe0, 0x1f, 0xfc, 0x54, 0x8c, 0xdd, 0xff, 0xe2, + 0x64, 0x18, 0x7, 0xff, 0x4, 0x9f, 0x3b, 0xbf, + 0xf8, 0x14, 0xa2, 0x1, 0x13, 0xe7, 0x77, 0xff, + 0x3, 0x1c, 0x80, 0x3f, 0xfc, 0xe2, 0x6c, 0xef, + 0xff, 0xc0, 0x52, 0x0, 0xc2, 0x6c, 0xef, 0xff, + 0xc0, 0x53, 0x10, 0xf, 0xfe, 0x22, 0x4f, 0x7f, + 0xff, 0xb1, 0xc4, 0x3, 0xff, 0x8e, 0x57, 0x68, + 0x8f, 0xfe, 0x4, 0xa0, 0x80, 0x45, 0x71, 0x1f, + 0xfc, 0x2b, 0x30, 0xf, 0xff, 0xf8, 0x7, 0xff, + 0xd8, 0xe3, 0x7f, 0xff, 0xf8, 0x18, 0xc2, 0x1, + 0x1c, 0x77, 0xff, 0xff, 0x3, 0x60, 0x80, 0x3f, + 0xfd, 0x2, 0x67, 0xff, 0xc1, 0x21, 0x0, 0xe1, + 0x33, 0xff, 0xe0, 0x90, 0x80, 0x7f, 0xfa, 0xe, + 0x7b, 0x33, 0xff, 0x81, 0xce, 0x20, 0x11, 0xce, + 0xe6, 0x7f, 0xf0, 0x3e, 0x48, 0x3, 0xff, 0xfe, + 0x1, 0xff, 0xff, 0x0, 0xff, 0xe7, 0x8f, 0x80, + 0x7f, 0xf4, 0x49, 0x4c, 0x40, 0x21, 0x54, 0x20, + 0xf, 0xfe, 0xd0, 0xb6, 0x7f, 0xfd, 0x8e, 0x40, + 0x11, 0xf3, 0x0, 0x7f, 0xf1, 0x84, 0xdf, 0x31, + 0x28, 0x1, 0xc7, 0x1f, 0x28, 0x20, 0x10, 0xfa, + 0x2a, 0xc8, 0x46, 0x1, 0xff, 0xc0, 0x1f, 0x44, + 0xca, 0x40, 0x10, 0xbd, 0x20, 0x8f, 0x11, 0xd, + 0x15, 0xeb, 0x9c, 0x80, 0x3f, 0xf8, 0x64, 0xd5, + 0x98, 0x83, 0x10, 0x1, 0x2c, 0x39, 0x88, 0x13, + 0x5f, 0xe4, 0x20, 0x35, 0x56, 0x85, 0x10, 0xf, + 0xfe, 0x1, 0x35, 0x5d, 0xd2, 0xa2, 0x1, 0xb, + 0x5f, 0x77, 0x6e, 0xb2, 0xea, 0x14, 0x80, 0x3f, + 0xf8, 0x26, 0xd5, 0xba, 0x95, 0x20, 0x0, 0x9b, + 0xde, 0x53, 0xc6, 0x6c, 0x18, 0x80, 0x9b, 0xde, + 0xf6, 0xdc, 0xc3, 0x2a, 0x20, 0xc8, 0x82, 0x20, + 0xf, 0xfe, 0x58, 0x8f, 0x88, 0xb8, 0xce, 0x43, + 0x20, 0xe, 0x16, 0x89, 0x52, 0x0, 0x85, 0x67, + 0x31, 0x8, 0x20, 0x18, 0xdf, 0x3f, 0x21, 0x48, + 0x0, 0x24, 0x8c, 0xf3, 0x57, 0x6c, 0xdd, 0x77, + 0x3f, 0xff, 0xf9, 0x7d, 0xde, 0xdd, 0xec, 0xca, + 0xa8, 0xc0, 0x1c, 0x2d, 0x30, 0x42, 0x6f, 0x7f, + 0x4c, 0x40, 0x1f, 0xf0, 0x9b, 0xd6, 0xfe, 0xe5, + 0x43, 0xaa, 0x19, 0x88, 0x44, 0x1, 0xff, 0xdb, + 0x17, 0xd4, 0x0, 0xf8, 0x9f, 0x3f, 0x21, 0x4, + 0x3, 0xff, 0x90, 0x46, 0xaf, 0x15, 0x79, 0x8d, + 0xee, 0x7f, 0xff, 0xbb, 0xbf, 0xf8, 0x3f, 0xff, + 0xfc, 0x4e, 0x94, 0x0, 0xc0, + + /* U+91CC "里" */ + 0x0, 0xff, 0xb, 0x5f, 0xff, 0xff, 0xc3, 0xa4, + 0xc0, 0x3f, 0xf9, 0xe, 0x1, 0xff, 0xff, 0x0, + 0xff, 0xe0, 0x93, 0x5e, 0xef, 0xff, 0x1a, 0xdc, + 0x80, 0x32, 0x46, 0xef, 0xff, 0x1f, 0x1c, 0xc0, + 0x3f, 0xfa, 0xbc, 0xc4, 0x5f, 0xfc, 0x66, 0xf1, + 0x0, 0xe2, 0x2f, 0xfe, 0x4f, 0x80, 0x7f, 0xff, + 0xc0, 0x3f, 0xfb, 0xfe, 0x20, 0x1f, 0xfc, 0x7f, + 0x10, 0xe, 0x31, 0x0, 0xff, 0xe3, 0x18, 0x7, + 0xff, 0x58, 0x9f, 0x3f, 0xff, 0xf8, 0xda, 0xe4, + 0x1, 0x92, 0x7b, 0xff, 0xff, 0x8d, 0xb0, 0x60, + 0x1f, 0xfd, 0x61, 0x1f, 0xfe, 0x40, 0x7, 0xe1, + 0x1f, 0xfe, 0x40, 0x7, 0xff, 0x58, 0xa3, 0x3b, + 0xbf, 0xf8, 0xd9, 0x6, 0x1, 0x92, 0xbb, 0xbf, + 0xf8, 0xff, 0x6, 0x1, 0xff, 0xff, 0x0, 0xff, + 0xff, 0x80, 0x7f, 0xf9, 0x8f, 0x55, 0x7f, 0xf8, + 0xe9, 0xa2, 0x1, 0x9f, 0x15, 0x7f, 0xf8, 0xef, + 0xa2, 0x1, 0xff, 0xd4, 0x15, 0x8a, 0xaf, 0xfe, + 0x34, 0xa9, 0x0, 0x63, 0x6a, 0xaf, 0xfe, 0x3c, + 0xa9, 0x0, 0x7f, 0xf3, 0x8d, 0x4c, 0xff, 0xf9, + 0xc2, 0x1, 0xc2, 0x46, 0x7f, 0xfc, 0xe5, 0xe0, + 0xf, 0xfe, 0x38, 0xac, 0xe6, 0x7f, 0xf3, 0x7a, + 0x4c, 0x3, 0x2c, 0x66, 0x7f, 0xf3, 0xad, 0xcc, + 0x3, 0xff, 0xfe, 0x1, 0xff, 0xcf, 0x11, 0xff, + 0xe8, 0xf8, 0x80, 0x71, 0x88, 0xff, 0xf4, 0x80, + 0x3f, 0xf8, 0x6d, 0x7d, 0xdf, 0xfd, 0xc, 0x72, + 0x0, 0xc9, 0x3d, 0xdf, 0xfd, 0x1f, 0x93, 0x0, + 0xff, 0xff, 0x80, 0x7f, 0xf2, 0x9a, 0xbb, 0xbf, + 0xfa, 0x18, 0xe4, 0x1, 0x92, 0x37, 0xbb, 0xff, + 0xa1, 0xf0, 0x60, 0x1f, 0xfc, 0x21, 0x1f, 0xfe, + 0x97, 0x88, 0x7, 0x11, 0x4, 0x7f, 0xfa, 0x40, + 0x1f, 0xff, 0xf0, 0xf, 0xff, 0xf8, 0x7, 0xff, + 0x34, 0x5a, 0xff, 0xff, 0xfa, 0xdb, 0x6, 0x1, + 0x92, 0xbf, 0xff, 0xfa, 0xdb, 0x6, 0x1, 0xff, + 0xff, 0x0, 0xff, 0xb, 0xce, 0x67, 0xff, 0xff, + 0x31, 0xd2, 0x60, + + /* U+91CD "重" */ + 0x0, 0xff, 0xfc, 0x8, 0x7, 0xff, 0xb0, 0x44, + 0x44, 0x33, 0x91, 0xa, 0xa6, 0x63, 0xba, 0x26, + 0x55, 0x76, 0xcd, 0xd7, 0x7f, 0xbb, 0x60, 0xc0, + 0x3f, 0xf9, 0x2, 0x8f, 0x33, 0x55, 0x6b, 0xbd, + 0x99, 0xb7, 0x77, 0x75, 0xff, 0xfb, 0xb9, 0xba, + 0xcc, 0xae, 0xd5, 0x49, 0x94, 0x41, 0xd9, 0x8a, + 0x88, 0x32, 0x20, 0x88, 0x88, 0x27, 0x68, 0x20, + 0x1f, 0xfc, 0x61, 0x16, 0xb3, 0x4a, 0xb9, 0x13, + 0x19, 0xe2, 0x2c, 0x22, 0x1, 0x18, 0x84, 0x40, + 0x1c, 0x26, 0xac, 0xc7, 0x74, 0x42, 0x65, 0x54, + 0xbb, 0x66, 0x37, 0xb9, 0xfe, 0xed, 0xd6, 0x5c, + 0x20, 0x80, 0x7f, 0xf1, 0xd6, 0xf7, 0x31, 0xbb, + 0xbb, 0xbb, 0xff, 0xfb, 0xbb, 0x6e, 0x98, 0x80, + 0x32, 0x45, 0x4c, 0xa2, 0xe, 0xe6, 0x62, 0xa9, + 0x10, 0x66, 0x21, 0x10, 0x7, 0xff, 0x48, 0x48, + 0xcc, 0x45, 0x84, 0x78, 0x3, 0xff, 0xe4, 0x4d, + 0x59, 0x9f, 0xfd, 0x5e, 0x62, 0x0, 0xc9, 0x39, + 0x9f, 0xfd, 0x6b, 0x62, 0x0, 0x85, 0xcc, 0xff, + 0xfa, 0xa4, 0x20, 0x1c, 0x24, 0x67, 0xff, 0xd6, + 0x6e, 0x10, 0x1, 0x3e, 0xff, 0xff, 0xf5, 0x71, + 0xc4, 0x3, 0x2d, 0x7f, 0xff, 0xf5, 0xb6, 0xc, + 0x3, 0xff, 0xfe, 0x1, 0xff, 0xc8, 0x27, 0xdf, + 0xff, 0xfe, 0x66, 0x38, 0x80, 0x65, 0xaf, 0xff, + 0xfe, 0x75, 0xb0, 0x7, 0xff, 0x3c, 0x91, 0x9b, + 0xff, 0x8c, 0xa6, 0x1, 0xc4, 0x8c, 0xdf, 0xfc, + 0x75, 0x30, 0xf, 0xfe, 0xb3, 0xf4, 0xcf, 0xff, + 0x1d, 0x8, 0x3, 0x3f, 0xcc, 0xff, 0xf2, 0x10, + 0x80, 0x3f, 0xfa, 0xaf, 0xee, 0xff, 0xfc, 0x6a, + 0x33, 0x0, 0x66, 0xd7, 0x7f, 0xfe, 0x3d, 0x21, + 0x80, 0x7f, 0xf5, 0x49, 0x62, 0x3f, 0xf8, 0xcc, + 0x82, 0x1, 0x8d, 0xa2, 0x3f, 0xf8, 0xec, 0x62, + 0x1, 0xff, 0xd5, 0x4a, 0xff, 0xff, 0xe3, 0x63, + 0x88, 0x6, 0x5a, 0xff, 0xff, 0xe3, 0xe3, 0x8, + 0x7, 0xff, 0x54, 0x40, 0x3f, 0xf9, 0x26, 0x1, + 0xc2, 0x1, 0xff, 0xc8, 0x13, 0x0, 0xff, 0xea, + 0xbf, 0x44, 0x7f, 0xf1, 0xa5, 0x8, 0x3, 0x3f, + 0x44, 0x7f, 0xf1, 0xe5, 0x8, 0x3, 0xff, 0xaa, + 0x48, 0xef, 0xff, 0xc6, 0x53, 0x0, 0xe2, 0x57, + 0x7f, 0xfe, 0x3a, 0x98, 0x7, 0xff, 0x3c, 0x9f, + 0x7f, 0xff, 0xf9, 0x98, 0xe2, 0x1, 0x96, 0xbf, + 0xff, 0xf9, 0xd6, 0xc0, 0x1f, 0xfe, 0x53, 0x0, + 0xe1, 0x0, 0xff, 0xf1, 0x2c, 0xee, 0xff, 0xf4, + 0x18, 0x80, 0x32, 0xd6, 0xef, 0xff, 0x46, 0xd8, + 0x80, 0x3f, 0xf8, 0x64, 0x5f, 0xfd, 0x1, 0x10, + 0x7, 0x84, 0x8b, 0xff, 0xa2, 0xe2, 0x1, 0xff, + 0xc3, 0x5b, 0xff, 0xff, 0xe7, 0xe3, 0x90, 0x6, + 0x5b, 0xff, 0xff, 0xe8, 0xe3, 0x90, 0x7, 0xff, + 0xfc, 0x3, 0xff, 0x88, 0x2b, 0x37, 0x7f, 0xfd, + 0x5f, 0x52, 0x0, 0xc9, 0x17, 0x7f, 0xfd, 0x6a, + 0x62, 0x0, 0x19, 0x22, 0x7f, 0xf5, 0x8c, 0x80, + 0x38, 0x4d, 0x13, 0xff, 0xac, 0xfc, 0x20, 0x2, + 0x7c, 0xee, 0xff, 0xff, 0xf6, 0x41, 0x80, + + /* U+94AE "钮" */ + 0x0, 0xff, 0xe1, 0x8, 0xc0, 0x1f, 0xff, 0xf0, + 0xf, 0xf0, 0xb5, 0x77, 0x3f, 0xa9, 0x44, 0x3, + 0xff, 0xfe, 0x1, 0x85, 0xf5, 0x0, 0x23, 0xd7, + 0x10, 0xf, 0xfe, 0x22, 0xd7, 0xff, 0xff, 0x6e, + 0xd8, 0x40, 0x3f, 0xf8, 0xc2, 0xd4, 0x80, 0x11, + 0xd2, 0x90, 0x7, 0xff, 0xc0, 0x40, 0x3f, 0xf8, + 0xa4, 0xd4, 0x60, 0x18, 0xe7, 0xf7, 0x7f, 0xf8, + 0x54, 0xc2, 0xb, 0x5f, 0xff, 0xfc, 0xe, 0x94, + 0x0, 0xc4, 0xf9, 0xff, 0xfe, 0xd8, 0x30, 0xe, + 0x30, 0xf, 0xfe, 0x2a, 0x44, 0x90, 0x7, 0x84, + 0x8b, 0xff, 0x86, 0xc0, 0x1f, 0xfc, 0x53, 0x17, + 0x0, 0xc3, 0xc4, 0x1, 0xff, 0xc5, 0x10, 0xf, + 0xfe, 0x21, 0xc4, 0xa8, 0x80, 0x9, 0xab, 0x33, + 0xff, 0x8d, 0xee, 0x20, 0x1f, 0xfc, 0x31, 0xf2, + 0x0, 0xcc, 0x62, 0x1, 0xff, 0xd4, 0x38, 0xe7, + 0x20, 0x0, 0xac, 0xc9, 0x4c, 0xff, 0xf8, 0xe2, + 0x1, 0xff, 0xc4, 0x62, 0x10, 0x8, 0x49, 0x80, + 0x3f, 0xf8, 0x22, 0x1, 0xc2, 0x1, 0xff, 0xc0, + 0x2b, 0x52, 0x0, 0x8e, 0x20, 0x80, 0x1f, 0xfd, + 0x91, 0x31, 0x0, 0xc5, 0xe4, 0x1, 0xff, 0xc0, + 0xf0, 0xc, 0x26, 0x1, 0xff, 0xc1, 0x28, 0x95, + 0x13, 0x88, 0x20, 0x11, 0x7f, 0xf1, 0xc4, 0x40, + 0x1f, 0xfc, 0x53, 0xe6, 0x0, 0xcc, 0x42, 0x1, + 0xff, 0x30, 0x98, 0x4, 0x62, 0xe0, 0x1f, 0xfc, + 0x24, 0xbf, 0xd2, 0xed, 0xdf, 0xfe, 0x53, 0x88, + 0x7, 0xff, 0x11, 0x84, 0xc0, 0x21, 0x36, 0x0, + 0xff, 0xe0, 0x9, 0x88, 0x4, 0x3e, 0x20, 0x1f, + 0xfc, 0x31, 0x1c, 0x45, 0xf0, 0x88, 0x3, 0x84, + 0x8b, 0xe6, 0x30, 0xf, 0xfe, 0x29, 0x10, 0x40, + 0x22, 0xe1, 0x0, 0xff, 0xe0, 0x18, 0x80, 0x70, + 0x98, 0x7, 0xff, 0x19, 0x23, 0x77, 0xe6, 0x20, + 0x8, 0xa7, 0xf7, 0x7d, 0x4a, 0x20, 0x1f, 0xfc, + 0x32, 0x17, 0x0, 0xcc, 0x44, 0x0, 0xff, 0x88, + 0x5c, 0x3, 0x39, 0x88, 0x7, 0xff, 0x91, 0xaf, + 0xff, 0xfb, 0x60, 0xc0, 0x32, 0xd7, 0xff, 0xff, + 0x3, 0x60, 0xc0, 0x30, 0x80, 0x7f, 0xff, 0xc0, + 0x3f, 0xf8, 0x22, 0x62, 0x1, 0xff, 0xc4, 0x11, + 0xff, 0x9c, 0x4c, 0x3, 0x78, 0x8f, 0xfc, 0x1, + 0x3c, 0xee, 0xfe, 0xa6, 0x10, 0xc, 0x91, 0x9b, + 0xbf, 0xf5, 0x31, 0x0, 0x63, 0x16, 0x0, 0xff, + 0xe1, 0xad, 0xf7, 0x7f, 0xad, 0x84, 0x2, 0x27, + 0xce, 0xef, 0xeb, 0x50, 0x0, 0x91, 0x7f, 0x9, + 0x88, 0x4, 0x24, 0x86, 0x45, 0xff, 0x30, 0x80, + 0x70, 0xf1, 0x80, 0x7f, 0xf1, 0x44, 0x7f, 0xc0, + 0x1f, 0xc2, 0x3f, 0xc0, 0x20, 0x1f, 0xf0, 0x90, + 0x80, 0x62, 0xe2, 0x0, 0xff, 0xe0, 0x89, 0x80, + 0x67, 0x31, 0x0, 0xff, 0xe1, 0xad, 0x77, 0x7f, + 0xb1, 0xc8, 0x2, 0x28, 0xde, 0xef, 0xea, 0x40, + 0xf, 0xf8, 0xb9, 0x80, 0x33, 0x18, 0x80, 0x7f, + 0xf0, 0x1c, 0x4, 0x3, 0x10, 0x80, 0x7f, 0xfb, + 0xd8, 0x88, 0x1, 0x11, 0x18, 0x3, 0xff, 0x82, + 0x26, 0x1, 0x88, 0x5c, 0x3, 0xff, 0xdc, 0x24, + 0xc0, 0x19, 0xb8, 0x80, 0x3f, 0xf8, 0x26, 0x20, + 0x18, 0x7c, 0x80, 0x3f, 0xfd, 0xc5, 0xc4, 0x1, + 0x9, 0x10, 0x3, 0xff, 0x82, 0x42, 0xe0, 0x19, + 0x88, 0x40, 0x3f, 0xfb, 0xa2, 0x6d, 0x59, 0x28, + 0x1, 0xfe, 0x52, 0x10, 0x8, 0xb9, 0x40, 0x3f, + 0xf8, 0x23, 0xc4, 0x1, 0x9, 0x88, 0x7, 0xff, + 0x4c, 0xc0, 0x38, 0x4d, 0xa7, 0x3f, 0x25, 0x4d, + 0xf5, 0x0, 0x3f, 0x1f, 0x30, 0x6, 0x63, 0x10, + 0xf, 0xfe, 0xb, 0x18, 0x80, 0x46, 0x2c, 0x1, + 0xff, 0xd1, 0x72, 0x10, 0x8, 0xa3, 0x31, 0x2c, + 0x62, 0x4, 0x91, 0x50, 0x80, 0x1f, 0x98, 0x88, + 0x1, 0x11, 0x18, 0x3, 0xff, 0x82, 0x44, 0x70, + 0xc, 0xdc, 0x60, 0x1f, 0xfc, 0xf1, 0x5e, 0x40, + 0xf, 0xc2, 0x8f, 0x5b, 0xaa, 0x56, 0x32, 0x2f, + 0xcb, 0x8e, 0x1, 0x87, 0xc4, 0x8b, 0xff, 0x82, + 0x9a, 0x40, 0x1e, 0x22, 0xfe, 0x10, 0xf, 0xfe, + 0x21, 0x35, 0x5a, 0x88, 0x4, 0x26, 0xd3, 0x9d, + 0x70, 0xa4, 0x2f, 0x3b, 0xbf, 0xea, 0x62, 0x0, + 0xc7, 0x19, 0xbb, 0xff, 0xc1, 0x95, 0x0, 0xe4, + 0x9c, 0xdd, 0xfa, 0x10, 0x3, 0xff, 0x88, 0x64, + 0x43, 0x1, 0x47, 0xbf, 0xc9, 0x63, 0x0, 0xff, + 0xff, 0x80, 0xa4, 0xfe, 0xfd, 0xc2, 0x8, 0x7, + 0xf0, 0xb5, 0xff, 0xff, 0xf9, 0xa9, 0x40, 0x20, + + /* U+95F4 "间" */ + 0x0, 0xf0, 0x9a, 0x18, 0x80, 0x7f, 0xfe, 0x85, + 0xaf, 0xf2, 0xf3, 0x12, 0x82, 0x1, 0xff, 0x9, + 0x17, 0xff, 0x94, 0x40, 0x38, 0x5a, 0x64, 0x82, + 0x4, 0xd7, 0x92, 0x82, 0x1, 0xf0, 0xbc, 0xee, + 0xff, 0xf8, 0xf2, 0x10, 0x3, 0xc4, 0xf7, 0xb0, + 0x60, 0x2, 0x6a, 0xa3, 0x10, 0x7, 0x8c, 0x47, + 0xff, 0xbc, 0x1, 0xff, 0xc6, 0x37, 0xda, 0x51, + 0x1, 0x48, 0xb4, 0x0, 0xc2, 0xb5, 0xdd, 0xff, + 0xdd, 0xa5, 0x0, 0xff, 0xe3, 0xa, 0xde, 0xd5, + 0x33, 0xe5, 0x0, 0x3f, 0xfd, 0xe2, 0xb1, 0x55, + 0xa1, 0x4, 0x4, 0xd5, 0x46, 0x20, 0x1f, 0xff, + 0x13, 0x25, 0x5e, 0x42, 0x0, 0xff, 0xff, 0x80, + 0x7f, 0xf0, 0x49, 0xab, 0x33, 0xff, 0xa9, 0x6c, + 0x40, 0x1f, 0xfd, 0xd1, 0x73, 0x3f, 0xfe, 0xa3, + 0x70, 0x7, 0xff, 0x8c, 0x9f, 0x3f, 0xff, 0xf9, + 0x16, 0xc2, 0x1, 0xff, 0xea, 0x10, 0xf, 0xfe, + 0x43, 0x88, 0x7, 0xff, 0xfc, 0x3, 0xff, 0xfe, + 0x1, 0xff, 0xef, 0x26, 0xfc, 0xcf, 0xfe, 0x47, + 0x30, 0x80, 0x7f, 0xfa, 0x44, 0x8c, 0xff, 0xf9, + 0x4, 0x20, 0x1f, 0xfe, 0x92, 0x7c, 0xff, 0xff, + 0xe4, 0x5b, 0x8, 0x7, 0xff, 0xa8, 0x40, 0x3f, + 0xf9, 0xe, 0x20, 0x1f, 0xff, 0xf0, 0xf, 0xff, + 0xf8, 0x7, 0xff, 0xbc, 0x9b, 0x37, 0x7f, 0xf9, + 0x2e, 0x20, 0x1f, 0xfe, 0x91, 0x11, 0x17, 0xff, + 0x20, 0x40, 0x3f, 0xfc, 0x84, 0xfb, 0xff, 0xff, + 0xd4, 0xd8, 0x20, 0xf, 0xff, 0xf8, 0x7, 0xff, + 0xfc, 0x3, 0xf0, 0x8c, 0x1, 0x9, 0x11, 0x80, + 0x3c, 0xe0, 0x1f, 0xff, 0x5, 0xbe, 0xe7, 0xfd, + 0xdb, 0x6, 0x1, 0x8b, 0xc8, 0x3, 0xff, 0xe0, + 0xbe, 0xa0, 0x1e, 0x12, 0x35, 0x7a, 0xe6, 0x10, + + /* U+9664 "除" */ + 0x0, 0xff, 0xf1, 0x93, 0xe7, 0x76, 0xdb, 0x62, + 0x0, 0xff, 0xe7, 0xa4, 0xf7, 0xff, 0xff, 0x1f, + 0xb6, 0x58, 0xc0, 0x3f, 0xf8, 0xa4, 0xfd, 0x6, + 0x23, 0x89, 0x27, 0xa0, 0xc0, 0x3f, 0xfc, 0x62, + 0x4d, 0xaa, 0x20, 0x1f, 0xfc, 0x22, 0x7e, 0x83, + 0x0, 0x1c, 0x5d, 0x20, 0x81, 0xbf, 0x4a, 0x8, + 0x7, 0xff, 0x40, 0xe3, 0x7b, 0xbf, 0x5b, 0x8, + 0x6, 0x4e, 0x61, 0x0, 0xff, 0x85, 0x6b, 0x20, + 0xc0, 0x7, 0x1c, 0xe8, 0xb5, 0x45, 0x10, 0x26, + 0xbc, 0x83, 0x10, 0xf, 0xfe, 0x6b, 0x89, 0x88, + 0xfc, 0x58, 0xe2, 0x1, 0x2f, 0x28, 0x7, 0xfc, + 0x71, 0xb4, 0xa2, 0x2, 0x95, 0xae, 0x40, 0x10, + 0xa5, 0x6b, 0x98, 0x0, 0x9f, 0x35, 0xcc, 0x3, + 0xff, 0xa8, 0x76, 0xc2, 0x1, 0x2f, 0xa8, 0x7, + 0xe1, 0x48, 0xcc, 0x39, 0x80, 0xd, 0xf6, 0xd4, + 0x40, 0x3f, 0x1c, 0x6d, 0xb1, 0x0, 0xe, 0x33, + 0x65, 0x44, 0x3, 0xff, 0x9e, 0x76, 0xc2, 0x0, + 0x15, 0xe5, 0x0, 0xf0, 0xac, 0xe5, 0xb9, 0x80, + 0x9, 0xaf, 0x60, 0xc0, 0x3f, 0xf8, 0x22, 0x93, + 0x94, 0xa4, 0x0, 0x26, 0xaf, 0xb7, 0x31, 0x0, + 0xff, 0xe5, 0x25, 0x30, 0x80, 0x5, 0xf9, 0x0, + 0x22, 0x59, 0xcf, 0xa6, 0x20, 0x1, 0x35, 0xe4, + 0xa0, 0x80, 0x7f, 0xf1, 0x85, 0x6b, 0x2d, 0x8c, + 0x0, 0x29, 0x19, 0xf7, 0xa, 0x40, 0x1f, 0xfc, + 0x54, 0xd7, 0x10, 0x1, 0x35, 0x20, 0xa4, 0xee, + 0xa9, 0x8c, 0x40, 0x4d, 0xab, 0xad, 0x8c, 0x8b, + 0xff, 0x98, 0x6d, 0x7f, 0x4e, 0x82, 0x0, 0x14, + 0x7a, 0xca, 0x50, 0xf, 0xfe, 0x12, 0xf3, 0x8, + 0x0, 0xaa, 0x86, 0x2, 0xbe, 0xc0, 0x1, 0x37, + 0xbf, 0xdf, 0xec, 0xdd, 0xff, 0xe9, 0x64, 0xf5, + 0x7e, 0x42, 0x8, 0x1c, 0xc2, 0x80, 0x7f, 0xf0, + 0x44, 0x0, 0x20, 0x11, 0x62, 0x10, 0x0, 0x5a, + 0xb3, 0x1f, 0x90, 0x82, 0x22, 0x21, 0x9f, 0xff, + 0x0, 0x80, 0x38, 0x48, 0xcf, 0xff, 0x80, 0xa6, + 0x2, 0x6f, 0x7f, 0xda, 0xe4, 0x1, 0xff, 0xc2, + 0x15, 0xad, 0x83, 0x0, 0x24, 0xfc, 0x18, 0x0, + 0x4c, 0xc2, 0x1, 0xc9, 0x39, 0x9f, 0xf6, 0xd1, + 0x80, 0x64, 0x9c, 0xcf, 0xfe, 0x4, 0xa8, 0x80, + 0x61, 0x18, 0x3, 0xff, 0x8e, 0x6f, 0xd2, 0x60, + 0x2, 0x7f, 0x61, 0x0, 0xff, 0xff, 0x13, 0x7b, + 0x90, 0x0, 0xe2, 0x4c, 0x3, 0xff, 0xfe, 0x76, + 0xa4, 0x0, 0x15, 0xb2, 0x16, 0xbe, 0xef, 0xfe, + 0x2f, 0xc1, 0x80, 0x65, 0xae, 0xef, 0xfe, 0x3c, + 0xa8, 0x7, 0xff, 0x34, 0xf5, 0x80, 0x22, 0x23, + 0x80, 0x1c, 0x47, 0xff, 0x8c, 0x1, 0xf0, 0x8f, + 0xff, 0x20, 0xc0, 0x3f, 0xf9, 0xe6, 0x1, 0xf0, + 0xb6, 0x7f, 0xff, 0xf1, 0x76, 0xc, 0x3, 0x2d, + 0x7f, 0xff, 0xf1, 0xe9, 0x40, 0x3f, 0xf9, 0x82, + 0xb8, 0xa0, 0x11, 0x11, 0xc0, 0x3c, 0x24, 0x66, + 0x20, 0xf, 0xe3, 0x0, 0xf8, 0x40, 0x3f, 0x12, + 0x20, 0x80, 0x3f, 0xf9, 0xa9, 0x19, 0xbb, 0xbb, + 0x94, 0xa2, 0x0, 0x25, 0xb2, 0x0, 0xe3, 0x9f, + 0xcc, 0x6f, 0x52, 0x80, 0x7f, 0xf2, 0xe, 0x37, + 0x57, 0x6f, 0x83, 0x0, 0xff, 0xe5, 0xa6, 0xb9, + 0x16, 0x10, 0x1, 0x23, 0x57, 0xc1, 0x80, 0x61, + 0x58, 0x72, 0x0, 0x13, 0x4a, 0x80, 0x7f, 0xf2, + 0xe, 0x61, 0x4, 0x9, 0xf6, 0x50, 0x3, 0xff, + 0x94, 0xb5, 0xdd, 0xdf, 0xed, 0xb9, 0x52, 0x0, + 0xe3, 0x98, 0x40, 0x9, 0x62, 0x4c, 0x3, 0xff, + 0x94, 0x2b, 0x56, 0x82, 0x2, 0xd5, 0x45, 0x10, + 0xf, 0xfe, 0x40, 0x8f, 0x80, 0x3f, 0xc6, 0xfe, + 0xe4, 0x0, 0x27, 0x85, 0x10, 0xf, 0xfe, 0x68, + 0xad, 0x5a, 0x8, 0xa, 0xdc, 0x20, 0x7, 0xff, + 0x50, 0x56, 0xb6, 0xc, 0x0, 0x4d, 0x30, 0x40, + 0x1f, 0xfd, 0x11, 0x5a, 0x84, 0x0, 0xb, 0x4c, + 0x18, 0x7, 0xff, 0x40, 0x9f, 0x69, 0x44, 0x0, + 0x4f, 0xd2, 0x80, 0x1f, 0xfd, 0x51, 0x69, 0x72, + 0x0, 0x13, 0xc3, 0x8, 0x7, 0xff, 0x38, 0xcc, + 0xa6, 0x2, 0x93, 0xf0, 0x60, 0x1e, 0x11, 0x0, + 0x70, 0x97, 0x88, 0x6, 0x30, 0xf, 0xfe, 0x19, + 0x4c, 0x29, 0x1b, 0x6a, 0x80, 0x7f, 0xf3, 0xc5, + 0x27, 0x3b, 0xed, 0x88, 0x3, 0xc2, 0xfb, 0xdf, + 0xfd, 0xd8, 0xe4, 0x1, 0x1f, 0x28, 0x7, 0xff, + 0xc, 0x56, 0xb7, 0x25, 0x8c, 0x40, 0x3f, 0xfa, + 0x42, 0x20, 0xf, 0xe1, 0x6a, 0x41, 0x1f, 0x11, + 0xa2, 0xbd, 0x73, 0x88, 0x7, 0xff, 0x3c, + + /* U+969C "障" */ + 0x0, 0xff, 0xff, 0x80, 0x7f, 0xfb, 0x92, 0x7b, + 0xfe, 0xe8, 0x30, 0xf, 0xfe, 0x79, 0x35, 0x66, + 0x7f, 0xf2, 0x2a, 0x14, 0x80, 0x3f, 0xfd, 0xa3, + 0xce, 0x67, 0xff, 0xc8, 0x57, 0x8a, 0x57, 0xbd, + 0xdf, 0xfe, 0x35, 0x30, 0x80, 0x42, 0xfb, 0xbf, + 0xfc, 0x8b, 0x61, 0x0, 0xff, 0x89, 0xaa, 0xef, + 0xf5, 0x31, 0x80, 0x62, 0x5a, 0x70, 0x72, 0x2f, + 0xfe, 0x30, 0x80, 0x7c, 0x24, 0x5f, 0xfc, 0x77, + 0x0, 0xff, 0xe0, 0x8f, 0x3a, 0x27, 0xe0, 0x33, + 0x0, 0x47, 0x54, 0x22, 0x3e, 0x7f, 0xfa, 0xd8, + 0x40, 0x22, 0x8d, 0xff, 0xff, 0xe1, 0xe3, 0x90, + 0x4, 0x2d, 0x9f, 0xff, 0x63, 0x8, 0x7, 0xff, + 0x25, 0x3d, 0x40, 0x23, 0xb6, 0x20, 0xf, 0xf2, + 0x6b, 0x88, 0x0, 0xaa, 0x86, 0x1, 0xff, 0xc1, + 0x4a, 0x62, 0x0, 0x1c, 0xd9, 0x80, 0x7f, 0xf4, + 0x93, 0x50, 0x2, 0x4a, 0x61, 0x1f, 0xfe, 0xb, + 0x7a, 0x0, 0x44, 0x88, 0x31, 0x1f, 0xf1, 0x2f, + 0x30, 0x80, 0x12, 0x94, 0xc4, 0x7f, 0xe0, 0xf, + 0xfe, 0x3a, 0x6b, 0x88, 0x1, 0x79, 0x81, 0xab, + 0xbb, 0xfe, 0xd9, 0x50, 0xc, 0x71, 0x9d, 0xdf, + 0xed, 0xa5, 0x0, 0xc9, 0x3b, 0xdd, 0xff, 0x64, + 0x10, 0x7, 0xff, 0x11, 0x39, 0xc4, 0x5, 0x79, + 0x40, 0x48, 0xd1, 0x3f, 0xfd, 0x3a, 0x60, 0x1f, + 0xfc, 0x34, 0xd5, 0x10, 0x17, 0xe4, 0x0, 0x92, + 0x2e, 0xff, 0xfd, 0x12, 0xa2, 0x1, 0xff, 0xc3, + 0x5c, 0x41, 0x1, 0x7f, 0x51, 0x0, 0xfc, 0x71, + 0xbf, 0xff, 0xfd, 0xbe, 0x93, 0x0, 0xff, 0xe4, + 0x8a, 0xd5, 0xa8, 0x89, 0x2a, 0x8c, 0x20, 0x1f, + 0xfc, 0x1, 0x36, 0x77, 0xff, 0xe7, 0xa9, 0x88, + 0x7, 0xff, 0x44, 0x56, 0x24, 0xc0, 0x9, 0x12, + 0x60, 0x1f, 0xf1, 0x5d, 0xa2, 0x3f, 0xfa, 0x16, + 0x60, 0x1f, 0xfd, 0x32, 0x6a, 0x40, 0x0, 0xbc, + 0xa8, 0x7, 0xf8, 0xb5, 0x15, 0x7f, 0xfa, 0x1a, + 0x60, 0x1f, 0xfd, 0x41, 0x7d, 0x30, 0x9, 0x30, + 0xc0, 0x3f, 0x85, 0x66, 0xab, 0xff, 0x9f, 0xa, + 0x20, 0x1f, 0xfd, 0x51, 0x26, 0x0, 0x84, 0x98, + 0x3, 0xf8, 0x9f, 0x3b, 0xbf, 0xf9, 0xf8, 0xe4, + 0x1, 0xff, 0xd6, 0x10, 0xf, 0x18, 0x80, 0x7e, + 0x1f, 0x11, 0xff, 0xe8, 0xf8, 0x7, 0xff, 0x58, + 0xb5, 0xc0, 0x31, 0x10, 0x40, 0x3f, 0x1c, 0x6f, + 0xff, 0xff, 0x3f, 0x60, 0x80, 0x3f, 0xf9, 0xa6, + 0xf5, 0x5a, 0xf3, 0xe, 0x40, 0x12, 0x7a, 0x80, + 0x45, 0x8a, 0xcd, 0xff, 0xc3, 0x42, 0x0, 0xe2, + 0x56, 0x6f, 0xfe, 0x26, 0x8, 0x7, 0xff, 0x1c, + 0xce, 0x45, 0x52, 0x18, 0x80, 0x47, 0x12, 0xc2, + 0x1, 0xa, 0x44, 0xcf, 0xff, 0xf, 0xd0, 0x40, + 0x21, 0x59, 0x9f, 0xfe, 0x24, 0x29, 0x0, 0x7f, + 0xf2, 0x16, 0xae, 0x67, 0x55, 0xef, 0xe3, 0x90, + 0x7, 0xff, 0x34, 0x40, 0x30, 0xb8, 0x7, 0xff, + 0x68, 0x4d, 0x59, 0xb2, 0xa1, 0x0, 0x12, 0xbf, + 0xff, 0xf9, 0x76, 0xc0, 0x18, 0x5a, 0xff, 0xff, + 0xf9, 0x54, 0xa0, 0x1f, 0xfc, 0xe7, 0x23, 0x3f, + 0xfe, 0x59, 0x8, 0x7, 0x9, 0x19, 0xff, 0xf2, + 0x88, 0x40, 0x3f, 0xf9, 0xc7, 0x19, 0x9f, 0xfc, + 0xb9, 0x71, 0x0, 0x85, 0xbb, 0x33, 0xff, 0x95, + 0x8, 0x1, 0xff, 0xff, 0x0, 0xff, 0xff, 0x80, + 0x7f, 0xff, 0xc0, 0x3f, 0xfa, 0x47, 0x1b, 0xff, + 0x63, 0x90, 0x7, 0xff, 0x6d, 0x27, 0xbf, 0xee, + 0x83, 0x0, 0xff, 0xe7, 0x0, + + /* U+9762 "面" */ + 0x0, 0x84, 0x7f, 0xff, 0xe2, 0x30, 0x6, 0x27, + 0xde, 0xef, 0xff, 0xff, 0x7c, 0x18, 0x7, 0xff, + 0xfc, 0x3, 0xfe, 0x27, 0xcf, 0xff, 0xfe, 0x9f, + 0x41, 0x80, 0x71, 0xc6, 0xff, 0xff, 0xf5, 0xba, + 0xc, 0x3, 0xff, 0xb0, 0x9a, 0x60, 0x18, 0xad, + 0x48, 0x3, 0xff, 0xf8, 0x7a, 0x80, 0x18, 0x95, + 0x44, 0x1, 0xff, 0xe2, 0x11, 0xff, 0xe7, 0x1a, + 0x20, 0x40, 0x21, 0x4d, 0x31, 0x1f, 0xfe, 0xa8, + 0x7, 0xff, 0x0, 0x5f, 0x7b, 0xbf, 0xf9, 0xb9, + 0x6, 0x1, 0x85, 0xab, 0xbb, 0xff, 0xab, 0xae, + 0x20, 0x1f, 0xff, 0xf0, 0xf, 0xfe, 0x72, 0x57, + 0xff, 0xfd, 0x48, 0x1, 0x96, 0xbf, 0xff, 0xf8, + 0xb4, 0xa0, 0x19, 0x2b, 0xff, 0xfe, 0xe8, 0x30, + 0xf, 0xff, 0xf8, 0x7, 0xff, 0xfc, 0x3, 0xff, + 0xe2, 0xb7, 0xbb, 0xff, 0xc5, 0xb5, 0x0, 0xff, + 0xfa, 0x9, 0x17, 0xff, 0x14, 0x40, 0x3f, 0xfe, + 0x8b, 0x5f, 0xff, 0xfc, 0x5a, 0x50, 0xf, 0xff, + 0xf8, 0x7, 0xff, 0xfc, 0x3, 0xff, 0xfe, 0x1, + 0xe4, 0x8c, 0xcf, 0xfe, 0x2c, 0x20, 0x7, 0xff, + 0xcc, 0x48, 0xcf, 0xff, 0x8a, 0x42, 0x1, 0xff, + 0xf3, 0x5a, 0xff, 0xff, 0xe2, 0xd2, 0x80, 0x7f, + 0xff, 0xc0, 0x3f, 0xff, 0xe0, 0x1f, 0xff, 0x32, + 0x20, 0x8f, 0xf1, 0x10, 0x3, 0x84, 0xc4, 0x7f, + 0xf8, 0xa6, 0x20, 0x19, 0xc8, 0x82, 0x3f, 0xe2, + 0xf0, 0xf, 0xfe, 0x6a, 0x46, 0xf7, 0x7f, 0x6c, + 0x20, 0x6, 0x49, 0xee, 0xff, 0xe2, 0xca, 0x0, + 0x63, 0x8d, 0xee, 0xff, 0x63, 0x98, 0x7, 0xff, + 0x3c, 0x47, 0xff, 0xd4, 0x1, 0xff, 0xcf, 0x4a, + 0xfe, 0xef, 0xff, 0x5c, 0x18, 0x7, 0xff, 0x0, + + /* U+9875 "页" */ + 0x0, 0x84, 0x8c, 0xff, 0xff, 0xe4, 0x1, 0xe4, + 0x8c, 0xcf, 0xff, 0xf6, 0xda, 0x0, 0x70, 0x99, + 0x17, 0xff, 0x4c, 0x44, 0x1, 0xf0, 0x91, 0x7f, + 0xf5, 0x85, 0xc0, 0x39, 0x27, 0x77, 0xff, 0xa5, + 0x92, 0x40, 0x1c, 0xb5, 0xfb, 0xbf, 0xfd, 0x5c, + 0x83, 0x0, 0xff, 0xec, 0x1c, 0xd1, 0x80, 0x45, + 0x10, 0x51, 0x0, 0xff, 0xfd, 0xa4, 0xb1, 0x0, + 0x5, 0x61, 0xc8, 0x3, 0xff, 0xce, 0x2d, 0x7f, + 0xff, 0xfc, 0x7b, 0x51, 0x0, 0x85, 0x6b, 0xff, + 0xff, 0xa3, 0x6c, 0x20, 0x1f, 0xff, 0xf0, 0xf, + 0x38, 0x7, 0xff, 0x48, 0x9f, 0x3b, 0xbf, 0xfb, + 0xf4, 0xa2, 0x1, 0xff, 0xd7, 0x1f, 0x11, 0xff, + 0xf0, 0x31, 0x80, 0x7f, 0xfb, 0x16, 0xff, 0xf6, + 0xc1, 0x80, 0x7f, 0xff, 0xc0, 0x3f, 0xff, 0xe0, + 0x1f, 0xff, 0xf0, 0xf, 0xff, 0xf8, 0x7, 0xff, + 0xfc, 0x3, 0xff, 0xae, 0x26, 0x1, 0xff, 0xff, + 0x0, 0xf8, 0xb9, 0x40, 0x30, 0xf8, 0x80, 0x7f, + 0xff, 0x98, 0xc4, 0x3, 0x31, 0x90, 0x7, 0xff, + 0xf0, 0x5a, 0x50, 0x3, 0x26, 0x28, 0x7, 0xff, + 0xec, 0x9a, 0xa0, 0xc0, 0x21, 0x6f, 0x61, 0x3, + 0x7c, 0xdb, 0x96, 0x41, 0x0, 0xfe, 0x13, 0x11, + 0xce, 0x1, 0xff, 0xcb, 0x16, 0xbf, 0xfd, 0x8e, + 0x40, 0x1f, 0x84, 0xde, 0xf2, 0x50, 0x40, 0x2, + 0xb5, 0x8, 0x2, 0xb3, 0x23, 0x24, 0x69, 0xbe, + 0xe6, 0x4b, 0xa1, 0x0, 0xe, 0x37, 0xbb, 0x5b, + 0x8, 0x7, 0xff, 0x58, 0x4d, 0x62, 0xff, 0x21, + 0x4, 0x0, 0x29, 0x39, 0x48, 0x20, 0x1, 0x5a, + 0xed, 0xb8, 0x63, 0x10, 0x13, 0x68, 0xbd, 0xec, + 0xa7, 0x42, 0x0, 0xff, 0xea, 0x89, 0xa3, 0x45, + 0xef, 0x65, 0x3a, 0x8, 0x0, 0x4d, 0xef, 0xed, + 0x88, 0x3, 0xf8, 0x91, 0xe7, 0x3b, 0x6e, 0x14, + 0xc4, 0x4, 0xd6, 0x2f, 0x7b, 0x25, 0x8c, 0x40, + 0x3f, 0xf8, 0xa2, 0x68, 0xad, 0x13, 0x7b, 0xdc, + 0xcb, 0x97, 0x42, 0x0, 0x89, 0x1e, 0xb7, 0xb2, + 0x10, 0x40, 0x3f, 0xf8, 0xc4, 0x8f, 0x59, 0xdb, + 0x4e, 0x84, 0x0, 0x13, 0x69, 0xcf, 0xc9, 0x63, + 0x0, 0xf8, 0x56, 0xb7, 0xfd, 0xd9, 0x75, 0x2e, + 0xc8, 0x42, 0x0, 0x13, 0x57, 0x9b, 0xde, 0xdb, + 0x85, 0x20, 0xf, 0xfe, 0x89, 0x2c, 0x5e, 0xea, + 0xe1, 0x8, 0x0, 0x26, 0xd3, 0x9b, 0x26, 0x1, + 0x85, 0x62, 0x8c, 0x2, 0x23, 0x46, 0x79, 0xab, + 0xde, 0xe6, 0x54, 0x32, 0x10, 0x80, 0x7f, 0xf6, + 0xc9, 0x1e, 0xf7, 0x54, 0xc6, 0x22, 0x4b, 0x83, + 0x0, 0xf1, 0x3e, 0x77, 0xfb, 0x72, 0xe6, 0x19, + 0x50, 0x84, 0x3, 0xff, 0xd0, 0x4b, 0x39, 0xfe, + 0xb6, 0x10, 0xc, + + /* U+FF0C "," */ + 0x0, 0xff, 0xe9, 0x9b, 0xde, 0xff, 0xdd, 0xb6, + 0xe6, 0x1, 0xfe, 0x27, 0xf8, 0x42, 0x0, 0x84, + 0x92, 0x3a, 0xc, 0x3, 0xfb, 0xc4, 0x3, 0xfc, + 0x48, 0x81, 0x0, 0xf8, 0xaa, 0xd4, 0x40, 0x3f, + 0x87, 0xc8, 0x3, 0xf1, 0x35, 0x77, 0x37, 0x21, + 0x0, 0x33, 0x71, 0x80, 0x7f, 0xf0, 0x4, 0x83, + 0xd8, 0x2, 0x23, 0x50, 0xf, 0xfe, 0x8, 0xb4, + 0x39, 0x0, 0xe, 0xe4, 0xc0, 0x3f, 0xc4, 0xd5, + 0x92, 0x80, 0x3, 0x7f, 0x61, 0x0, 0xf0, 0xa4, + 0xe7, 0x6c, 0xa9, 0x1, 0xbe, 0x6c, 0x18, 0x7, + 0xe1, 0x0, 0x10, 0x1a, 0xc5, 0xee, 0x41, 0x88, + 0x7, 0xfc, 0x93, 0xdc, 0xca, 0x74, 0x20, 0xf, + 0xfe, 0x0 +}; + + +/*--------------------- + * GLYPH DESCRIPTION + *--------------------*/ + +static const lv_font_fmt_txt_glyph_dsc_t glyph_dsc[] = { + {.bitmap_index = 0, .adv_w = 0, .box_w = 0, .box_h = 0, .ofs_x = 0, .ofs_y = 0} /* id = 0 reserved */, + {.bitmap_index = 0, .adv_w = 108, .box_w = 6, .box_h = 0, .ofs_x = -1, .ofs_y = 0}, + {.bitmap_index = 0, .adv_w = 155, .box_w = 18, .box_h = 22, .ofs_x = 2, .ofs_y = 0}, + {.bitmap_index = 123, .adv_w = 228, .box_w = 30, .box_h = 9, .ofs_x = 2, .ofs_y = 15}, + {.bitmap_index = 220, .adv_w = 266, .box_w = 48, .box_h = 22, .ofs_x = 0, .ofs_y = 0}, + {.bitmap_index = 531, .adv_w = 266, .box_w = 42, .box_h = 29, .ofs_x = 1, .ofs_y = -4}, + {.bitmap_index = 858, .adv_w = 442, .box_w = 81, .box_h = 22, .ofs_x = 0, .ofs_y = 0}, + {.bitmap_index = 1423, .adv_w = 326, .box_w = 63, .box_h = 22, .ofs_x = 0, .ofs_y = 0}, + {.bitmap_index = 1859, .adv_w = 133, .box_w = 12, .box_h = 9, .ofs_x = 2, .ofs_y = 15}, + {.bitmap_index = 1903, .adv_w = 162, .box_w = 24, .box_h = 32, .ofs_x = 2, .ofs_y = -7}, + {.bitmap_index = 2158, .adv_w = 162, .box_w = 24, .box_h = 32, .ofs_x = 0, .ofs_y = -7}, + {.bitmap_index = 2409, .adv_w = 224, .box_w = 36, .box_h = 10, .ofs_x = 1, .ofs_y = 14}, + {.bitmap_index = 2540, .adv_w = 266, .box_w = 48, .box_h = 16, .ofs_x = 0, .ofs_y = 4}, + {.bitmap_index = 2621, .adv_w = 133, .box_w = 18, .box_h = 10, .ofs_x = 1, .ofs_y = -6}, + {.bitmap_index = 2698, .adv_w = 167, .box_w = 27, .box_h = 3, .ofs_x = 1, .ofs_y = 7}, + {.bitmap_index = 2713, .adv_w = 133, .box_w = 18, .box_h = 5, .ofs_x = 1, .ofs_y = 0}, + {.bitmap_index = 2749, .adv_w = 188, .box_w = 36, .box_h = 30, .ofs_x = 0, .ofs_y = -6}, + {.bitmap_index = 2991, .adv_w = 266, .box_w = 45, .box_h = 22, .ofs_x = 1, .ofs_y = 0}, + {.bitmap_index = 3311, .adv_w = 266, .box_w = 42, .box_h = 22, .ofs_x = 2, .ofs_y = 0}, + {.bitmap_index = 3407, .adv_w = 266, .box_w = 48, .box_h = 22, .ofs_x = 0, .ofs_y = 0}, + {.bitmap_index = 3674, .adv_w = 266, .box_w = 48, .box_h = 22, .ofs_x = 0, .ofs_y = 0}, + {.bitmap_index = 3990, .adv_w = 266, .box_w = 51, .box_h = 22, .ofs_x = 0, .ofs_y = 0}, + {.bitmap_index = 4175, .adv_w = 266, .box_w = 48, .box_h = 22, .ofs_x = 0, .ofs_y = 0}, + {.bitmap_index = 4458, .adv_w = 266, .box_w = 45, .box_h = 22, .ofs_x = 1, .ofs_y = 0}, + {.bitmap_index = 4805, .adv_w = 266, .box_w = 45, .box_h = 22, .ofs_x = 1, .ofs_y = 0}, + {.bitmap_index = 4989, .adv_w = 266, .box_w = 45, .box_h = 22, .ofs_x = 1, .ofs_y = 0}, + {.bitmap_index = 5361, .adv_w = 266, .box_w = 48, .box_h = 22, .ofs_x = 0, .ofs_y = 0}, + {.bitmap_index = 5710, .adv_w = 133, .box_w = 18, .box_h = 17, .ofs_x = 1, .ofs_y = 0}, + {.bitmap_index = 5792, .adv_w = 133, .box_w = 18, .box_h = 23, .ofs_x = 1, .ofs_y = -6}, + {.bitmap_index = 5915, .adv_w = 266, .box_w = 48, .box_h = 15, .ofs_x = 0, .ofs_y = 4}, + {.bitmap_index = 6126, .adv_w = 266, .box_w = 48, .box_h = 10, .ofs_x = 0, .ofs_y = 7}, + {.bitmap_index = 6168, .adv_w = 266, .box_w = 48, .box_h = 15, .ofs_x = 0, .ofs_y = 4}, + {.bitmap_index = 6380, .adv_w = 228, .box_w = 39, .box_h = 22, .ofs_x = 0, .ofs_y = 0}, + {.bitmap_index = 6605, .adv_w = 454, .box_w = 78, .box_h = 27, .ofs_x = 1, .ofs_y = -5}, + {.bitmap_index = 7289, .adv_w = 291, .box_w = 60, .box_h = 22, .ofs_x = -1, .ofs_y = 0}, + {.bitmap_index = 7601, .adv_w = 315, .box_w = 51, .box_h = 22, .ofs_x = 2, .ofs_y = 0}, + {.bitmap_index = 7870, .adv_w = 306, .box_w = 54, .box_h = 22, .ofs_x = 1, .ofs_y = 0}, + {.bitmap_index = 8172, .adv_w = 330, .box_w = 54, .box_h = 22, .ofs_x = 2, .ofs_y = 0}, + {.bitmap_index = 8413, .adv_w = 282, .box_w = 45, .box_h = 22, .ofs_x = 2, .ofs_y = 0}, + {.bitmap_index = 8502, .adv_w = 265, .box_w = 45, .box_h = 22, .ofs_x = 2, .ofs_y = 0}, + {.bitmap_index = 8582, .adv_w = 331, .box_w = 54, .box_h = 22, .ofs_x = 1, .ofs_y = 0}, + {.bitmap_index = 8901, .adv_w = 349, .box_w = 54, .box_h = 22, .ofs_x = 2, .ofs_y = 0}, + {.bitmap_index = 8978, .adv_w = 141, .box_w = 15, .box_h = 22, .ofs_x = 2, .ofs_y = 0}, + {.bitmap_index = 8999, .adv_w = 257, .box_w = 42, .box_h = 22, .ofs_x = 0, .ofs_y = 0}, + {.bitmap_index = 9129, .adv_w = 310, .box_w = 54, .box_h = 22, .ofs_x = 2, .ofs_y = 0}, + {.bitmap_index = 9381, .adv_w = 260, .box_w = 42, .box_h = 22, .ofs_x = 2, .ofs_y = 0}, + {.bitmap_index = 9437, .adv_w = 390, .box_w = 60, .box_h = 22, .ofs_x = 2, .ofs_y = 0}, + {.bitmap_index = 9739, .adv_w = 347, .box_w = 51, .box_h = 22, .ofs_x = 2, .ofs_y = 0}, + {.bitmap_index = 9953, .adv_w = 356, .box_w = 60, .box_h = 22, .ofs_x = 1, .ofs_y = 0}, + {.bitmap_index = 10336, .adv_w = 303, .box_w = 48, .box_h = 22, .ofs_x = 2, .ofs_y = 0}, + {.bitmap_index = 10525, .adv_w = 356, .box_w = 63, .box_h = 29, .ofs_x = 1, .ofs_y = -7}, + {.bitmap_index = 11015, .adv_w = 305, .box_w = 51, .box_h = 22, .ofs_x = 2, .ofs_y = 0}, + {.bitmap_index = 11254, .adv_w = 287, .box_w = 48, .box_h = 22, .ofs_x = 1, .ofs_y = 0}, + {.bitmap_index = 11581, .adv_w = 288, .box_w = 54, .box_h = 22, .ofs_x = 0, .ofs_y = 0}, + {.bitmap_index = 11659, .adv_w = 346, .box_w = 54, .box_h = 22, .ofs_x = 2, .ofs_y = 0}, + {.bitmap_index = 11857, .adv_w = 276, .box_w = 57, .box_h = 22, .ofs_x = -1, .ofs_y = 0}, + {.bitmap_index = 12175, .adv_w = 421, .box_w = 78, .box_h = 22, .ofs_x = 0, .ofs_y = 0}, + {.bitmap_index = 12721, .adv_w = 275, .box_w = 54, .box_h = 22, .ofs_x = 0, .ofs_y = 0}, + {.bitmap_index = 13065, .adv_w = 255, .box_w = 54, .box_h = 22, .ofs_x = -1, .ofs_y = 0}, + {.bitmap_index = 13300, .adv_w = 289, .box_w = 48, .box_h = 22, .ofs_x = 1, .ofs_y = 0}, + {.bitmap_index = 13509, .adv_w = 162, .box_w = 24, .box_h = 30, .ofs_x = 2, .ofs_y = -6}, + {.bitmap_index = 13570, .adv_w = 188, .box_w = 36, .box_h = 30, .ofs_x = 0, .ofs_y = -6}, + {.bitmap_index = 13807, .adv_w = 162, .box_w = 24, .box_h = 30, .ofs_x = 0, .ofs_y = -6}, + {.bitmap_index = 13866, .adv_w = 266, .box_w = 42, .box_h = 13, .ofs_x = 1, .ofs_y = 10}, + {.bitmap_index = 14041, .adv_w = 268, .box_w = 51, .box_h = 2, .ofs_x = 0, .ofs_y = -4}, + {.bitmap_index = 14053, .adv_w = 291, .box_w = 27, .box_h = 8, .ofs_x = 3, .ofs_y = 19}, + {.bitmap_index = 14124, .adv_w = 271, .box_w = 42, .box_h = 17, .ofs_x = 1, .ofs_y = 0}, + {.bitmap_index = 14379, .adv_w = 297, .box_w = 48, .box_h = 24, .ofs_x = 2, .ofs_y = 0}, + {.bitmap_index = 14625, .adv_w = 244, .box_w = 42, .box_h = 17, .ofs_x = 1, .ofs_y = 0}, + {.bitmap_index = 14844, .adv_w = 298, .box_w = 48, .box_h = 24, .ofs_x = 1, .ofs_y = 0}, + {.bitmap_index = 15094, .adv_w = 266, .box_w = 45, .box_h = 17, .ofs_x = 1, .ofs_y = 0}, + {.bitmap_index = 15336, .adv_w = 156, .box_w = 36, .box_h = 25, .ofs_x = 0, .ofs_y = 0}, + {.bitmap_index = 15467, .adv_w = 270, .box_w = 48, .box_h = 24, .ofs_x = 1, .ofs_y = -7}, + {.bitmap_index = 15859, .adv_w = 291, .box_w = 45, .box_h = 24, .ofs_x = 2, .ofs_y = 0}, + {.bitmap_index = 16003, .adv_w = 132, .box_w = 18, .box_h = 24, .ofs_x = 1, .ofs_y = 0}, + {.bitmap_index = 16060, .adv_w = 132, .box_w = 27, .box_h = 31, .ofs_x = -2, .ofs_y = -7}, + {.bitmap_index = 16185, .adv_w = 265, .box_w = 45, .box_h = 24, .ofs_x = 2, .ofs_y = 0}, + {.bitmap_index = 16390, .adv_w = 137, .box_w = 18, .box_h = 24, .ofs_x = 2, .ofs_y = 0}, + {.bitmap_index = 16437, .adv_w = 444, .box_w = 72, .box_h = 17, .ofs_x = 2, .ofs_y = 0}, + {.bitmap_index = 16654, .adv_w = 293, .box_w = 45, .box_h = 17, .ofs_x = 2, .ofs_y = 0}, + {.bitmap_index = 16786, .adv_w = 291, .box_w = 48, .box_h = 17, .ofs_x = 1, .ofs_y = 0}, + {.bitmap_index = 17067, .adv_w = 298, .box_w = 48, .box_h = 24, .ofs_x = 2, .ofs_y = -7}, + {.bitmap_index = 17321, .adv_w = 298, .box_w = 48, .box_h = 24, .ofs_x = 1, .ofs_y = -7}, + {.bitmap_index = 17583, .adv_w = 186, .box_w = 33, .box_h = 17, .ofs_x = 2, .ofs_y = 0}, + {.bitmap_index = 17672, .adv_w = 225, .box_w = 42, .box_h = 17, .ofs_x = 0, .ofs_y = 0}, + {.bitmap_index = 17917, .adv_w = 181, .box_w = 36, .box_h = 22, .ofs_x = 0, .ofs_y = 0}, + {.bitmap_index = 18050, .adv_w = 291, .box_w = 42, .box_h = 17, .ofs_x = 2, .ofs_y = 0}, + {.bitmap_index = 18172, .adv_w = 250, .box_w = 48, .box_h = 17, .ofs_x = 0, .ofs_y = 0}, + {.bitmap_index = 18409, .adv_w = 385, .box_w = 72, .box_h = 17, .ofs_x = 0, .ofs_y = 0}, + {.bitmap_index = 18826, .adv_w = 239, .box_w = 45, .box_h = 17, .ofs_x = 0, .ofs_y = 0}, + {.bitmap_index = 19083, .adv_w = 250, .box_w = 48, .box_h = 24, .ofs_x = 0, .ofs_y = -7}, + {.bitmap_index = 19395, .adv_w = 228, .box_w = 42, .box_h = 17, .ofs_x = 0, .ofs_y = 0}, + {.bitmap_index = 19558, .adv_w = 162, .box_w = 30, .box_h = 30, .ofs_x = 0, .ofs_y = -6}, + {.bitmap_index = 19795, .adv_w = 129, .box_w = 12, .box_h = 34, .ofs_x = 2, .ofs_y = -9}, + {.bitmap_index = 19819, .adv_w = 162, .box_w = 30, .box_h = 30, .ofs_x = 0, .ofs_y = -6}, + {.bitmap_index = 20052, .adv_w = 266, .box_w = 48, .box_h = 5, .ofs_x = 0, .ofs_y = 9}, + {.bitmap_index = 20150, .adv_w = 480, .box_w = 33, .box_h = 10, .ofs_x = 0, .ofs_y = -2}, + {.bitmap_index = 20281, .adv_w = 480, .box_w = 87, .box_h = 3, .ofs_x = 0, .ofs_y = 10}, + {.bitmap_index = 20303, .adv_w = 480, .box_w = 84, .box_h = 26, .ofs_x = 1, .ofs_y = -1}, + {.bitmap_index = 20441, .adv_w = 480, .box_w = 84, .box_h = 25, .ofs_x = 1, .ofs_y = -2}, + {.bitmap_index = 20634, .adv_w = 480, .box_w = 84, .box_h = 25, .ofs_x = 1, .ofs_y = -2}, + {.bitmap_index = 20957, .adv_w = 480, .box_w = 84, .box_h = 27, .ofs_x = 1, .ofs_y = -2}, + {.bitmap_index = 21187, .adv_w = 480, .box_w = 87, .box_h = 28, .ofs_x = 0, .ofs_y = -3}, + {.bitmap_index = 21508, .adv_w = 480, .box_w = 90, .box_h = 27, .ofs_x = 0, .ofs_y = -3}, + {.bitmap_index = 22047, .adv_w = 480, .box_w = 87, .box_h = 29, .ofs_x = 0, .ofs_y = -3}, + {.bitmap_index = 22405, .adv_w = 480, .box_w = 90, .box_h = 28, .ofs_x = 0, .ofs_y = -2}, + {.bitmap_index = 22910, .adv_w = 480, .box_w = 90, .box_h = 29, .ofs_x = 0, .ofs_y = -3}, + {.bitmap_index = 23449, .adv_w = 480, .box_w = 90, .box_h = 27, .ofs_x = 0, .ofs_y = -2}, + {.bitmap_index = 23812, .adv_w = 480, .box_w = 90, .box_h = 28, .ofs_x = 0, .ofs_y = -2}, + {.bitmap_index = 24388, .adv_w = 480, .box_w = 87, .box_h = 27, .ofs_x = 0, .ofs_y = -3}, + {.bitmap_index = 24789, .adv_w = 480, .box_w = 72, .box_h = 28, .ofs_x = 3, .ofs_y = -3}, + {.bitmap_index = 25212, .adv_w = 480, .box_w = 78, .box_h = 28, .ofs_x = 2, .ofs_y = -2}, + {.bitmap_index = 25536, .adv_w = 480, .box_w = 84, .box_h = 27, .ofs_x = 1, .ofs_y = -3}, + {.bitmap_index = 25860, .adv_w = 480, .box_w = 72, .box_h = 28, .ofs_x = 3, .ofs_y = -2}, + {.bitmap_index = 26052, .adv_w = 480, .box_w = 84, .box_h = 27, .ofs_x = 1, .ofs_y = -2}, + {.bitmap_index = 26292, .adv_w = 480, .box_w = 90, .box_h = 28, .ofs_x = 0, .ofs_y = -3}, + {.bitmap_index = 26837, .adv_w = 480, .box_w = 87, .box_h = 28, .ofs_x = 0, .ofs_y = -3}, + {.bitmap_index = 27366, .adv_w = 480, .box_w = 84, .box_h = 28, .ofs_x = 0, .ofs_y = -3}, + {.bitmap_index = 27844, .adv_w = 480, .box_w = 84, .box_h = 28, .ofs_x = 1, .ofs_y = -3}, + {.bitmap_index = 28239, .adv_w = 480, .box_w = 84, .box_h = 28, .ofs_x = 1, .ofs_y = -3}, + {.bitmap_index = 28723, .adv_w = 480, .box_w = 84, .box_h = 28, .ofs_x = 1, .ofs_y = -3}, + {.bitmap_index = 29311, .adv_w = 480, .box_w = 84, .box_h = 27, .ofs_x = 1, .ofs_y = -2}, + {.bitmap_index = 29627, .adv_w = 480, .box_w = 84, .box_h = 28, .ofs_x = 1, .ofs_y = -2}, + {.bitmap_index = 29859, .adv_w = 480, .box_w = 78, .box_h = 28, .ofs_x = 2, .ofs_y = -2}, + {.bitmap_index = 30123, .adv_w = 480, .box_w = 87, .box_h = 26, .ofs_x = 0, .ofs_y = -3}, + {.bitmap_index = 30305, .adv_w = 480, .box_w = 87, .box_h = 27, .ofs_x = 0, .ofs_y = -3}, + {.bitmap_index = 30629, .adv_w = 480, .box_w = 87, .box_h = 26, .ofs_x = 0, .ofs_y = -2}, + {.bitmap_index = 31082, .adv_w = 480, .box_w = 90, .box_h = 29, .ofs_x = 0, .ofs_y = -3}, + {.bitmap_index = 31813, .adv_w = 480, .box_w = 90, .box_h = 27, .ofs_x = 0, .ofs_y = -3}, + {.bitmap_index = 32445, .adv_w = 480, .box_w = 90, .box_h = 26, .ofs_x = 0, .ofs_y = -2}, + {.bitmap_index = 32974, .adv_w = 480, .box_w = 84, .box_h = 28, .ofs_x = 1, .ofs_y = -2}, + {.bitmap_index = 33323, .adv_w = 480, .box_w = 87, .box_h = 27, .ofs_x = 0, .ofs_y = -2}, + {.bitmap_index = 33685, .adv_w = 480, .box_w = 87, .box_h = 26, .ofs_x = 0, .ofs_y = -2}, + {.bitmap_index = 34033, .adv_w = 480, .box_w = 81, .box_h = 27, .ofs_x = 0, .ofs_y = -2}, + {.bitmap_index = 34379, .adv_w = 480, .box_w = 84, .box_h = 27, .ofs_x = 0, .ofs_y = -2}, + {.bitmap_index = 34755, .adv_w = 480, .box_w = 78, .box_h = 26, .ofs_x = 2, .ofs_y = -2}, + {.bitmap_index = 34909, .adv_w = 480, .box_w = 81, .box_h = 26, .ofs_x = 2, .ofs_y = -2}, + {.bitmap_index = 35222, .adv_w = 480, .box_w = 87, .box_h = 27, .ofs_x = 0, .ofs_y = -2}, + {.bitmap_index = 35536, .adv_w = 480, .box_w = 87, .box_h = 28, .ofs_x = 1, .ofs_y = -2}, + {.bitmap_index = 36085, .adv_w = 480, .box_w = 90, .box_h = 28, .ofs_x = 0, .ofs_y = -2}, + {.bitmap_index = 36601, .adv_w = 480, .box_w = 84, .box_h = 29, .ofs_x = 1, .ofs_y = -3}, + {.bitmap_index = 37271, .adv_w = 480, .box_w = 84, .box_h = 28, .ofs_x = 1, .ofs_y = -2}, + {.bitmap_index = 37818, .adv_w = 480, .box_w = 84, .box_h = 29, .ofs_x = 1, .ofs_y = -3}, + {.bitmap_index = 38064, .adv_w = 480, .box_w = 90, .box_h = 27, .ofs_x = 0, .ofs_y = -3}, + {.bitmap_index = 38422, .adv_w = 480, .box_w = 87, .box_h = 27, .ofs_x = 0, .ofs_y = -3}, + {.bitmap_index = 38905, .adv_w = 480, .box_w = 84, .box_h = 22, .ofs_x = 1, .ofs_y = 0}, + {.bitmap_index = 39035, .adv_w = 480, .box_w = 81, .box_h = 27, .ofs_x = 2, .ofs_y = -2}, + {.bitmap_index = 39408, .adv_w = 480, .box_w = 90, .box_h = 27, .ofs_x = 0, .ofs_y = -2}, + {.bitmap_index = 39901, .adv_w = 480, .box_w = 87, .box_h = 28, .ofs_x = 0, .ofs_y = -2}, + {.bitmap_index = 40341, .adv_w = 480, .box_w = 84, .box_h = 27, .ofs_x = 1, .ofs_y = -3}, + {.bitmap_index = 40607, .adv_w = 480, .box_w = 87, .box_h = 27, .ofs_x = 0, .ofs_y = -3}, + {.bitmap_index = 40941, .adv_w = 480, .box_w = 87, .box_h = 27, .ofs_x = 1, .ofs_y = -2}, + {.bitmap_index = 41402, .adv_w = 480, .box_w = 84, .box_h = 26, .ofs_x = 1, .ofs_y = -2}, + {.bitmap_index = 41893, .adv_w = 480, .box_w = 87, .box_h = 28, .ofs_x = 1, .ofs_y = -2}, + {.bitmap_index = 42386, .adv_w = 480, .box_w = 90, .box_h = 29, .ofs_x = 0, .ofs_y = -3}, + {.bitmap_index = 43027, .adv_w = 480, .box_w = 87, .box_h = 27, .ofs_x = 1, .ofs_y = -2}, + {.bitmap_index = 43608, .adv_w = 480, .box_w = 87, .box_h = 29, .ofs_x = 1, .ofs_y = -3}, + {.bitmap_index = 43965, .adv_w = 480, .box_w = 87, .box_h = 28, .ofs_x = 0, .ofs_y = -3}, + {.bitmap_index = 44275, .adv_w = 480, .box_w = 87, .box_h = 29, .ofs_x = 1, .ofs_y = -3}, + {.bitmap_index = 44957, .adv_w = 480, .box_w = 84, .box_h = 29, .ofs_x = 1, .ofs_y = -3}, + {.bitmap_index = 45359, .adv_w = 480, .box_w = 87, .box_h = 29, .ofs_x = 0, .ofs_y = -3}, + {.bitmap_index = 45939, .adv_w = 480, .box_w = 87, .box_h = 29, .ofs_x = 0, .ofs_y = -3}, + {.bitmap_index = 46412, .adv_w = 480, .box_w = 87, .box_h = 29, .ofs_x = 0, .ofs_y = -3}, + {.bitmap_index = 46889, .adv_w = 480, .box_w = 90, .box_h = 28, .ofs_x = 0, .ofs_y = -3}, + {.bitmap_index = 47362, .adv_w = 480, .box_w = 87, .box_h = 29, .ofs_x = 0, .ofs_y = -3}, + {.bitmap_index = 47887, .adv_w = 480, .box_w = 90, .box_h = 29, .ofs_x = 0, .ofs_y = -3}, + {.bitmap_index = 48497, .adv_w = 480, .box_w = 90, .box_h = 29, .ofs_x = 0, .ofs_y = -3}, + {.bitmap_index = 49059, .adv_w = 480, .box_w = 90, .box_h = 28, .ofs_x = 0, .ofs_y = -2}, + {.bitmap_index = 49805, .adv_w = 480, .box_w = 90, .box_h = 29, .ofs_x = 0, .ofs_y = -3}, + {.bitmap_index = 50660, .adv_w = 480, .box_w = 87, .box_h = 29, .ofs_x = 1, .ofs_y = -3}, + {.bitmap_index = 51139, .adv_w = 480, .box_w = 90, .box_h = 28, .ofs_x = 0, .ofs_y = -2}, + {.bitmap_index = 51695, .adv_w = 480, .box_w = 87, .box_h = 28, .ofs_x = 0, .ofs_y = -3}, + {.bitmap_index = 52251, .adv_w = 480, .box_w = 87, .box_h = 27, .ofs_x = 0, .ofs_y = -3}, + {.bitmap_index = 52611, .adv_w = 480, .box_w = 63, .box_h = 26, .ofs_x = 5, .ofs_y = -2}, + {.bitmap_index = 52734, .adv_w = 480, .box_w = 84, .box_h = 28, .ofs_x = 2, .ofs_y = -2}, + {.bitmap_index = 53038, .adv_w = 480, .box_w = 90, .box_h = 27, .ofs_x = 0, .ofs_y = -3}, + {.bitmap_index = 53396, .adv_w = 480, .box_w = 87, .box_h = 25, .ofs_x = 0, .ofs_y = -1}, + {.bitmap_index = 53696, .adv_w = 480, .box_w = 87, .box_h = 28, .ofs_x = 0, .ofs_y = -2}, + {.bitmap_index = 54016, .adv_w = 480, .box_w = 87, .box_h = 28, .ofs_x = 0, .ofs_y = -3}, + {.bitmap_index = 54513, .adv_w = 480, .box_w = 90, .box_h = 29, .ofs_x = 0, .ofs_y = -3}, + {.bitmap_index = 54971, .adv_w = 480, .box_w = 87, .box_h = 29, .ofs_x = 0, .ofs_y = -3}, + {.bitmap_index = 55453, .adv_w = 480, .box_w = 90, .box_h = 28, .ofs_x = 0, .ofs_y = -2}, + {.bitmap_index = 55856, .adv_w = 480, .box_w = 90, .box_h = 28, .ofs_x = 0, .ofs_y = -2}, + {.bitmap_index = 56416, .adv_w = 480, .box_w = 87, .box_h = 29, .ofs_x = 0, .ofs_y = -3}, + {.bitmap_index = 56829, .adv_w = 480, .box_w = 90, .box_h = 28, .ofs_x = 0, .ofs_y = -2}, + {.bitmap_index = 57461, .adv_w = 480, .box_w = 90, .box_h = 28, .ofs_x = 0, .ofs_y = -2}, + {.bitmap_index = 58065, .adv_w = 480, .box_w = 84, .box_h = 24, .ofs_x = 1, .ofs_y = -1}, + {.bitmap_index = 58233, .adv_w = 480, .box_w = 87, .box_h = 29, .ofs_x = 1, .ofs_y = -3}, + {.bitmap_index = 58883, .adv_w = 480, .box_w = 90, .box_h = 28, .ofs_x = 0, .ofs_y = -3}, + {.bitmap_index = 59549, .adv_w = 480, .box_w = 87, .box_h = 28, .ofs_x = 0, .ofs_y = -3}, + {.bitmap_index = 60032, .adv_w = 480, .box_w = 84, .box_h = 28, .ofs_x = 0, .ofs_y = -2}, + {.bitmap_index = 60530, .adv_w = 480, .box_w = 87, .box_h = 28, .ofs_x = 1, .ofs_y = -2}, + {.bitmap_index = 61014, .adv_w = 480, .box_w = 84, .box_h = 29, .ofs_x = 1, .ofs_y = -3}, + {.bitmap_index = 61396, .adv_w = 480, .box_w = 84, .box_h = 28, .ofs_x = 1, .ofs_y = -3}, + {.bitmap_index = 62156, .adv_w = 480, .box_w = 90, .box_h = 29, .ofs_x = 0, .ofs_y = -3}, + {.bitmap_index = 62970, .adv_w = 480, .box_w = 81, .box_h = 28, .ofs_x = 1, .ofs_y = -3}, + {.bitmap_index = 63209, .adv_w = 480, .box_w = 84, .box_h = 28, .ofs_x = 1, .ofs_y = -2}, + {.bitmap_index = 63486, .adv_w = 480, .box_w = 81, .box_h = 26, .ofs_x = 0, .ofs_y = -3}, + {.bitmap_index = 63785, .adv_w = 480, .box_w = 81, .box_h = 27, .ofs_x = 3, .ofs_y = -2}, + {.bitmap_index = 64081, .adv_w = 480, .box_w = 81, .box_h = 29, .ofs_x = 2, .ofs_y = -3}, + {.bitmap_index = 64537, .adv_w = 480, .box_w = 87, .box_h = 28, .ofs_x = 0, .ofs_y = -2}, + {.bitmap_index = 64985, .adv_w = 480, .box_w = 87, .box_h = 27, .ofs_x = 0, .ofs_y = -3}, + {.bitmap_index = 65485, .adv_w = 480, .box_w = 87, .box_h = 29, .ofs_x = 0, .ofs_y = -3}, + {.bitmap_index = 66079, .adv_w = 480, .box_w = 87, .box_h = 25, .ofs_x = 0, .ofs_y = -2}, + {.bitmap_index = 66418, .adv_w = 480, .box_w = 90, .box_h = 27, .ofs_x = 0, .ofs_y = -2}, + {.bitmap_index = 66871, .adv_w = 480, .box_w = 90, .box_h = 29, .ofs_x = 0, .ofs_y = -3}, + {.bitmap_index = 67439, .adv_w = 480, .box_w = 87, .box_h = 27, .ofs_x = 0, .ofs_y = -2}, + {.bitmap_index = 68114, .adv_w = 480, .box_w = 84, .box_h = 28, .ofs_x = 0, .ofs_y = -2}, + {.bitmap_index = 68687, .adv_w = 480, .box_w = 87, .box_h = 28, .ofs_x = 1, .ofs_y = -2}, + {.bitmap_index = 69529, .adv_w = 480, .box_w = 87, .box_h = 29, .ofs_x = 0, .ofs_y = -3}, + {.bitmap_index = 70313, .adv_w = 480, .box_w = 87, .box_h = 28, .ofs_x = 0, .ofs_y = -2}, + {.bitmap_index = 70931, .adv_w = 480, .box_w = 84, .box_h = 26, .ofs_x = 1, .ofs_y = -2}, + {.bitmap_index = 71250, .adv_w = 480, .box_w = 87, .box_h = 28, .ofs_x = 1, .ofs_y = -3}, + {.bitmap_index = 71829, .adv_w = 480, .box_w = 66, .box_h = 28, .ofs_x = 4, .ofs_y = -2}, + {.bitmap_index = 72011, .adv_w = 480, .box_w = 87, .box_h = 28, .ofs_x = 1, .ofs_y = -3}, + {.bitmap_index = 72528, .adv_w = 480, .box_w = 87, .box_h = 27, .ofs_x = 0, .ofs_y = -2}, + {.bitmap_index = 72852, .adv_w = 480, .box_w = 90, .box_h = 28, .ofs_x = 0, .ofs_y = -2}, + {.bitmap_index = 73282, .adv_w = 480, .box_w = 90, .box_h = 29, .ofs_x = 0, .ofs_y = -3}, + {.bitmap_index = 73970, .adv_w = 480, .box_w = 87, .box_h = 28, .ofs_x = 1, .ofs_y = -3}, + {.bitmap_index = 74391, .adv_w = 480, .box_w = 87, .box_h = 28, .ofs_x = 1, .ofs_y = -3}, + {.bitmap_index = 74986, .adv_w = 480, .box_w = 87, .box_h = 28, .ofs_x = 1, .ofs_y = -3}, + {.bitmap_index = 75513, .adv_w = 480, .box_w = 87, .box_h = 28, .ofs_x = 1, .ofs_y = -2}, + {.bitmap_index = 75919, .adv_w = 480, .box_w = 87, .box_h = 28, .ofs_x = 1, .ofs_y = -2}, + {.bitmap_index = 76342, .adv_w = 480, .box_w = 84, .box_h = 28, .ofs_x = 0, .ofs_y = -3}, + {.bitmap_index = 76949, .adv_w = 480, .box_w = 90, .box_h = 29, .ofs_x = 0, .ofs_y = -3}, + {.bitmap_index = 77504, .adv_w = 480, .box_w = 90, .box_h = 27, .ofs_x = 0, .ofs_y = -2}, + {.bitmap_index = 77943, .adv_w = 480, .box_w = 87, .box_h = 28, .ofs_x = 0, .ofs_y = -3}, + {.bitmap_index = 78550, .adv_w = 480, .box_w = 90, .box_h = 28, .ofs_x = 0, .ofs_y = -3}, + {.bitmap_index = 79114, .adv_w = 480, .box_w = 90, .box_h = 28, .ofs_x = 0, .ofs_y = -3}, + {.bitmap_index = 79703, .adv_w = 480, .box_w = 84, .box_h = 26, .ofs_x = 1, .ofs_y = -2}, + {.bitmap_index = 79978, .adv_w = 480, .box_w = 84, .box_h = 28, .ofs_x = 1, .ofs_y = -2}, + {.bitmap_index = 80393, .adv_w = 480, .box_w = 90, .box_h = 29, .ofs_x = 0, .ofs_y = -3}, + {.bitmap_index = 80993, .adv_w = 480, .box_w = 78, .box_h = 27, .ofs_x = 2, .ofs_y = -2}, + {.bitmap_index = 81233, .adv_w = 480, .box_w = 84, .box_h = 27, .ofs_x = 2, .ofs_y = -2}, + {.bitmap_index = 81840, .adv_w = 480, .box_w = 84, .box_h = 29, .ofs_x = 2, .ofs_y = -3}, + {.bitmap_index = 82309, .adv_w = 480, .box_w = 84, .box_h = 26, .ofs_x = 1, .ofs_y = -2}, + {.bitmap_index = 82541, .adv_w = 480, .box_w = 84, .box_h = 27, .ofs_x = 1, .ofs_y = -3}, + {.bitmap_index = 82904, .adv_w = 480, .box_w = 24, .box_h = 12, .ofs_x = 3, .ofs_y = -4} +}; + +/*--------------------- + * CHARACTER MAPPING + *--------------------*/ + +static const uint16_t unicode_list_1[] = { + 0x0, 0x1dfe, 0x1e08, 0x1e09, 0x1e0b, 0x1e39, 0x1ea5, 0x1ee3, + 0x1ef4, 0x1f7d, 0x2017, 0x205a, 0x207d, 0x2163, 0x2171, 0x2183, + 0x2197, 0x21f8, 0x21f9, 0x2204, 0x2205, 0x222e, 0x2270, 0x229d, + 0x22a6, 0x2353, 0x235f, 0x236e, 0x2380, 0x2389, 0x239d, 0x23c0, + 0x23c8, 0x23d4, 0x23ee, 0x240c, 0x2424, 0x242d, 0x248a, 0x26dc, + 0x26f2, 0x2726, 0x27a9, 0x2914, 0x2918, 0x2bc4, 0x2bf6, 0x2c38, + 0x2c4d, 0x2de3, 0x2e36, 0x2e53, 0x2e8d, 0x2efe, 0x2f00, 0x2f0d, + 0x2f53, 0x3023, 0x320e, 0x3214, 0x3249, 0x3251, 0x327c, 0x32a2, + 0x3307, 0x336c, 0x3390, 0x33ce, 0x33d0, 0x341a, 0x3543, 0x3557, + 0x356e, 0x3585, 0x3597, 0x35ae, 0x35de, 0x35e3, 0x35f4, 0x362d, + 0x363c, 0x3707, 0x371d, 0x3738, 0x374e, 0x37e3, 0x383a, 0x3844, + 0x38be, 0x3a1f, 0x3b61, 0x3bb3, 0x3c9f, 0x3d49, 0x3d86, 0x3e03, + 0x40b7, 0x40e5, 0x4134, 0x4245, 0x451d, 0x4526, 0x4533, 0x4682, + 0x46d6, 0x47ff, 0x486c, 0x4938, 0x4a09, 0x4a0b, 0x4cf9, 0x4d20, + 0x4ebd, 0x4edd, 0x4ef2, 0x4f6c, 0x5052, 0x51e8, 0x5301, 0x584a, + 0x5863, 0x58a9, 0x5bad, 0x5bbc, 0x5bd3, 0x5bdb, 0x5bf5, 0x5d2b, + 0x5d83, 0x5fc5, 0x5fce, 0x5ffe, 0x6018, 0x61ca, 0x61cb, 0x64ac, + 0x65f2, 0x6662, 0x669a, 0x6760, 0x6873, 0xcf0a +}; + +/*Collect the unicode lists and glyph_id offsets*/ +static const lv_font_fmt_txt_cmap_t cmaps[] = +{ + { + .range_start = 32, .range_length = 95, .glyph_id_start = 1, + .unicode_list = NULL, .glyph_id_ofs_list = NULL, .list_length = 0, .type = LV_FONT_FMT_TXT_CMAP_FORMAT0_TINY + }, + { + .range_start = 12290, .range_length = 53003, .glyph_id_start = 96, + .unicode_list = unicode_list_1, .glyph_id_ofs_list = NULL, .list_length = 142, .type = LV_FONT_FMT_TXT_CMAP_SPARSE_TINY + } +}; + +/*----------------- + * KERNING + *----------------*/ + + +/*Map glyph_ids to kern left classes*/ +static const uint8_t kern_left_class_mapping[] = +{ + 0, 0, 0, 1, 0, 0, 0, 0, + 1, 2, 0, 0, 0, 3, 4, 3, + 5, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 6, 6, 0, 0, 0, + 0, 0, 7, 8, 9, 10, 11, 12, + 13, 0, 0, 14, 15, 16, 0, 0, + 10, 17, 10, 18, 19, 20, 21, 22, + 23, 24, 25, 26, 2, 27, 0, 0, + 0, 0, 28, 29, 30, 0, 31, 32, + 33, 34, 0, 0, 35, 36, 34, 34, + 29, 29, 37, 38, 39, 40, 37, 41, + 42, 43, 44, 45, 2, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0 +}; + +/*Map glyph_ids to kern right classes*/ +static const uint8_t kern_right_class_mapping[] = +{ + 0, 0, 1, 2, 0, 0, 0, 0, + 2, 0, 3, 4, 0, 5, 6, 7, + 8, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 9, 10, 0, 0, 0, + 11, 0, 12, 0, 13, 0, 0, 0, + 13, 0, 0, 14, 0, 0, 0, 0, + 13, 0, 13, 0, 15, 16, 17, 18, + 19, 20, 21, 22, 0, 23, 3, 0, + 0, 0, 24, 0, 25, 25, 25, 26, + 27, 0, 28, 29, 0, 0, 30, 30, + 25, 30, 25, 30, 31, 32, 33, 34, + 35, 36, 37, 38, 0, 0, 3, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0 +}; + +/*Kern values between classes*/ +static const int8_t kern_class_values[] = +{ + 0, 0, 0, 0, -61, 0, -61, 0, + 0, 0, 0, -29, 0, -51, -5, 0, + 0, 0, 0, -5, 0, 0, 0, 0, + -16, 0, 0, 0, 0, 0, -11, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, -11, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 43, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, -51, 0, -74, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, -53, -11, -35, -18, 0, + -49, 0, 0, 0, -6, 0, 0, 0, + 14, 0, 0, -24, 0, -18, -12, 0, + -11, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, -11, + -9, -25, 0, -10, -5, -14, -36, -11, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, -14, 0, -4, 0, -7, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, -22, -5, -43, 0, 0, + 0, 0, 0, 0, 0, 0, 0, -13, + -17, 0, -5, 14, 14, 0, 0, 5, + -11, 0, 0, 0, 0, 0, 0, 0, + 0, -26, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, -14, 0, 0, 0, 0, 0, + 0, 0, 2, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, -29, 0, -50, + 0, 0, 0, 0, 0, 0, -14, -3, + -5, 0, 0, -29, -8, -7, 0, 2, + -7, -4, -22, 12, 0, -5, 0, 0, + 0, 0, 12, -7, -3, -4, -2, -2, + -4, 0, 0, 0, 0, -16, 0, 0, + 0, 0, 0, 0, 0, 0, 0, -9, + -7, -13, 0, -3, -2, -2, -7, -2, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, -5, 0, -7, -5, -5, -7, 0, + 0, 0, 0, 0, 0, -14, 0, 0, + 0, 0, 0, 0, -15, -5, -13, -10, + -7, -2, -2, -2, -4, -5, 0, 0, + 0, 0, -11, 0, 0, 0, 0, -14, + -5, -7, -5, 0, -7, 0, 0, 0, + 0, -18, 0, 0, 0, -10, 0, 0, + 0, -5, 0, -21, 0, -13, 0, -5, + -3, -9, -11, -11, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, -7, 0, -4, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, -5, 0, 0, 0, + 0, 0, 0, -13, 0, -5, 0, -16, + -5, 0, 0, 0, 0, 0, -39, 0, + -39, -37, 0, 0, 0, -20, -5, -74, + -11, 0, 0, 2, 2, -13, 0, -16, + 0, -18, -7, 0, -13, 0, 0, -11, + -11, -5, -9, -11, -9, -14, -9, -16, + 0, 0, 0, -15, 0, 0, 0, 0, + 0, 0, 0, -2, 0, 0, 0, -11, + 0, -7, -2, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, -13, 0, -13, 0, 0, 0, + 0, 0, 0, -22, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, -11, 0, -22, + 0, -16, 0, 0, 0, 0, -4, -5, + -11, 0, -5, -9, -7, -7, -5, 0, + -9, 0, 0, 0, -4, 0, 0, 0, + -5, 0, 0, -18, -8, -11, -9, -9, + -11, -7, 0, -48, 0, -82, 0, -29, + 0, 0, 0, 0, -17, 1, -14, 0, + -12, -64, -15, -41, -30, 0, -41, 0, + -43, 0, -6, -7, -2, 0, 0, 0, + 0, -11, -5, -19, -18, 0, -19, 0, + 0, 0, 0, 0, -60, -18, -60, -41, + 0, 0, 0, -27, 0, -79, -5, -13, + 0, 0, 0, -13, -5, -42, 0, -23, + -13, 0, -16, 0, 0, 0, -5, 0, + 0, 0, 0, -7, 0, -11, 0, 0, + 0, -5, 0, -17, 0, 0, 0, 0, + 0, -2, 0, -10, -7, -7, 0, 3, + 3, -2, 0, -5, 0, -2, -5, 0, + -2, 0, 0, 0, 0, 0, 0, 0, + 0, -4, 0, -4, 0, 0, 0, -9, + 0, 7, 0, 0, 0, 0, 0, 0, + 0, -7, -7, -11, 0, 0, 0, 0, + -7, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, -13, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, -57, -39, + -57, -48, -11, -11, 0, -22, -13, -68, + -21, 0, 0, 0, 0, -11, -7, -29, + 0, -39, -36, -10, -39, 0, 0, -25, + -32, -10, -25, -18, -18, -21, -18, -40, + 0, 0, 0, 0, -9, 0, -9, -17, + 0, 0, 0, -9, 0, -25, -5, 0, + 0, -2, 0, -5, -7, 0, 0, -2, + 0, 0, -5, 0, 0, 0, -2, 0, + 0, 0, 0, -4, 0, 0, 0, 0, + 0, 0, -35, -10, -35, -25, 0, 0, + 0, -7, -5, -39, -5, 0, -5, 5, + 0, 0, 0, -10, 0, -12, -8, 0, + -12, 0, 0, -11, -7, 0, -16, -5, + -5, -8, -5, -13, 0, 0, 0, 0, + -18, -5, -18, -16, 0, 0, 0, 0, + -3, -35, -3, 0, 0, 0, 0, 0, + 0, -3, 0, -9, 0, 0, -7, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, -5, 0, -5, 0, -5, 0, -14, + 0, 0, 0, 0, 0, 1, -9, 0, + -7, -11, -5, 0, 0, 0, 0, 0, + 0, -5, -4, -9, 0, 0, 0, 0, + 0, -9, -5, -9, -7, -5, -9, -7, + 0, 0, 0, 0, -48, -36, -48, -36, + -13, -13, -4, -7, -7, -54, -9, -7, + -5, 0, 0, 0, 0, -14, 0, -36, + -22, 0, -32, 0, 0, -22, -22, -15, + -18, -7, -13, -18, -7, -25, 0, 0, + 0, 0, 0, -18, 0, 0, 0, 0, + 0, -3, -11, -18, -16, 0, -5, -3, + -3, 0, -7, -9, 0, -9, -12, -11, + -8, 0, 0, 0, 0, -7, -12, -9, + -9, -13, -9, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, -46, -16, -28, -16, 0, + -39, 0, 0, 0, 0, 0, 18, 0, + 39, 0, 0, 0, 0, -11, -5, 0, + 7, 0, 0, 0, 0, -29, 0, 0, + 0, 0, 0, 0, -7, 0, 0, 0, + 0, -13, 0, -9, -2, 0, -13, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, -7, 0, 0, 0, 0, 0, 0, + 0, -16, 0, -14, -5, 3, -5, 0, + 0, 0, -7, 0, 0, 0, 0, -31, + 0, -10, 0, -2, -25, 0, -14, -8, + 0, 0, 0, 0, 0, 0, 0, -9, + 0, -2, -2, -9, -2, -3, 0, 0, + 0, 0, 0, -11, 0, 0, 0, 0, + 0, 0, 0, 0, 0, -11, 0, -7, + 0, 0, -13, 0, 0, -5, -12, 0, + -5, 0, 0, 0, 0, -5, 0, 3, + 3, 4, 3, 0, 0, 0, 0, -18, + 0, 5, 0, 0, 0, 0, -4, 0, + 0, -11, -11, -13, 0, -9, -5, 0, + -14, 0, -11, -8, 0, 0, -5, 0, + 0, 0, 0, -5, 0, 2, 2, -4, + 2, 0, 8, 22, 26, 0, -27, -7, + -27, -8, 0, 0, 14, 0, 0, 0, + 0, 25, 0, 36, 25, 18, 32, 0, + 34, -11, -5, 0, -8, 0, -5, 0, + -2, 0, 0, 7, 0, -2, 0, -7, + 0, 0, 8, -18, 0, 0, 0, 25, + 0, 0, -19, 0, 0, 0, 0, -14, + 0, 0, 0, 0, -7, 0, 0, -9, + -7, 0, 0, 0, 20, 0, 0, 0, + 0, -2, -2, 0, 8, -7, 0, 0, + 0, -18, 0, 0, 0, 0, 0, 0, + -4, 0, 0, 0, 0, -13, 0, -5, + 0, 0, -9, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, -12, + 7, -24, 7, 0, 7, 7, -7, 0, + 0, 0, 0, -19, 0, 0, 0, 0, + -6, 0, 0, -5, -10, 0, -5, 0, + -5, 0, 0, -11, -7, 0, 0, -4, + 0, -4, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 4, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, -13, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, -11, + 0, -7, 0, 0, -16, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, -30, -13, -30, -18, 14, 14, + 0, -7, 0, -29, 0, 0, 0, 0, + 0, 0, 0, -5, 7, -13, -5, 0, + -5, 0, 0, 0, -2, 0, 0, 14, + 10, 0, 14, -2, 0, 0, 0, -26, + 0, 5, 0, 0, 0, 0, -6, 0, + 0, 0, 0, -13, 0, -5, 0, 0, + -11, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, -11, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 3, -14, + 3, 5, 8, 8, -14, 0, 0, 0, + 0, -7, 0, 0, 0, 0, -2, 0, + 0, -12, -7, 0, -5, 0, 0, 0, + -5, -11, 0, 0, 0, -9, 0, 0, + 0, 0, 0, -6, -18, -4, -18, -11, + 0, 0, 0, -6, 0, -22, 0, -11, + 0, -5, 0, 0, -7, -5, 0, -11, + -2, 0, 0, 0, -5, 0, 0, 0, + 0, 0, 0, 0, 0, -13, 0, 0, + 0, -6, -22, 0, -22, -4, 0, 0, + 0, -2, 0, -16, 0, -13, 0, -5, + 0, -7, -13, 0, 0, -5, -2, 0, + 0, 0, -5, 0, 0, 0, 0, 0, + 0, 0, 0, -9, -7, 0, 0, -12, + 4, -7, -4, 0, 0, 4, 0, 0, + -5, 0, -2, -18, 0, -8, 0, -5, + -18, 0, 0, -5, -9, 0, 0, 0, + 0, 0, 0, -13, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, -18, 0, + -18, -8, 0, 0, 0, 0, 0, -22, + 0, -11, 0, -2, 0, -2, -4, 0, + 0, -11, -2, 0, 0, 0, -5, 0, + 0, 0, 0, 0, 0, -7, 0, -13, + 0, 0, 0, 0, 0, -9, 0, 0, + 0, 0, 0, 0, 0, 0, 0, -14, + 0, 0, 0, 0, -16, 0, 0, -12, + -5, 0, -3, 0, 0, 0, 0, 0, + -5, -2, 0, 0, -2, 0 +}; + + +/*Collect the kern class' data in one place*/ +static const lv_font_fmt_txt_kern_classes_t kern_classes = +{ + .class_pair_values = kern_class_values, + .left_class_mapping = kern_left_class_mapping, + .right_class_mapping = kern_right_class_mapping, + .left_class_cnt = 45, + .right_class_cnt = 38, +}; + +/*-------------------- + * ALL CUSTOM DATA + *--------------------*/ + +#if LVGL_VERSION_MAJOR == 8 +/*Store all the custom data of the font*/ +static lv_font_fmt_txt_glyph_cache_t cache; +#endif + +#if LVGL_VERSION_MAJOR >= 8 +static const lv_font_fmt_txt_dsc_t font_dsc = { +#else +static lv_font_fmt_txt_dsc_t font_dsc = { +#endif + .glyph_bitmap = glyph_bitmap, + .glyph_dsc = glyph_dsc, + .cmaps = cmaps, + .kern_dsc = &kern_classes, + .kern_scale = 16, + .cmap_num = 2, + .bpp = 4, + .kern_classes = 1, + .bitmap_format = 1, +#if LVGL_VERSION_MAJOR == 8 + .cache = &cache +#endif + +}; + + + +/*----------------- + * PUBLIC FONT + *----------------*/ + +/*Initialize a public general font descriptor*/ +#if LVGL_VERSION_MAJOR >= 8 +const lv_font_t sans_r_30 = { +#else +lv_font_t sans_r_30 = { +#endif + .get_glyph_dsc = lv_font_get_glyph_dsc_fmt_txt, /*Function pointer to get glyph's data*/ + .get_glyph_bitmap = lv_font_get_bitmap_fmt_txt, /*Function pointer to get glyph's bitmap*/ + .line_height = 36, /*The maximum line height required by the font*/ + .base_line = 9, /*Baseline measured from the bottom of the line*/ +#if !(LVGL_VERSION_MAJOR == 6 && LVGL_VERSION_MINOR == 0) + .subpx = LV_FONT_SUBPX_HOR, +#endif +#if LV_VERSION_CHECK(7, 4, 0) || LVGL_VERSION_MAJOR >= 8 + .underline_position = -4, + .underline_thickness = 2, +#endif + .dsc = &font_dsc, /*The custom font data. Will be accessed by `get_glyph_bitmap/dsc` */ +#if LV_VERSION_CHECK(8, 2, 0) || LVGL_VERSION_MAJOR >= 9 + .fallback = NULL, +#endif + .user_data = NULL, +}; + + + +#endif /*#if SANS_R_30*/ -- 2.20.1